@dfinity/nns 7.0.1 → 7.0.2

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.
@@ -1,4 +1,4 @@
1
- "use strict";var Rr=Object.create;var yo=Object.defineProperty;var gr=Object.getOwnPropertyDescriptor;var vr=Object.getOwnPropertyNames;var wr=Object.getPrototypeOf,yr=Object.prototype.hasOwnProperty;var br=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),hr=(e,t)=>{for(var o in t)yo(e,o,{get:t[o],enumerable:!0})},Lo=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of vr(t))!yr.call(e,r)&&r!==o&&yo(e,r,{get:()=>t[r],enumerable:!(n=gr(t,r))||n.enumerable});return e};var Sr=(e,t,o)=>(o=e!=null?Rr(wr(e)):{},Lo(t||!e||!e.__esModule?yo(o,"default",{value:e,enumerable:!0}):o,e)),kr=e=>Lo(yo({},"__esModule",{value:!0}),e);var yn=br(($s,wn)=>{wn.exports=require("crypto").randomBytes});var hs={};hr(hs,{CanisterAction:()=>cn,CanisterInstallMode:()=>dn,CouldNotClaimNeuronError:()=>Le,GenesisTokenCanister:()=>ho,GovernanceCanister:()=>qo,GovernanceError:()=>Te,GovernanceTestCanister:()=>Eo,InsufficientAmountError:()=>et,LogVisibility:()=>an,NeuronState:()=>en,NeuronType:()=>sn,NeuronVisibility:()=>_n,NnsFunction:()=>rn,ProposalRewardStatus:()=>on,ProposalStatus:()=>nn,SnsWasmCanister:()=>Go,StakeNeuronError:()=>go,Topic:()=>tn,UnrecognizedTypeError:()=>Pe,UnsupportedValueError:()=>k,Vote:()=>Uo,ineligibleNeurons:()=>fr,votableNeurons:()=>ys,votedNeurons:()=>bs});module.exports=kr(hs);var en=(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))(en||{}),tn=(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))(tn||{}),on=(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))(on||{}),nn=(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))(nn||{}),Uo=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(Uo||{}),rn=(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))(rn||{}),sn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Seed=1]="Seed",n[n.Ect=2]="Ect",n))(sn||{}),an=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Controllers=1]="Controllers",n[n.Public=2]="Public",n))(an||{}),cn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Stop=1]="Stop",n[n.Start=2]="Start",n))(cn||{}),_n=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Private=1]="Private",n[n.Public=2]="Public",n))(_n||{}),dn=(r=>(r[r.Unspecified=0]="Unspecified",r[r.Install=1]="Install",r[r.Reinstall=2]="Reinstall",r[r.Upgrade=3]="Upgrade",r))(dn||{});var go=class extends Error{},Le=class extends go{},et=class extends go{constructor(o){super();this.minimumAmount=o}},Pe=class extends Error{},Te=class extends Error{constructor(o){super();this.detail=o}},k=class extends Error{constructor(t){super("Unsupported value: "+t)}};var Nn=require("@dfinity/utils");var pn=({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 un=({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 vo=require("@dfinity/principal"),Ts=vo.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),bo=vo.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),ln=vo.Principal.fromText("renrk-eyaaa-aaaaa-aaada-cai"),mn=vo.Principal.fromText("r7inp-6aaaa-aaaaa-aaabq-cai");var ho=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,Nn.createServices)({options:{...t,canisterId:t.canisterId??ln},idlFactory:un,certifiedIdlFactory:pn});return new e(o)}};var dr=require("@dfinity/agent"),Ce=require("@dfinity/ledger-icp"),u=require("@dfinity/utils");function xr(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Ko(e,...t){if(!xr(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 Wo(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 On(e,t){Ko(e);let o=t.outputLen;if(e.length<o)throw new Error(`digestInto() expects output buffer of length at least ${o}`)}var ko=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),se=(e,t)=>e<<32-t|e>>>t;var Gs=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Vr(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Ho(e){return typeof e=="string"&&(e=Vr(e)),Ko(e),e}var So=class{clone(){return this._cloneInto()}},Us={}.toString;function fn(e){let t=n=>e().update(Ho(n)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function Pr(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 Rn=(e,t,o)=>e&t^~e&o,gn=(e,t,o)=>e&t^e&o^t&o,xo=class extends So{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=ko(this.buffer)}update(t){Wo(this);let{view:o,buffer:n,blockLen:r}=this;t=Ho(t);let i=t.length;for(let c=0;c<i;){let d=Math.min(r-this.pos,i-c);if(d===r){let _=ko(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){Wo(this),On(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;Pr(n,r-8,BigInt(this.length*8),i),this.process(n,0);let d=ko(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 Tr=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]),Ye=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ze=new Uint32Array(64),jo=class extends xo{constructor(){super(64,32,8,!1),this.A=Ye[0]|0,this.B=Ye[1]|0,this.C=Ye[2]|0,this.D=Ye[3]|0,this.E=Ye[4]|0,this.F=Ye[5]|0,this.G=Ye[6]|0,this.H=Ye[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)Ze[l]=t.getUint32(o,!1);for(let l=16;l<64;l++){let v=Ze[l-15],x=Ze[l-2],E=se(v,7)^se(v,18)^v>>>3,X=se(x,17)^se(x,19)^x>>>10;Ze[l]=X+Ze[l-7]+E+Ze[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=se(d,6)^se(d,11)^se(d,25),x=f+v+Rn(d,_,N)+Tr[l]+Ze[l]|0,X=(se(n,2)^se(n,13)^se(n,22))+gn(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(){Ze.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var vn=fn(()=>new jo);var Io=Sr(yn());var bn=({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)}),E=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),_e=e.Record({additional_dissolve_delay_seconds:e.Nat32}),de=e.Record({visibility:e.Opt(e.Int32)}),pe=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:E,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:_e,SetVisibility:de,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:pe}),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)}),ue=e.Record({e8s:e.Nat64}),C=e.Record({to_account:e.Opt(h),amount:e.Opt(ue)}),le=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(le),neuron_id_or_subaccount:e.Opt(V)}),me=e.Record({controllers:e.Vec(e.Principal)}),Ne=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(me),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(Ne)}),Oe=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)}),R=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),fe=e.Record({reward_rate_transition_duration:e.Opt(R),initial_reward_rate:e.Opt(y),final_reward_rate:e.Opt(y)}),Re=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(y),neuron_maximum_age_for_age_bonus:e.Opt(R),neuron_maximum_dissolve_delay:e.Opt(R),neuron_minimum_dissolve_delay_to_vote:e.Opt(R),neuron_maximum_age_bonus:e.Opt(y),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(R),proposal_initial_voting_period:e.Opt(R),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(fe)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),ge=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),ve=e.Record({id:e.Opt(e.Principal)}),we=e.Record({dissolve_delay_interval:e.Opt(R),count:e.Opt(e.Nat64)}),ye=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),be=e.Record({iso_codes:e.Vec(e.Text)}),he=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(R),neuron_basket_construction_parameters:e.Opt(we),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(ye),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(be)}),I=e.Record({total:e.Opt(m)}),Se=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(R),memo:e.Opt(e.Nat64),vesting_period:e.Opt(R),stake:e.Opt(m)}),ke=e.Record({developer_neurons:e.Vec(Se)}),xe=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(ke),swap_distribution:e.Opt(I)}),s=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(Re),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ge),description:e.Opt(e.Text),dapp_canisters:e.Vec(ve),swap_parameters:e.Opt(he),initial_token_distribution:e.Opt(xe)}),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)}),Ve=e.Record({dissolve_delay_seconds:e.Nat64}),tt=e.Record({to_account:e.Opt(h)}),ot=e.Variant({RewardToNeuron:Ve,RewardToAccount:tt}),B=e.Record({node_provider:e.Opt(w),reward_mode:e.Opt(ot),amount_e8s:e.Nat64}),nt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),rt=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(nt),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)}),st=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(rt)}),at=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),it=e.Record({open_time_window:e.Opt(at)}),ct=e.Record({request:e.Opt(it),swap_canister_id:e.Opt(e.Principal)}),_t=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(B)}),G=e.Record({human_readable:e.Opt(e.Text)}),dt=e.Record({contribution_threshold_xdr:e.Opt(G),one_third_participation_milestone_xdr:e.Opt(G),full_participation_milestone_xdr:e.Opt(G)}),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(G),minimum_icp_xdr_rate:e.Opt(y)}),U=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)}),te=e.Record({principals:e.Vec(e.Principal)}),ut=e.Variant({ToRemove:w,ToAdd:w}),Fe=e.Record({change:e.Opt(ut)}),Ae=e.Record({motion_text:e.Text}),lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:S,UpdateCanisterSettings:Q,InstallCode:Oe,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:B,OpenSnsTokenSwap:st,SetSnsTokenSwapOpenTimeWindow:ct,SetDefaultFollowees:_t,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:te,AddOrRemoveNodeProvider:Fe,Motion:Ae});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)}),qe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),K=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(B),xdr_conversion_rate:e.Opt(qe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ee=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))}),Be=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(Ee),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(Ee),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}),Ge=e.Record({groups:e.Vec(Nt),timestamp_seconds:e.Opt(e.Nat64)}),Ue=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)}),Ke=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}),We=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(We),copy_inactive_neurons_to_stable_memory_migration:e.Opt(We)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),He=e.Record({vote:e.Int32,voting_power:e.Nat64}),vt=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)}),wt=e.Record({controller: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)}),oe=e.Record({neurons_fund_neuron_portions:e.Vec(wt)}),yt=e.Record({serialized_representation:e.Opt(e.Text)}),W=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(vt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(oe),ideal_matched_participation_function:e.Opt(yt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),bt=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(oe)}),ht=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(ht),canister_id:e.Opt(e.Principal)}),St=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(St)}),ze=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),kt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),xt=e.Record({id:e.Opt(n),failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(bt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(je),latest_tally:e.Opt(ze),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(kt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Vt=e.Variant({Spawn:n,Split:_,Configure:M,Merge:F,DisburseToNeuron:A,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:v,MergeMaturity:q,Disburse:C}),Pt=e.Record({command:e.Opt(Vt),timestamp:e.Nat64}),Xe=e.Record({vote:e.Int32,proposal_id:e.Opt(n)}),Tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),P=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Xe),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(Tt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(Ke),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Do=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(K),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Be),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(U),restore_aging_summary:e.Opt(Ge),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Ue),to_claim_transfers:e.Vec(Ke),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,xt)),xdr_conversion_rate:e.Opt(qe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Pt)),neurons:e.Vec(e.Tuple(e.Nat64,P)),genesis_timestamp_seconds:e.Nat64}),H=e.Variant({Ok:e.Null,Err:O}),Ct=e.Variant({Error:O,NeuronId:n}),Mt=e.Record({result:e.Opt(Ct)}),Je=e.Variant({Ok:P,Err:O}),Ft=e.Variant({Ok:Be,Err:O}),At=e.Variant({Ok:K,Err:O}),j=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Xe),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}),$e=e.Variant({Ok:j,Err:O}),qt=e.Record({nns_proposal_id:e.Opt(n)}),Et=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(oe)}),Bt=e.Record({neurons_fund_audit_info:e.Opt(Et)}),Gt=e.Variant({Ok:Bt,Err:O}),Ut=e.Record({result:e.Opt(Gt)}),Kt=e.Variant({Ok:w,Err:O}),ne=e.Record({id:e.Opt(n),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),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(ze),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),Wt=e.Record({known_neurons:e.Vec(c)}),Ht=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}),jt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,j)),full_neurons:e.Vec(P)}),zt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),Xt=e.Record({date_filter:e.Opt(zt)}),Jt=e.Record({rewards:e.Vec(K)}),$t=e.Record({node_providers:e.Vec(w)}),Qt=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)}),Yt=e.Record({proposal_info:e.Vec(ne)}),Zt=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)}),It=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:Zt,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:B,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:te,AddOrRemoveNodeProvider:Fe,Motion:Ae}),Dt=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(It),summary:e.Text}),Lt=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:Dt,StakeMaturity:$,MergeMaturity:q,Disburse:C});t.fill(e.Record({id:e.Opt(n),command:e.Opt(Lt),neuron_id_or_subaccount:e.Opt(V)}));let re=e.Record({created_neuron_id:e.Opt(n)}),eo=e.Record({refreshed_neuron_id:e.Opt(n)}),to=e.Record({target_neuron:e.Opt(P),source_neuron:e.Opt(P),target_neuron_info:e.Opt(j),source_neuron_info:e.Opt(j)}),oo=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(n)}),no=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ro=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),so=e.Record({transfer_block_height:e.Nat64}),ao=e.Variant({Error:O,Spawn:re,Split:re,Follow:e.Record({}),ClaimOrRefresh:eo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:to,DisburseToNeuron:re,MakeProposal:oo,StakeMaturity:no,MergeMaturity:ro,Disburse:so}),Qe=e.Record({command:e.Opt(ao)}),io=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)}),co=e.Variant({Committed:io,Aborted:e.Record({})}),_o=e.Record({result:e.Opt(co),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),po=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)}),uo=e.Variant({Committed:po,Aborted:e.Record({})}),lo=e.Record({result:e.Opt(uo),nns_proposal_id:e.Opt(e.Nat64)}),mo=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(te),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),No=e.Record({neurons_fund_neuron_portions:e.Vec(mo)}),Oo=e.Variant({Ok:No,Err:O}),fo=e.Record({result:e.Opt(Oo)}),Ro=e.Record({reward_account:e.Opt(h)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[H],[]),claim_or_refresh_neuron_from_account:e.Func([f],[Mt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Je],[]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Je],[]),get_latest_reward_event:e.Func([],[Ue],[]),get_metrics:e.Func([],[Ft],[]),get_monthly_node_provider_rewards:e.Func([],[At],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(K)],[]),get_network_economics_parameters:e.Func([],[U],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[$e],[]),get_neuron_info_by_id_or_subaccount:e.Func([V],[$e],[]),get_neurons_fund_audit_info:e.Func([qt],[Ut],[]),get_node_provider_by_caller:e.Func([e.Null],[Kt],[]),get_pending_proposals:e.Func([],[e.Vec(ne)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(ne)],[]),get_restore_aging_summary:e.Func([],[Ge],[]),list_known_neurons:e.Func([],[Wt],[]),list_neurons:e.Func([Ht],[jt],[]),list_node_provider_rewards:e.Func([Xt],[Jt],[]),list_node_providers:e.Func([],[$t],[]),list_proposals:e.Func([Qt],[Yt],[]),manage_neuron:e.Func([t],[Qe],[]),settle_community_fund_participation:e.Func([_o],[H],[]),settle_neurons_fund_participation:e.Func([lo],[fo],[]),simulate_manage_neuron:e.Func([t],[Qe],[]),transfer_gtc_neuron:e.Func([n,n],[H],[]),update_node_provider:e.Func([Ro],[H],[])})};var Vo=({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)}),E=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),_e=e.Record({additional_dissolve_delay_seconds:e.Nat32}),de=e.Record({visibility:e.Opt(e.Int32)}),pe=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:E,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:_e,SetVisibility:de,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:pe}),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)}),ue=e.Record({e8s:e.Nat64}),C=e.Record({to_account:e.Opt(h),amount:e.Opt(ue)}),le=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(le),neuron_id_or_subaccount:e.Opt(V)}),me=e.Record({controllers:e.Vec(e.Principal)}),Ne=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(me),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(Ne)}),Oe=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)}),R=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),fe=e.Record({reward_rate_transition_duration:e.Opt(R),initial_reward_rate:e.Opt(y),final_reward_rate:e.Opt(y)}),Re=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(y),neuron_maximum_age_for_age_bonus:e.Opt(R),neuron_maximum_dissolve_delay:e.Opt(R),neuron_minimum_dissolve_delay_to_vote:e.Opt(R),neuron_maximum_age_bonus:e.Opt(y),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(R),proposal_initial_voting_period:e.Opt(R),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(fe)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),ge=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),ve=e.Record({id:e.Opt(e.Principal)}),we=e.Record({dissolve_delay_interval:e.Opt(R),count:e.Opt(e.Nat64)}),ye=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),be=e.Record({iso_codes:e.Vec(e.Text)}),he=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(R),neuron_basket_construction_parameters:e.Opt(we),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(ye),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(be)}),I=e.Record({total:e.Opt(m)}),Se=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(R),memo:e.Opt(e.Nat64),vesting_period:e.Opt(R),stake:e.Opt(m)}),ke=e.Record({developer_neurons:e.Vec(Se)}),xe=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(ke),swap_distribution:e.Opt(I)}),s=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(Re),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ge),description:e.Opt(e.Text),dapp_canisters:e.Vec(ve),swap_parameters:e.Opt(he),initial_token_distribution:e.Opt(xe)}),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)}),Ve=e.Record({dissolve_delay_seconds:e.Nat64}),tt=e.Record({to_account:e.Opt(h)}),ot=e.Variant({RewardToNeuron:Ve,RewardToAccount:tt}),B=e.Record({node_provider:e.Opt(w),reward_mode:e.Opt(ot),amount_e8s:e.Nat64}),nt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),rt=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(nt),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)}),st=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(rt)}),at=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),it=e.Record({open_time_window:e.Opt(at)}),ct=e.Record({request:e.Opt(it),swap_canister_id:e.Opt(e.Principal)}),_t=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(B)}),G=e.Record({human_readable:e.Opt(e.Text)}),dt=e.Record({contribution_threshold_xdr:e.Opt(G),one_third_participation_milestone_xdr:e.Opt(G),full_participation_milestone_xdr:e.Opt(G)}),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(G),minimum_icp_xdr_rate:e.Opt(y)}),U=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)}),te=e.Record({principals:e.Vec(e.Principal)}),ut=e.Variant({ToRemove:w,ToAdd:w}),Fe=e.Record({change:e.Opt(ut)}),Ae=e.Record({motion_text:e.Text}),lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:S,UpdateCanisterSettings:Q,InstallCode:Oe,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:B,OpenSnsTokenSwap:st,SetSnsTokenSwapOpenTimeWindow:ct,SetDefaultFollowees:_t,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:te,AddOrRemoveNodeProvider:Fe,Motion:Ae});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)}),qe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),K=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(B),xdr_conversion_rate:e.Opt(qe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ee=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))}),Be=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(Ee),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(Ee),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}),Ge=e.Record({groups:e.Vec(Nt),timestamp_seconds:e.Opt(e.Nat64)}),Ue=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)}),Ke=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}),We=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(We),copy_inactive_neurons_to_stable_memory_migration:e.Opt(We)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),He=e.Record({vote:e.Int32,voting_power:e.Nat64}),vt=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)}),wt=e.Record({controller: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)}),oe=e.Record({neurons_fund_neuron_portions:e.Vec(wt)}),yt=e.Record({serialized_representation:e.Opt(e.Text)}),W=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(vt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(oe),ideal_matched_participation_function:e.Opt(yt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),bt=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(oe)}),ht=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(ht),canister_id:e.Opt(e.Principal)}),St=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(St)}),ze=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),kt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),xt=e.Record({id:e.Opt(n),failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(bt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(je),latest_tally:e.Opt(ze),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(kt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Vt=e.Variant({Spawn:n,Split:_,Configure:M,Merge:F,DisburseToNeuron:A,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:v,MergeMaturity:q,Disburse:C}),Pt=e.Record({command:e.Opt(Vt),timestamp:e.Nat64}),Xe=e.Record({vote:e.Int32,proposal_id:e.Opt(n)}),Tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),P=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Xe),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(Tt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(Ke),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Do=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(K),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Be),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(U),restore_aging_summary:e.Opt(Ge),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Ue),to_claim_transfers:e.Vec(Ke),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,xt)),xdr_conversion_rate:e.Opt(qe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Pt)),neurons:e.Vec(e.Tuple(e.Nat64,P)),genesis_timestamp_seconds:e.Nat64}),H=e.Variant({Ok:e.Null,Err:O}),Ct=e.Variant({Error:O,NeuronId:n}),Mt=e.Record({result:e.Opt(Ct)}),Je=e.Variant({Ok:P,Err:O}),Ft=e.Variant({Ok:Be,Err:O}),At=e.Variant({Ok:K,Err:O}),j=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Xe),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}),$e=e.Variant({Ok:j,Err:O}),qt=e.Record({nns_proposal_id:e.Opt(n)}),Et=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(oe)}),Bt=e.Record({neurons_fund_audit_info:e.Opt(Et)}),Gt=e.Variant({Ok:Bt,Err:O}),Ut=e.Record({result:e.Opt(Gt)}),Kt=e.Variant({Ok:w,Err:O}),ne=e.Record({id:e.Opt(n),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),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(ze),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),Wt=e.Record({known_neurons:e.Vec(c)}),Ht=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}),jt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,j)),full_neurons:e.Vec(P)}),zt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),Xt=e.Record({date_filter:e.Opt(zt)}),Jt=e.Record({rewards:e.Vec(K)}),$t=e.Record({node_providers:e.Vec(w)}),Qt=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)}),Yt=e.Record({proposal_info:e.Vec(ne)}),Zt=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)}),It=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:Zt,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:B,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:te,AddOrRemoveNodeProvider:Fe,Motion:Ae}),Dt=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(It),summary:e.Text}),Lt=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:Dt,StakeMaturity:$,MergeMaturity:q,Disburse:C});t.fill(e.Record({id:e.Opt(n),command:e.Opt(Lt),neuron_id_or_subaccount:e.Opt(V)}));let re=e.Record({created_neuron_id:e.Opt(n)}),eo=e.Record({refreshed_neuron_id:e.Opt(n)}),to=e.Record({target_neuron:e.Opt(P),source_neuron:e.Opt(P),target_neuron_info:e.Opt(j),source_neuron_info:e.Opt(j)}),oo=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(n)}),no=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ro=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),so=e.Record({transfer_block_height:e.Nat64}),ao=e.Variant({Error:O,Spawn:re,Split:re,Follow:e.Record({}),ClaimOrRefresh:eo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:to,DisburseToNeuron:re,MakeProposal:oo,StakeMaturity:no,MergeMaturity:ro,Disburse:so}),Qe=e.Record({command:e.Opt(ao)}),io=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)}),co=e.Variant({Committed:io,Aborted:e.Record({})}),_o=e.Record({result:e.Opt(co),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),po=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)}),uo=e.Variant({Committed:po,Aborted:e.Record({})}),lo=e.Record({result:e.Opt(uo),nns_proposal_id:e.Opt(e.Nat64)}),mo=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(te),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),No=e.Record({neurons_fund_neuron_portions:e.Vec(mo)}),Oo=e.Variant({Ok:No,Err:O}),fo=e.Record({result:e.Opt(Oo)}),Ro=e.Record({reward_account:e.Opt(h)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[H],[]),claim_or_refresh_neuron_from_account:e.Func([f],[Mt],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_full_neuron:e.Func([e.Nat64],[Je],["query"]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Je],["query"]),get_latest_reward_event:e.Func([],[Ue],["query"]),get_metrics:e.Func([],[Ft],["query"]),get_monthly_node_provider_rewards:e.Func([],[At],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(K)],["query"]),get_network_economics_parameters:e.Func([],[U],["query"]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],["query"]),get_neuron_info:e.Func([e.Nat64],[$e],["query"]),get_neuron_info_by_id_or_subaccount:e.Func([V],[$e],["query"]),get_neurons_fund_audit_info:e.Func([qt],[Ut],["query"]),get_node_provider_by_caller:e.Func([e.Null],[Kt],["query"]),get_pending_proposals:e.Func([],[e.Vec(ne)],["query"]),get_proposal_info:e.Func([e.Nat64],[e.Opt(ne)],["query"]),get_restore_aging_summary:e.Func([],[Ge],["query"]),list_known_neurons:e.Func([],[Wt],["query"]),list_neurons:e.Func([Ht],[jt],["query"]),list_node_provider_rewards:e.Func([Xt],[Jt],["query"]),list_node_providers:e.Func([],[$t],["query"]),list_proposals:e.Func([Qt],[Yt],["query"]),manage_neuron:e.Func([t],[Qe],[]),settle_community_fund_participation:e.Func([_o],[H],[]),settle_neurons_fund_participation:e.Func([lo],[fo],[]),simulate_manage_neuron:e.Func([t],[Qe],[]),transfer_gtc_neuron:e.Func([n,n],[H],[]),update_node_provider:e.Func([Ro],[H],[])})};var hn=({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 xn=require("@dfinity/ledger-icp"),z=require("@dfinity/principal"),g=require("@dfinity/utils");var Vn=e=>({id:e}),Pn=e=>({id:e}),Cr=e=>{if("NeuronId"in e)return{NeuronId:{id:e.NeuronId}};if("Subaccount"in e)return{Subaccount:Uint8Array.from(e.Subaccount)};throw new k(e)},Po=e=>e.basisPoints!==void 0?{basis_points:[e.basisPoints]}:{basis_points:[]},ae=e=>e.seconds!==void 0?{seconds:[e.seconds]}:{seconds:[]},Mr=e=>e.secondsAfterUtcMidnight!==void 0?{seconds_after_utc_midnight:[e.secondsAfterUtcMidnight]}:{seconds_after_utc_midnight:[]},Fr=e=>({iso_codes:e.isoCodes}),L=e=>e.e8s!==void 0?{e8s:[e.e8s]}:{e8s:[]},Tn=e=>e.base64Encoding!==void 0?{base64_encoding:[e.base64Encoding]}:{base64_encoding:[]},Ar=e=>({reward_rate_transition_duration:e.rewardRateTransitionDuration!==void 0?[ae(e.rewardRateTransitionDuration)]:[],initial_reward_rate:e.initialRewardRate!==void 0?[Po(e.initialRewardRate)]:[],final_reward_rate:e.finalRewardRate!==void 0?[Po(e.finalRewardRate)]:[]}),qr=e=>({transaction_fee:e.transactionFee!==void 0?[L(e.transactionFee)]:[],token_symbol:e.tokenSymbol!==void 0?[e.tokenSymbol]:[],token_logo:e.tokenLogo!==void 0?[Tn(e.tokenLogo)]:[],token_name:e.tokenName!==void 0?[e.tokenName]:[]}),Er=e=>({minimum_participants:e.minimumParticipants!==void 0?[e.minimumParticipants]:[],duration:e.duration!==void 0?[ae(e.duration)]:[],neuron_basket_construction_parameters:e.neuronBasketConstructionParameters!==void 0?[Br(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?[Mr(e.startTime)]:[],maximum_icp:e.maximumIcp!==void 0?[L(e.maximumIcp)]:[],restricted_countries:e.restrictedCountries!==void 0?[Fr(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,g.toNullable)(e.neuronsFundParticipation)}),Br=e=>({dissolve_delay_interval:e.dissolveDelayInterval!==void 0?[ae(e.dissolveDelayInterval)]:[],count:e.count!==void 0?[e.count]:[]}),Gr=e=>({neuron_maximum_dissolve_delay_bonus:e.neuronMaximumDissolveDelayBonus!==void 0?[Po(e.neuronMaximumDissolveDelayBonus)]:[],neuron_maximum_age_for_age_bonus:e.neuronMaximumAgeForAgeBonus!==void 0?[ae(e.neuronMaximumAgeForAgeBonus)]:[],neuron_maximum_dissolve_delay:e.neuronMaximumDissolveDelay!==void 0?[ae(e.neuronMaximumDissolveDelay)]:[],neuron_minimum_dissolve_delay_to_vote:e.neuronMinimumDissolveDelayToVote!==void 0?[ae(e.neuronMinimumDissolveDelayToVote)]:[],neuron_maximum_age_bonus:e.neuronMaximumAgeBonus!==void 0?[Po(e.neuronMaximumAgeBonus)]:[],neuron_minimum_stake:e.neuronMinimumStake!==void 0?[L(e.neuronMinimumStake)]:[],proposal_wait_for_quiet_deadline_increase:e.proposalWaitForQuietDeadlineIncrease!==void 0?[ae(e.proposalWaitForQuietDeadlineIncrease)]:[],proposal_initial_voting_period:e.proposalInitialVotingPeriod!==void 0?[ae(e.proposalInitialVotingPeriod)]:[],proposal_rejection_fee:e.proposalRejectionFee!==void 0?[L(e.proposalRejectionFee)]:[],voting_reward_parameters:e.votingRewardParameters!==void 0?[Ar(e.votingRewardParameters)]:[]}),Sn=e=>({total:e.total!==void 0?[L(e.total)]:[]}),Ur=e=>({treasury_distribution:e.treasuryDistribution!==void 0?[Sn(e.treasuryDistribution)]:[],developer_distribution:e.developerDistribution!==void 0?[Wr(e.developerDistribution)]:[],swap_distribution:e.swapDistribution!==void 0?[Sn(e.swapDistribution)]:[]}),Kr=e=>({controller:e.controller!==void 0?[z.Principal.fromText(e.controller)]:[],dissolve_delay:e.dissolveDelay!==void 0?[ae(e.dissolveDelay)]:[],memo:e.memo!==void 0?[e.memo]:[],vesting_period:e.vestingPeriod!==void 0?[ae(e.vestingPeriod)]:[],stake:e.stake!==void 0?[L(e.stake)]:[]}),Wr=e=>({developer_neurons:e.developerNeurons.map(Kr)}),Hr=e=>({url:e.url!==void 0?[e.url]:[],governance_parameters:e.governanceParameters!==void 0?[Gr(e.governanceParameters)]:[],fallback_controller_principal_ids:e.fallbackControllerPrincipalIds.map(t=>z.Principal.fromText(t)),logo:e.logo!==void 0?[Tn(e.logo)]:[],name:e.name!==void 0?[e.name]:[],ledger_parameters:e.ledgerParameters!==void 0?[qr(e.ledgerParameters)]:[],description:e.description!==void 0?[e.description]:[],dapp_canisters:e.dappCanisters.map(t=>({id:[z.Principal.fromText(t)]})),swap_parameters:e.swapParameters!==void 0?[Er(e.swapParameters)]:[],initial_token_distribution:e.initialTokenDistribution!==void 0?[Ur(e.initialTokenDistribution)]:[]}),jr=e=>{if(e.wasmModule===void 0)throw new Error("wasmModule not found");return{arg:(0,g.toNullable)((0,g.arrayBufferToUint8Array)(e.arg??new ArrayBuffer(0))),wasm_module:(0,g.toNullable)((0,g.arrayBufferToUint8Array)(e.wasmModule)),skip_stopping_before_installing:(0,g.toNullable)(e.skipStoppingBeforeInstalling),canister_id:(0,g.toNullable)((0,g.nonNullish)(e.canisterId)?z.Principal.fromText(e.canisterId):void 0),install_mode:(0,g.toNullable)(e.installMode)}},zr=e=>e===void 0?[]:[{freezing_threshold:(0,g.toNullable)(e.freezingThreshold),controllers:e.controllers?[{controllers:e.controllers.map(t=>z.Principal.fromText(t))}]:[],log_visibility:(0,g.toNullable)(e.logVisibility),wasm_memory_limit:(0,g.toNullable)(e.wasmMemoryLimit),compute_allocation:(0,g.toNullable)(e.computeAllocation),memory_allocation:(0,g.toNullable)(e.memoryAllocation)}],Cn=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,g.arrayBufferToUint8Array)(t.payloadBytes)}}}if("ManageNeuron"in e){let t=e.ManageNeuron;return{ManageNeuron:Zr(t)}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(z.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:Qr(t.neuronsFundEconomics)}}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{node_provider:t.nodeProvider?[To(t.nodeProvider)]:[],amount_e8s:t.amountE8s,reward_mode:t.rewardMode!=null?[kn(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?[To(o.nodeProvider)]:[],amount_e8s:o.amountE8s,reward_mode:o.rewardMode!=null?[kn(o.rewardMode)]:[]}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change?[$r(t.change)]:[]}}}if("Motion"in e)return{Motion:{motion_text:e.Motion.motionText}};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("CreateServiceNervousSystem"in e)return{CreateServiceNervousSystem:Hr(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?[z.Principal.fromText(t.canisterId)]:[],action:t.action?[t.action]:[]}}}if("UpdateCanisterSettings"in e){let t=e.UpdateCanisterSettings;return{UpdateCanisterSettings:{canister_id:t.canisterId?[z.Principal.fromText(t.canisterId)]:[],settings:zr(t.settings)}}}throw new k(e)},Xr=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(Pn)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by?[Yr(t.by)]:[]}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation?[Jr(t.operation)]:[]}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal?[Vn(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?[z.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,g.toNullable)(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{url:t.url,title:[],action:t.action?[Cn(t.action)]:[],summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{to_account:t.toAccountId?[zo(t.toAccountId)]:[],amount:t.amount?[Mn(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?[z.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)},Jr=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hot_key_to_remove:t.hotKeyToRemove!=null?[z.Principal.fromText(t.hotKeyToRemove)]:[]}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{new_hot_key:t.newHotKey?[z.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,g.toNullable)(t.visibility)}}}throw new k(e)},$r=e=>{if("ToRemove"in e)return{ToRemove:To(e.ToRemove)};if("ToAdd"in e)return{ToAdd:To(e.ToAdd)};throw new k(e)},To=e=>({id:e.id!=null?[z.Principal.fromText(e.id)]:[],reward_account:e.rewardAccount!=null?[zo(e.rewardAccount)]:[]}),Mn=e=>({e8s:e}),zo=e=>({hash:(0,xn.accountIdentifierToBytes)(e)}),Qr=e=>{if((0,g.isNullish)(e))return[];let{maximumIcpXdrRate:t,maxTheoreticalNeuronsFundParticipationAmountXdr:o,neuronsFundMatchedFundingCurveCoefficients:n,minimumIcpXdrRate:r}=e,i=_=>(0,g.isNullish)(_)?[]:[{basis_points:(0,g.toNullable)(_.basisPoints)}],c=_=>(0,g.isNullish)(_)?[]:[{human_readable:(0,g.toNullable)(_.humanReadable)}],d=_=>(0,g.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)}]},kn=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?[zo(e.RewardToAccount.toAccount)]:[]}};throw new k(e)},Yr=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)},Co=({neuronIds:e,includeEmptyNeurons:t,includePublicNeurons:o})=>({neuron_ids:BigUint64Array.from(e??[]),include_neurons_readable_by_caller:!e,include_empty_neurons_readable_by_caller:(0,g.toNullable)(t),include_public_neurons_in_full_neurons:(0,g.toNullable)(o)}),Zr=({id:e,command:t,neuronIdOrSubaccount:o})=>({id:e?[Pn(e)]:[],command:t?[Xr(t)]:[],neuron_id_or_subaccount:o?[Cr(o)]:[]}),Fn=({includeRewardStatus:e,beforeProposal:t,excludeTopic:o,includeStatus:n,limit:r,includeAllManageNeuronProposals:i,omitLargeFields:c})=>({include_reward_status:Int32Array.from(e),before_proposal:t?[Vn(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,g.toNullable)(c)}),An=e=>({id:[],command:[{ClaimOrRefresh:{by:[{NeuronIdOrSubaccount:{}}]}}],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}),qn=({memo:e,controller:t})=>{let o={ClaimOrRefresh:{by:[{MemoAndController:{controller:t==null?[]:[t],memo:e}}]}};return{id:[],command:[o],neuron_id_or_subaccount:[]}},En=({neuronId:e,amount:t})=>({id:[],command:[{Split:{amount_e8s:t}}],neuron_id_or_subaccount:[{NeuronId:{id:e}}]});var Bn=({neuronId:e,vote:t,proposalId:o})=>Ie({neuronId:e,command:{RegisterVote:{vote:t,proposal:[{id:o}]}}}),Gn=e=>{let t={MakeProposal:{url:e.url,title:e.title!=null?[e.title]:[],summary:e.summary,action:[Cn(e.action)]}};return{id:[],command:[t],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}},Un=({neuronId:e,topic:t,followees:o})=>Ie({neuronId:e,command:{Follow:{topic:t,followees:o.map(n=>({id:n}))}}}),Kn=({neuronId:e,toAccountIdentifier:t,amount:o})=>Ie({neuronId:e,command:{Disburse:{to_account:t!==void 0?[t.toAccountIdentifierHash()]:[],amount:o!==void 0?[Mn(o)]:[]}}}),Wn=({neuronId:e,percentageToMerge:t})=>Ie({neuronId:e,command:{MergeMaturity:{percentage_to_merge:t}}}),Hn=({neuronId:e,percentageToStake:t})=>Ie({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,g.toNullable)(t)}}}),jn=({neuronId:e,percentageToSpawn:t,newController:o,nonce:n})=>Ie({neuronId:e,command:{Spawn:{percentage_to_spawn:t===void 0?[]:[t],new_controller:o===void 0?[]:[o],nonce:n===void 0?[]:[n]}}}),zn=({neuronId:e,principal:t})=>ie({neuronId:e,operation:{AddHotKey:{new_hot_key:[t]}}}),Xn=({neuronId:e,principal:t})=>ie({neuronId:e,operation:{RemoveHotKey:{hot_key_to_remove:[t]}}}),Jn=({neuronId:e,additionalDissolveDelaySeconds:t})=>ie({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),$n=({neuronId:e,dissolveDelaySeconds:t})=>ie({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:BigInt(t)}}}),Qn=e=>ie({neuronId:e,operation:{JoinCommunityFund:{}}}),Yn=({neuronId:e,autoStake:t})=>ie({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),Zn=e=>ie({neuronId:e,operation:{LeaveCommunityFund:{}}}),In=({neuronId:e,visibility:t})=>ie({neuronId:e,operation:{SetVisibility:{visibility:[t]}}}),Xo=({sourceNeuronId:e,targetNeuronId:t})=>Ie({neuronId:t,command:{Merge:{source_neuron_id:[{id:e}]}}}),Dn=e=>ie({neuronId:e,operation:{StartDissolving:{}}}),Ln=e=>ie({neuronId:e,operation:{StopDissolving:{}}}),Ie=({neuronId:e,command:t})=>({id:[{id:e}],command:[t],neuron_id_or_subaccount:[]}),ie=({neuronId:e,operation:t})=>Ie({neuronId:e,command:{Configure:{operation:[t]}}});var Ao=require("@dfinity/ledger-icp"),Jo=require("@dfinity/principal"),a=require("@dfinity/utils");var $o=({neuronId:e,neuronInfo:t,rawNeuron:o,canisterId:n})=>{let r=o?Ir({neuron:o,canisterId:n}):void 0;return{neuronId:e,dissolveDelaySeconds:t.dissolve_delay_seconds,recentBallots:t.recent_ballots.map(nr),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}},Ir=({neuron:e,canisterId:t})=>({id:e.id.length?De(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(nr),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,Ao.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?Dr(e.dissolve_state[0]):void 0,spawnAtTimesSeconds:e.spawn_at_timestamp_seconds[0],followees:e.followees.map(([o,n])=>rr({topic:o,followees:n})),visibility:(0,a.fromNullable)(e.visibility)}),or=({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)(Jo.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=>Jo.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:[]}),nr=({vote:e,proposal_id:t})=>({vote:e,proposalId:t.length?De(t[0]):void 0}),Dr=e=>"DissolveDelaySeconds"in e?{DissolveDelaySeconds:e.DissolveDelaySeconds}:{WhenDissolvedTimestampSeconds:e.WhenDissolvedTimestampSeconds},rr=({topic:e,followees:t})=>({topic:e,followees:t.followees.map(De)}),De=({id:e})=>e,Lr=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)},es=({neuronId:e,ballot:t})=>{let{vote:o,voting_power:n}=t;return{neuronId:e,vote:o,votingPower:n}},ts=({title:e,url:t,action:o,summary:n})=>({title:e.length?e[0]:void 0,url:t,action:o.length?sr(o[0]):void 0,summary:n}),sr=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?De(o.id[0]):void 0,command:o.command.length?ns(o.command[0]):void 0,neuronIdOrSubaccount:o.neuron_id_or_subaccount.length?Lr(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:as(o.neurons_fund_economics)}}}if("RewardNodeProvider"in e){let o=e.RewardNodeProvider;return{RewardNodeProvider:{nodeProvider:o.node_provider.length?Mo(o.node_provider[0]):void 0,amountE8s:o.amount_e8s,rewardMode:o.reward_mode.length?er(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?Mo(n.node_provider[0]):void 0,amountE8s:n.amount_e8s,rewardMode:n.reward_mode.length?er(n.reward_mode[0]):void 0}))}}}if("AddOrRemoveNodeProvider"in e){let o=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:o.change.length?ss(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])=>rr({topic:n,followees:r}))}};if("RegisterKnownNeuron"in e){let o=e.RegisterKnownNeuron;return{RegisterKnownNeuron:_s(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:Ns((0,a.fromNullable)(o.governance_parameters)),fallbackControllerPrincipalIds:o.fallback_controller_principal_ids.map(n=>n.toString()),logo:cr((0,a.fromNullable)(o.logo)),name:(0,a.fromNullable)(o.name),ledgerParameters:ls((0,a.fromNullable)(o.ledger_parameters)),description:(0,a.fromNullable)(o.description),dappCanisters:o.dapp_canisters.map(us)??[],swapParameters:fs((0,a.fromNullable)(o.swap_parameters)),initialTokenDistribution:vs((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:ws((0,a.fromDefinedNullable)(e.UpdateCanisterSettings.settings))}};throw new k(e)},os=e=>({no:e.no,yes:e.yes,total:e.total,timestampSeconds:e.timestamp_seconds}),ns=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(De)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by.length?cs(t.by[0]):void 0}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation.length?rs(t.operation[0]):void 0}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal.length?De(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?sr(t.action[0]):void 0,summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{toAccountId:t.to_account.length?Qo(t.to_account[0]):void 0,amount:t.amount.length?is(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)},rs=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)},ss=e=>{if("ToRemove"in e)return{ToRemove:Mo(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Mo(e.ToAdd)};throw new k(e)},as=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)}},Mo=e=>({id:e.id.length?e.id[0].toString():void 0,rewardAccount:e.reward_account.length?Qo(e.reward_account[0]):void 0}),is=e=>e.e8s,Qo=e=>(0,Ao.accountIdentifierFromBytes)(new Uint8Array(e.hash)),er=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?Qo(e.RewardToAccount.to_account[0]):void 0}};throw new k(e)},cs=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)},Yo=e=>({id:e.id.length?De(e.id[0]):void 0,ballots:e.ballots.map(t=>es({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?ts(e.proposal[0]):void 0,proposer:e.proposer.length?De(e.proposer[0]):void 0,latestTally:e.latest_tally.length?os(e.latest_tally[0]):void 0,executedTimestampSeconds:e.executed_timestamp_seconds,topic:e.topic,status:e.status,rewardStatus:e.reward_status}),ar=({response:{neuron_infos:e,full_neurons:t},canisterId:o})=>e.map(([n,r])=>$o({neuronId:n,neuronInfo:r,rawNeuron:t.find(i=>i.id.length&&i.id[0].id===n),canisterId:o})),ir=({proposal_info:e})=>({proposals:e.map(Yo)}),_s=({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])??""}},Fo=e=>e===void 0?void 0:{basisPoints:(0,a.fromNullable)(e.basis_points)},ce=e=>e===void 0?void 0:{seconds:(0,a.fromNullable)(e.seconds)},ds=e=>e===void 0?void 0:{secondsAfterUtcMidnight:(0,a.fromNullable)(e.seconds_after_utc_midnight)},ps=e=>e===void 0?void 0:{isoCodes:e.iso_codes},ee=e=>e===void 0?void 0:{e8s:(0,a.fromNullable)(e.e8s)},us=e=>e===void 0||e.id.length===0?void 0:(0,a.fromDefinedNullable)(e.id).toString(),cr=e=>e===void 0?void 0:{base64Encoding:(0,a.fromNullable)(e.base64_encoding)},ls=e=>e===void 0?void 0:{transactionFee:ee((0,a.fromNullable)(e.transaction_fee)),tokenSymbol:(0,a.fromNullable)(e.token_symbol),tokenLogo:cr((0,a.fromNullable)(e.token_logo)),tokenName:(0,a.fromNullable)(e.token_name)},ms=e=>e===void 0?void 0:{rewardRateTransitionDuration:ce((0,a.fromNullable)(e.reward_rate_transition_duration)),initialRewardRate:Fo((0,a.fromNullable)(e.initial_reward_rate)),finalRewardRate:Fo((0,a.fromNullable)(e.final_reward_rate))},Ns=e=>e===void 0?void 0:{neuronMaximumDissolveDelayBonus:Fo((0,a.fromNullable)(e.neuron_maximum_dissolve_delay_bonus)),neuronMaximumAgeForAgeBonus:ce((0,a.fromNullable)(e.neuron_maximum_age_for_age_bonus)),neuronMaximumDissolveDelay:ce((0,a.fromNullable)(e.neuron_maximum_dissolve_delay)),neuronMinimumDissolveDelayToVote:ce((0,a.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote)),neuronMaximumAgeBonus:Fo((0,a.fromNullable)(e.neuron_maximum_age_bonus)),neuronMinimumStake:ee((0,a.fromNullable)(e.neuron_minimum_stake)),proposalWaitForQuietDeadlineIncrease:ce((0,a.fromNullable)(e.proposal_wait_for_quiet_deadline_increase)),proposalInitialVotingPeriod:ce((0,a.fromNullable)(e.proposal_initial_voting_period)),proposalRejectionFee:ee((0,a.fromNullable)(e.proposal_rejection_fee)),votingRewardParameters:ms((0,a.fromNullable)(e.voting_reward_parameters))},Os=e=>e===void 0?void 0:{dissolveDelayInterval:ce((0,a.fromNullable)(e.dissolve_delay_interval)),count:(0,a.fromNullable)(e.count)},fs=e=>e===void 0?void 0:{minimumParticipants:(0,a.fromNullable)(e.minimum_participants),duration:ce((0,a.fromNullable)(e.duration)),neuronBasketConstructionParameters:Os((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:ds((0,a.fromNullable)(e.start_time)),maximumIcp:ee((0,a.fromNullable)(e.maximum_icp)),restrictedCountries:ps((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)},tr=e=>e===void 0?void 0:{total:ee((0,a.fromNullable)(e.total))},Rs=e=>e===void 0?void 0:{controller:e.controller.length===0?void 0:e.controller[0].toString(),dissolveDelay:ce((0,a.fromNullable)(e.dissolve_delay)),memo:(0,a.fromNullable)(e.memo),vestingPeriod:ce((0,a.fromNullable)(e.vesting_period)),stake:ee((0,a.fromNullable)(e.stake))},gs=e=>e===void 0?void 0:{developerNeurons:e.developer_neurons.map(Rs)},vs=e=>e===void 0?void 0:{treasuryDistribution:tr((0,a.fromNullable)(e.treasury_distribution)),developerDistribution:gs((0,a.fromNullable)(e.developer_distribution)),swapDistribution:tr((0,a.fromNullable)(e.swap_distribution))},ws=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 wo=e=>{let{command:t}=e,o=t[0];if(!o)throw new Te({error_message:"Error updating neuron",error_type:0});if("Error"in o)throw new Te(o.Error);return o},T=async({request:e,service:t})=>{let o=await t.manage_neuron(e);return wo(o)},_r=async({request:e,service:t})=>{let o=await t.simulate_manage_neuron(e);return wo(o)};var Zo=BigInt(1e8);var qo=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=Co({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 ar({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=Fn(t),r=await this.getGovernanceService(o).list_proposals(n);return ir(r)};this.stakeNeuron=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:i,fee:c})=>{if(t<Zo)throw new et(t);let d=new Uint8Array((0,Io.default)(8)),_=(0,u.uint8ArrayToBigInt)(d),N=this.buildNeuronStakeSubAccount(d,o),f=Ce.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 Le;return l};this.stakeNeuronIcrc1=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:i,fee:c})=>{if(t<Zo)throw new et(t);let d=new Uint8Array((0,Io.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 Le;return f};this.increaseDissolveDelay=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{let n=Jn({neuronId:t,additionalDissolveDelaySeconds:o});await T({request:n,service:this.certifiedService})};this.setDissolveDelay=async({neuronId:t,dissolveDelaySeconds:o})=>{let n=$n({neuronId:t,dissolveDelaySeconds:o});await T({request:n,service:this.certifiedService})};this.startDissolving=async t=>{let o=Dn(t);await T({request:o,service:this.certifiedService})};this.stopDissolving=async t=>{let o=Ln(t);await T({request:o,service:this.certifiedService})};this.joinCommunityFund=async t=>{let o=Qn(t);await T({request:o,service:this.certifiedService})};this.autoStakeMaturity=async t=>{await T({request:Yn(t),service:this.certifiedService})};this.leaveCommunityFund=async t=>{let o=Zn(t);await T({request:o,service:this.certifiedService})};this.setVisibility=async(t,o)=>{let n=In({neuronId:t,visibility:o});await T({request:n,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 Te(n.Err)};this.mergeNeurons=async t=>{let o=Xo(t);await T({request:o,service:this.certifiedService})};this.simulateMergeNeurons=async t=>{var _;let o=Xo(t),n=await _r({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 $o({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=En({neuronId:t,amount:o}),r=await this.certifiedService.manage_neuron(n),i=wo(r);if("Split"in i){let c=(0,u.fromNullable)(i.Split.created_neuron_id);if((0,u.isNullish)(c))throw new Te({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?Yo(n):void 0};this.makeProposal=async t=>{var r;let o=Gn(t),n=await T({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=Bn({neuronId:t,vote:o,proposalId:n});await T({request:r,service:this.certifiedService})};this.setFollowees=async t=>{let o=Un(t);await T({request:o,service:this.certifiedService})};this.disburse=async({neuronId:t,toAccountId:o,amount:n})=>{(0,u.nonNullish)(o)&&(0,Ce.checkAccountId)(o);let r=(0,u.nonNullish)(o)?Ce.AccountIdentifier.fromHex(o):void 0,i=Kn({neuronId:t,toAccountIdentifier:r,amount:n});await T({request:i,service:this.certifiedService})};this.mergeMaturity=async({neuronId:t,percentageToMerge:o})=>{(0,u.assertPercentageNumber)(o);let n=Wn({neuronId:t,percentageToMerge:o});await T({request:n,service:this.certifiedService})};this.stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,u.assertPercentageNumber)(o??100),await T({request:Hn({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=jn({neuronId:t,percentageToSpawn:o,newController:n,nonce:r}),c=await this.certifiedService.manage_neuron(i),d=wo(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=zn({neuronId:t,principal:o});await T({request:n,service:this.certifiedService})};this.removeHotkey=async({neuronId:t,principal:o})=>{let n=Xn({neuronId:t,principal:o});await T({request:n,service:this.certifiedService})};this.claimOrRefreshNeuronFromAccount=async({memo:t,controller:o})=>{var c;let n=qn({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=An(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)=>Ce.SubAccount.fromBytes(this.getNeuronStakeSubAccountBytes(t,o));this.getNeuronStakeSubAccountBytes=(t,o)=>{let n=(0,u.asciiStringToByteArray)("neuron-stake"),r=vn.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??bo,{service:n,certifiedService:r,agent:i}=(0,u.createServices)({options:{...t,canisterId:o},idlFactory:Vo,certifiedIdlFactory:bn}),c=t.oldListNeuronsServiceOverride??dr.Actor.createActor(hn,{agent:i,canisterId:o});return new e(o,n,r,c,i)}getGovernanceService(t){return t?this.certifiedService:this.service}};var ur=require("@dfinity/ledger-icp"),Bo=require("@dfinity/utils");var pr=({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)}),E=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),_e=e.Record({additional_dissolve_delay_seconds:e.Nat32}),de=e.Record({visibility:e.Opt(e.Int32)}),pe=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:E,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:_e,SetVisibility:de,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:pe}),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)}),ue=e.Record({e8s:e.Nat64}),C=e.Record({to_account:e.Opt(h),amount:e.Opt(ue)}),le=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(le),neuron_id_or_subaccount:e.Opt(V)}),me=e.Record({controllers:e.Vec(e.Principal)}),Ne=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(me),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(Ne)}),Oe=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)}),R=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),fe=e.Record({reward_rate_transition_duration:e.Opt(R),initial_reward_rate:e.Opt(y),final_reward_rate:e.Opt(y)}),Re=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(y),neuron_maximum_age_for_age_bonus:e.Opt(R),neuron_maximum_dissolve_delay:e.Opt(R),neuron_minimum_dissolve_delay_to_vote:e.Opt(R),neuron_maximum_age_bonus:e.Opt(y),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(R),proposal_initial_voting_period:e.Opt(R),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(fe)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),ge=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),ve=e.Record({id:e.Opt(e.Principal)}),we=e.Record({dissolve_delay_interval:e.Opt(R),count:e.Opt(e.Nat64)}),ye=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),be=e.Record({iso_codes:e.Vec(e.Text)}),he=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(R),neuron_basket_construction_parameters:e.Opt(we),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(ye),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(be)}),I=e.Record({total:e.Opt(m)}),Se=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(R),memo:e.Opt(e.Nat64),vesting_period:e.Opt(R),stake:e.Opt(m)}),ke=e.Record({developer_neurons:e.Vec(Se)}),xe=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(ke),swap_distribution:e.Opt(I)}),s=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(Re),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ge),description:e.Opt(e.Text),dapp_canisters:e.Vec(ve),swap_parameters:e.Opt(he),initial_token_distribution:e.Opt(xe)}),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)}),Ve=e.Record({dissolve_delay_seconds:e.Nat64}),tt=e.Record({to_account:e.Opt(h)}),ot=e.Variant({RewardToNeuron:Ve,RewardToAccount:tt}),B=e.Record({node_provider:e.Opt(w),reward_mode:e.Opt(ot),amount_e8s:e.Nat64}),nt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),rt=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(nt),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)}),st=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(rt)}),at=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),it=e.Record({open_time_window:e.Opt(at)}),ct=e.Record({request:e.Opt(it),swap_canister_id:e.Opt(e.Principal)}),_t=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(B)}),G=e.Record({human_readable:e.Opt(e.Text)}),dt=e.Record({contribution_threshold_xdr:e.Opt(G),one_third_participation_milestone_xdr:e.Opt(G),full_participation_milestone_xdr:e.Opt(G)}),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(G),minimum_icp_xdr_rate:e.Opt(y)}),U=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)}),te=e.Record({principals:e.Vec(e.Principal)}),ut=e.Variant({ToRemove:w,ToAdd:w}),Fe=e.Record({change:e.Opt(ut)}),Ae=e.Record({motion_text:e.Text}),lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:S,UpdateCanisterSettings:Q,InstallCode:Oe,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:B,OpenSnsTokenSwap:st,SetSnsTokenSwapOpenTimeWindow:ct,SetDefaultFollowees:_t,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:te,AddOrRemoveNodeProvider:Fe,Motion:Ae});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)}),qe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),K=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(B),xdr_conversion_rate:e.Opt(qe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ee=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))}),Be=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(Ee),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(Ee),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}),Ge=e.Record({groups:e.Vec(Nt),timestamp_seconds:e.Opt(e.Nat64)}),Ue=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)}),Ke=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}),We=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(We),copy_inactive_neurons_to_stable_memory_migration:e.Opt(We)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),He=e.Record({vote:e.Int32,voting_power:e.Nat64}),vt=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)}),wt=e.Record({controller: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)}),oe=e.Record({neurons_fund_neuron_portions:e.Vec(wt)}),yt=e.Record({serialized_representation:e.Opt(e.Text)}),W=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(vt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(oe),ideal_matched_participation_function:e.Opt(yt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),bt=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(oe)}),ht=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(ht),canister_id:e.Opt(e.Principal)}),St=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(St)}),ze=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),kt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),xt=e.Record({id:e.Opt(n),failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(bt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(je),latest_tally:e.Opt(ze),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(kt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Vt=e.Variant({Spawn:n,Split:_,Configure:M,Merge:F,DisburseToNeuron:A,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:v,MergeMaturity:q,Disburse:C}),Pt=e.Record({command:e.Opt(Vt),timestamp:e.Nat64}),Xe=e.Record({vote:e.Int32,proposal_id:e.Opt(n)}),Tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),P=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Xe),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(Tt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(Ke),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Do=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(K),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Be),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(U),restore_aging_summary:e.Opt(Ge),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Ue),to_claim_transfers:e.Vec(Ke),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,xt)),xdr_conversion_rate:e.Opt(qe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Pt)),neurons:e.Vec(e.Tuple(e.Nat64,P)),genesis_timestamp_seconds:e.Nat64}),H=e.Variant({Ok:e.Null,Err:O}),Ct=e.Variant({Error:O,NeuronId:n}),Mt=e.Record({result:e.Opt(Ct)}),Je=e.Variant({Ok:P,Err:O}),Ft=e.Variant({Ok:Be,Err:O}),At=e.Variant({Ok:K,Err:O}),j=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Xe),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}),$e=e.Variant({Ok:j,Err:O}),qt=e.Record({nns_proposal_id:e.Opt(n)}),Et=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(oe)}),Bt=e.Record({neurons_fund_audit_info:e.Opt(Et)}),Gt=e.Variant({Ok:Bt,Err:O}),Ut=e.Record({result:e.Opt(Gt)}),Kt=e.Variant({Ok:w,Err:O}),ne=e.Record({id:e.Opt(n),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),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(ze),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),Wt=e.Record({known_neurons:e.Vec(c)}),Ht=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}),jt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,j)),full_neurons:e.Vec(P)}),zt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),Xt=e.Record({date_filter:e.Opt(zt)}),Jt=e.Record({rewards:e.Vec(K)}),$t=e.Record({node_providers:e.Vec(w)}),Qt=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)}),Yt=e.Record({proposal_info:e.Vec(ne)}),Zt=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)}),It=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:Zt,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:B,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:te,AddOrRemoveNodeProvider:Fe,Motion:Ae}),Dt=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(It),summary:e.Text}),Lt=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:Dt,StakeMaturity:$,MergeMaturity:q,Disburse:C});t.fill(e.Record({id:e.Opt(n),command:e.Opt(Lt),neuron_id_or_subaccount:e.Opt(V)}));let re=e.Record({created_neuron_id:e.Opt(n)}),eo=e.Record({refreshed_neuron_id:e.Opt(n)}),to=e.Record({target_neuron:e.Opt(P),source_neuron:e.Opt(P),target_neuron_info:e.Opt(j),source_neuron_info:e.Opt(j)}),oo=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(n)}),no=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ro=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),so=e.Record({transfer_block_height:e.Nat64}),ao=e.Variant({Error:O,Spawn:re,Split:re,Follow:e.Record({}),ClaimOrRefresh:eo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:to,DisburseToNeuron:re,MakeProposal:oo,StakeMaturity:no,MergeMaturity:ro,Disburse:so}),Qe=e.Record({command:e.Opt(ao)}),io=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)}),co=e.Variant({Committed:io,Aborted:e.Record({})}),_o=e.Record({result:e.Opt(co),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),po=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)}),uo=e.Variant({Committed:po,Aborted:e.Record({})}),lo=e.Record({result:e.Opt(uo),nns_proposal_id:e.Opt(e.Nat64)}),mo=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(te),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),No=e.Record({neurons_fund_neuron_portions:e.Vec(mo)}),Oo=e.Variant({Ok:No,Err:O}),fo=e.Record({result:e.Opt(Oo)}),Ro=e.Record({reward_account:e.Opt(h)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[H],[]),claim_or_refresh_neuron_from_account:e.Func([f],[Mt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Je],[]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Je],[]),get_latest_reward_event:e.Func([],[Ue],[]),get_metrics:e.Func([],[Ft],[]),get_monthly_node_provider_rewards:e.Func([],[At],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(K)],[]),get_network_economics_parameters:e.Func([],[U],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[$e],[]),get_neuron_info_by_id_or_subaccount:e.Func([V],[$e],[]),get_neurons_fund_audit_info:e.Func([qt],[Ut],[]),get_node_provider_by_caller:e.Func([e.Null],[Kt],[]),get_pending_proposals:e.Func([],[e.Vec(ne)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(ne)],[]),get_restore_aging_summary:e.Func([],[Ge],[]),list_known_neurons:e.Func([],[Wt],[]),list_neurons:e.Func([Ht],[jt],[]),list_node_provider_rewards:e.Func([Xt],[Jt],[]),list_node_providers:e.Func([],[$t],[]),list_proposals:e.Func([Qt],[Yt],[]),manage_neuron:e.Func([t],[Qe],[]),settle_community_fund_participation:e.Func([_o],[H],[]),settle_neurons_fund_participation:e.Func([lo],[fo],[]),simulate_manage_neuron:e.Func([t],[Qe],[]),transfer_gtc_neuron:e.Func([n,n],[H],[]),update_neuron:e.Func([P],[e.Opt(O)],[]),update_node_provider:e.Func([Ro],[H],[])})};var Eo=class e{constructor(t,o){this.canisterId=t;this.certifiedService=o;this.canisterId=t,this.certifiedService=o}static create(t={}){let o=t.canisterId??bo,{certifiedService:n}=(0,Bo.createServices)({options:{...t,canisterId:o},idlFactory:Vo,certifiedIdlFactory:pr});return new e(o,n)}async updateNeuron(t){(0,Bo.assertNonNullish)(t.id);let o=Co({neuronIds:[t.id]}),r=(await this.certifiedService.list_neurons(o)).full_neurons[0];if((0,ur.principalToAccountIdentifier)(this.canisterId,Uint8Array.from(r.account))!==t.accountIdentifier)throw new Error("Neuron account identifier can't be changed");let c=or({neuron:t,account:Uint8Array.from(r.account)});return this.certifiedService.update_neuron(c)}};var Nr=require("@dfinity/utils");var lr=({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}),E=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(E)}),_e=e.Record({airdrop_neurons:e.Vec(E)}),de=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),pe=e.Record({treasury_distribution:e.Opt(x),developer_distribution:e.Opt(X),airdrop_distribution:e.Opt(_e),swap_distribution:e.Opt(de)}),p=e.Variant({FractionalDeveloperVotingPower:pe}),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)}),ue=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)}),le=e.Variant({Error:r,DeployedSns:C}),V=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(le)}),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)}),me=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(S)}),Ne=e.Record({next_version:e.Opt(S)}),Q=e.Record({hash:e.Vec(e.Nat8)}),Oe=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)}),R=e.Record({wasm:e.Opt(o)}),m=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),fe=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),Re=e.Record({sections:e.Vec(fe)}),Z=e.Variant({Ok:Re,Error:r}),ge=e.Record({result:e.Opt(Z)}),ve=e.Record({next_version:e.Opt(S),current_version:e.Opt(S)}),we=e.Record({upgrade_path:e.Vec(ve),sns_governance_canister_id:e.Opt(e.Principal)}),ye=e.Record({error:e.Opt(r)}),be=e.Record({instances:e.Vec(C)}),he=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}),Se=e.Record({pretty_version:e.Opt(I),version:e.Opt(S)}),ke=e.Record({steps:e.Vec(Se)}),xe=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)}),Ve=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([ue],[V],[]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],[]),get_next_sns_version:e.Func([me],[Ne],[]),get_proposal_id_that_added_wasm:e.Func([Q],[Oe],[]),get_sns_subnet_ids:e.Func([e.Record({})],[Y],[]),get_wasm:e.Func([y],[R],[]),get_wasm_metadata:e.Func([m],[ge],[]),insert_upgrade_path_entries:e.Func([we],[ye],[]),list_deployed_snses:e.Func([e.Record({})],[be],[]),list_upgrade_steps:e.Func([he],[ke],[]),update_allowed_principals:e.Func([xe],[D],[]),update_sns_subnet_list:e.Func([w],[Ve],[])})};var mr=({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}),E=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(E)}),_e=e.Record({airdrop_neurons:e.Vec(E)}),de=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),pe=e.Record({treasury_distribution:e.Opt(x),developer_distribution:e.Opt(X),airdrop_distribution:e.Opt(_e),swap_distribution:e.Opt(de)}),p=e.Variant({FractionalDeveloperVotingPower:pe}),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)}),ue=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)}),le=e.Variant({Error:r,DeployedSns:C}),V=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(le)}),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)}),me=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(S)}),Ne=e.Record({next_version:e.Opt(S)}),Q=e.Record({hash:e.Vec(e.Nat8)}),Oe=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)}),R=e.Record({wasm:e.Opt(o)}),m=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),fe=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),Re=e.Record({sections:e.Vec(fe)}),Z=e.Variant({Ok:Re,Error:r}),ge=e.Record({result:e.Opt(Z)}),ve=e.Record({next_version:e.Opt(S),current_version:e.Opt(S)}),we=e.Record({upgrade_path:e.Vec(ve),sns_governance_canister_id:e.Opt(e.Principal)}),ye=e.Record({error:e.Opt(r)}),be=e.Record({instances:e.Vec(C)}),he=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}),Se=e.Record({pretty_version:e.Opt(I),version:e.Opt(S)}),ke=e.Record({steps:e.Vec(Se)}),xe=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)}),Ve=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([ue],[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([me],[Ne],["query"]),get_proposal_id_that_added_wasm:e.Func([Q],[Oe],["query"]),get_sns_subnet_ids:e.Func([e.Record({})],[Y],["query"]),get_wasm:e.Func([y],[R],["query"]),get_wasm_metadata:e.Func([m],[ge],["query"]),insert_upgrade_path_entries:e.Func([we],[ye],[]),list_deployed_snses:e.Func([e.Record({})],[be],["query"]),list_upgrade_steps:e.Func([he],[ke],["query"]),update_allowed_principals:e.Func([xe],[D],[]),update_sns_subnet_list:e.Func([w],[Ve],[])})};var Go=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,Nr.createServices)({options:{...t,canisterId:t.canisterId??mn},idlFactory:mr,certifiedIdlFactory:lr});return new e(o,n)}};var Or=({proposal:{ballots:e},neuron:{neuronId:t}})=>{var o;return(o=e.find(({neuronId:n})=>n===t))==null?void 0:o.vote},fr=({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})},ys=({neurons:e,proposal:t})=>e.filter(o=>Or({proposal:t,neuron:o})===0&&fr({neurons:e,proposal:t}).find(({neuronId:n})=>n===o.neuronId)===void 0),bs=({neurons:e,proposal:t})=>e.filter(o=>Or({proposal:t,neuron:o})!==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});
1
+ "use strict";var gr=Object.create;var bo=Object.defineProperty;var vr=Object.getOwnPropertyDescriptor;var wr=Object.getOwnPropertyNames;var yr=Object.getPrototypeOf,br=Object.prototype.hasOwnProperty;var hr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Sr=(e,t)=>{for(var o in t)bo(e,o,{get:t[o],enumerable:!0})},en=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of wr(t))!br.call(e,r)&&r!==o&&bo(e,r,{get:()=>t[r],enumerable:!(n=vr(t,r))||n.enumerable});return e};var kr=(e,t,o)=>(o=e!=null?gr(yr(e)):{},en(t||!e||!e.__esModule?bo(o,"default",{value:e,enumerable:!0}):o,e)),xr=e=>en(bo({},"__esModule",{value:!0}),e);var bn=hr((Qs,yn)=>{yn.exports=require("crypto").randomBytes});var Ss={};Sr(Ss,{CanisterAction:()=>_n,CanisterInstallMode:()=>pn,CouldNotClaimNeuronError:()=>Le,GenesisTokenCanister:()=>So,GovernanceCanister:()=>Eo,GovernanceError:()=>Te,GovernanceTestCanister:()=>Bo,InsufficientAmountError:()=>et,LogVisibility:()=>cn,NeuronState:()=>tn,NeuronType:()=>an,NeuronVisibility:()=>dn,NnsFunction:()=>sn,ProposalRewardStatus:()=>nn,ProposalStatus:()=>rn,SnsWasmCanister:()=>Uo,StakeNeuronError:()=>vo,Topic:()=>on,UnrecognizedTypeError:()=>Pe,UnsupportedValueError:()=>k,Vote:()=>Ko,ineligibleNeurons:()=>Rr,votableNeurons:()=>bs,votedNeurons:()=>hs});module.exports=xr(Ss);var tn=(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))(tn||{}),on=(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))(on||{}),nn=(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))(nn||{}),rn=(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))(rn||{}),Ko=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(Ko||{}),sn=(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.DeployGuestosToAllSubnetNodes=11]="DeployGuestosToAllSubnetNodes",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.ReviseElectedGuestosVersions=38]="ReviseElectedGuestosVersions",a[a.BitcoinSetConfig=39]="BitcoinSetConfig",a[a.UpdateElectedHostosVersions=40]="UpdateElectedHostosVersions",a[a.UpdateNodesHostosVersion=41]="UpdateNodesHostosVersion",a[a.HardResetNnsRootToVersion=42]="HardResetNnsRootToVersion",a[a.AddApiBoundaryNodes=43]="AddApiBoundaryNodes",a[a.RemoveApiBoundaryNodes=44]="RemoveApiBoundaryNodes",a[a.UpdateApiBoundaryNodeDomain=45]="UpdateApiBoundaryNodeDomain",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))(sn||{}),an=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Seed=1]="Seed",n[n.Ect=2]="Ect",n))(an||{}),cn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Controllers=1]="Controllers",n[n.Public=2]="Public",n))(cn||{}),_n=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Stop=1]="Stop",n[n.Start=2]="Start",n))(_n||{}),dn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Private=1]="Private",n[n.Public=2]="Public",n))(dn||{}),pn=(r=>(r[r.Unspecified=0]="Unspecified",r[r.Install=1]="Install",r[r.Reinstall=2]="Reinstall",r[r.Upgrade=3]="Upgrade",r))(pn||{});var vo=class extends Error{},Le=class extends vo{},et=class extends vo{constructor(o){super();this.minimumAmount=o}},Pe=class extends Error{},Te=class extends Error{constructor(o){super();this.detail=o}},k=class extends Error{constructor(t){super("Unsupported value: "+t)}};var On=require("@dfinity/utils");var un=({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 ln=({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 wo=require("@dfinity/principal"),Cs=wo.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),ho=wo.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),mn=wo.Principal.fromText("renrk-eyaaa-aaaaa-aaada-cai"),Nn=wo.Principal.fromText("r7inp-6aaaa-aaaaa-aaabq-cai");var So=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,On.createServices)({options:{...t,canisterId:t.canisterId??mn},idlFactory:ln,certifiedIdlFactory:un});return new e(o)}};var pr=require("@dfinity/agent"),Ce=require("@dfinity/ledger-icp"),u=require("@dfinity/utils");function Vr(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Wo(e,...t){if(!Vr(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 fn(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 xo=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),ie=(e,t)=>e<<32-t|e>>>t;var Us=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 ko=class{clone(){return this._cloneInto()}},Ks={}.toString;function Rn(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 Tr(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 gn=(e,t,o)=>e&t^~e&o,vn=(e,t,o)=>e&t^e&o^t&o,Vo=class extends ko{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=xo(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 _=xo(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),fn(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;Tr(n,r-8,BigInt(this.length*8),i),this.process(n,0);let d=xo(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 Cr=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]),Ye=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ze=new Uint32Array(64),zo=class extends Vo{constructor(){super(64,32,8,!1),this.A=Ye[0]|0,this.B=Ye[1]|0,this.C=Ye[2]|0,this.D=Ye[3]|0,this.E=Ye[4]|0,this.F=Ye[5]|0,this.G=Ye[6]|0,this.H=Ye[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)Ze[l]=t.getUint32(o,!1);for(let l=16;l<64;l++){let w=Ze[l-15],x=Ze[l-2],E=ie(w,7)^ie(w,18)^w>>>3,X=ie(x,17)^ie(x,19)^x>>>10;Ze[l]=X+Ze[l-7]+E+Ze[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 w=ie(d,6)^ie(d,11)^ie(d,25),x=f+w+gn(d,_,N)+Cr[l]+Ze[l]|0,X=(ie(n,2)^ie(n,13)^ie(n,22))+vn(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(){Ze.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var wn=Rn(()=>new zo);var Do=kr(bn());var hn=({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}),w=e.Record({by:e.Opt(l)}),x=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),E=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),pe=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ue=e.Record({visibility:e.Opt(e.Int32)}),le=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:E,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:pe,SetVisibility:ue,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:le}),M=e.Record({operation:e.Opt(p)}),v=e.Record({id:e.Nat64}),J=e.Record({vote:e.Int32,proposal:e.Opt(v)}),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)}),C=e.Record({percentage_to_merge:e.Nat32}),V=e.Record({hash:e.Vec(e.Nat8)}),oe=e.Record({e8s:e.Nat64}),q=e.Record({to_account:e.Opt(V),amount:e.Opt(oe)}),me=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:w,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:o,StakeMaturity:$,MergeMaturity:C,Disburse:q}),y=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),Ne=e.Record({id:e.Opt(n),command:e.Opt(me),neuron_id_or_subaccount:e.Opt(y)}),Oe=e.Record({controllers:e.Vec(e.Principal)}),fe=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(Oe),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(fe)}),Re=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)}),h=e.Record({basis_points:e.Opt(e.Nat64)}),R=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),ge=e.Record({reward_rate_transition_duration:e.Opt(R),initial_reward_rate:e.Opt(h),final_reward_rate:e.Opt(h)}),ve=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(h),neuron_maximum_age_for_age_bonus:e.Opt(R),neuron_maximum_dissolve_delay:e.Opt(R),neuron_minimum_dissolve_delay_to_vote:e.Opt(R),neuron_maximum_age_bonus:e.Opt(h),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(R),proposal_initial_voting_period:e.Opt(R),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(ge)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),we=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),ye=e.Record({id:e.Opt(e.Principal)}),be=e.Record({dissolve_delay_interval:e.Opt(R),count:e.Opt(e.Nat64)}),he=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),Se=e.Record({iso_codes:e.Vec(e.Text)}),ke=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(R),neuron_basket_construction_parameters:e.Opt(be),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(he),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(Se)}),I=e.Record({total:e.Opt(m)}),xe=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(R),memo:e.Opt(e.Nat64),vesting_period:e.Opt(R),stake:e.Opt(m)}),Ve=e.Record({developer_neurons:e.Vec(xe)}),a=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(Ve),swap_distribution:e.Opt(I)}),D=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(ve),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(we),description:e.Opt(e.Text),dapp_canisters:e.Vec(ye),swap_parameters:e.Opt(ke),initial_token_distribution:e.Opt(a)}),L=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),b=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(V)}),tt=e.Record({dissolve_delay_seconds:e.Nat64}),ot=e.Record({to_account:e.Opt(V)}),nt=e.Variant({RewardToNeuron:tt,RewardToAccount:ot}),B=e.Record({node_provider:e.Opt(b),reward_mode:e.Opt(nt),amount_e8s:e.Nat64}),rt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),st=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(rt),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)}),at=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(st)}),it=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),ct=e.Record({open_time_window:e.Opt(it)}),_t=e.Record({request:e.Opt(ct),swap_canister_id:e.Opt(e.Principal)}),dt=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(B)}),G=e.Record({human_readable:e.Opt(e.Text)}),pt=e.Record({contribution_threshold_xdr:e.Opt(G),one_third_participation_milestone_xdr:e.Opt(G),full_participation_milestone_xdr:e.Opt(G)}),ut=e.Record({maximum_icp_xdr_rate:e.Opt(h),neurons_fund_matched_funding_curve_coefficients:e.Opt(pt),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(G),minimum_icp_xdr_rate:e.Opt(h)}),U=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(ut)}),ne=e.Record({principals:e.Vec(e.Principal)}),lt=e.Variant({ToRemove:b,ToAdd:b}),Fe=e.Record({change:e.Opt(lt)}),Ae=e.Record({motion_text:e.Text}),mt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:Ne,UpdateCanisterSettings:Q,InstallCode:Re,StopOrStartCanister:Y,CreateServiceNervousSystem:D,ExecuteNnsFunction:L,RewardNodeProvider:B,OpenSnsTokenSwap:at,SetSnsTokenSwapOpenTimeWindow:_t,SetDefaultFollowees:dt,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:ne,AddOrRemoveNodeProvider:Fe,Motion:Ae});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(mt),summary:e.Text}));let Nt=e.Record({proposal:e.Opt(o),caller:e.Opt(e.Principal),proposer_id:e.Opt(n)}),qe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),K=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(b),timestamp:e.Nat64,rewards:e.Vec(B),xdr_conversion_rate:e.Opt(qe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ee=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))}),Be=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(Ee),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(Ee),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),Ot=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}),Ge=e.Record({groups:e.Vec(Ot),timestamp_seconds:e.Opt(e.Nat64)}),Ue=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(v)}),Ke=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}),ft=e.Record({followers:e.Vec(n)}),Rt=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,ft))}),gt=e.Variant({LastNeuronId:n}),We=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(gt)}),vt=e.Record({neuron_indexes_migration:e.Opt(We),copy_inactive_neurons_to_stable_memory_migration:e.Opt(We)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),He=e.Record({vote:e.Int32,voting_power:e.Nat64}),wt=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)}),yt=e.Record({controller: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)}),re=e.Record({neurons_fund_neuron_portions:e.Vec(yt)}),bt=e.Record({serialized_representation:e.Opt(e.Text)}),W=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(wt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(re),ideal_matched_participation_function:e.Opt(bt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),ht=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(re)}),St=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)}),S=e.Record({status:e.Opt(St),canister_id:e.Opt(e.Principal)}),kt=e.Record({ledger_index_canister_summary:e.Opt(S),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(S),ledger_canister_summary:e.Opt(S),swap_canister_summary:e.Opt(S),governance_canister_summary:e.Opt(S),root_canister_summary:e.Opt(S),dapp_canister_summaries:e.Vec(S)}),je=e.Record({swap_background_information:e.Opt(kt)}),ze=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),xt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Vt=e.Record({id:e.Opt(v),failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(ht),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(je),latest_tally:e.Opt(ze),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(xt),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:w,MergeMaturity:C,Disburse:q}),Tt=e.Record({command:e.Opt(Pt),timestamp:e.Nat64}),Xe=e.Record({vote:e.Int32,proposal_id:e.Opt(v)}),Ct=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),P=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Xe),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(Ct),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(Ke),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Lo=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),making_sns_proposal:e.Opt(Nt),most_recent_monthly_node_provider_rewards:e.Opt(K),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Be),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(b),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(U),restore_aging_summary:e.Opt(Ge),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Ue),to_claim_transfers:e.Vec(Ke),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,Rt)),migrations:e.Opt(vt),proposals:e.Vec(e.Tuple(e.Nat64,Vt)),xdr_conversion_rate:e.Opt(qe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Tt)),neurons:e.Vec(e.Tuple(e.Nat64,P)),genesis_timestamp_seconds:e.Nat64}),H=e.Variant({Ok:e.Null,Err:O}),Mt=e.Variant({Error:O,NeuronId:n}),Ft=e.Record({result:e.Opt(Mt)}),Je=e.Variant({Ok:P,Err:O}),At=e.Variant({Ok:Be,Err:O}),qt=e.Variant({Ok:K,Err:O}),j=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Xe),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}),$e=e.Variant({Ok:j,Err:O}),Et=e.Record({nns_proposal_id:e.Opt(v)}),Bt=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(re)}),Gt=e.Record({neurons_fund_audit_info:e.Opt(Bt)}),Ut=e.Variant({Ok:Gt,Err:O}),Kt=e.Record({result:e.Opt(Ut)}),Wt=e.Variant({Ok:b,Err:O}),se=e.Record({id:e.Opt(v),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),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(ze),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),Ht=e.Record({known_neurons:e.Vec(c)}),jt=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}),zt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,j)),full_neurons:e.Vec(P)}),Xt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),Jt=e.Record({date_filter:e.Opt(Xt)}),$t=e.Record({rewards:e.Vec(K)}),Qt=e.Record({node_providers:e.Vec(b)}),Yt=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(v),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),Zt=e.Record({proposal_info:e.Vec(se)}),It=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)}),Dt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:It,StopOrStartCanister:Y,CreateServiceNervousSystem:D,ExecuteNnsFunction:L,RewardNodeProvider:B,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:ne,AddOrRemoveNodeProvider:Fe,Motion:Ae}),Lt=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Dt),summary:e.Text}),eo=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:w,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:Lt,StakeMaturity:$,MergeMaturity:C,Disburse:q});t.fill(e.Record({id:e.Opt(n),command:e.Opt(eo),neuron_id_or_subaccount:e.Opt(y)}));let ae=e.Record({created_neuron_id:e.Opt(n)}),to=e.Record({refreshed_neuron_id:e.Opt(n)}),oo=e.Record({target_neuron:e.Opt(P),source_neuron:e.Opt(P),target_neuron_info:e.Opt(j),source_neuron_info:e.Opt(j)}),no=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(v)}),ro=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),so=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ao=e.Record({transfer_block_height:e.Nat64}),io=e.Variant({Error:O,Spawn:ae,Split:ae,Follow:e.Record({}),ClaimOrRefresh:to,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:oo,DisburseToNeuron:ae,MakeProposal:no,StakeMaturity:ro,MergeMaturity:so,Disburse:ao}),Qe=e.Record({command:e.Opt(io)}),co=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)}),_o=e.Variant({Committed:co,Aborted:e.Record({})}),po=e.Record({result:e.Opt(_o),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),uo=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)}),lo=e.Variant({Committed:uo,Aborted:e.Record({})}),mo=e.Record({result:e.Opt(lo),nns_proposal_id:e.Opt(e.Nat64)}),No=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(ne),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(No)}),fo=e.Variant({Ok:Oo,Err:O}),Ro=e.Record({result:e.Opt(fo)}),go=e.Record({reward_account:e.Opt(V)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[H],[]),claim_or_refresh_neuron_from_account:e.Func([f],[Ft],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Je],[]),get_full_neuron_by_id_or_subaccount:e.Func([y],[Je],[]),get_latest_reward_event:e.Func([],[Ue],[]),get_metrics:e.Func([],[At],[]),get_monthly_node_provider_rewards:e.Func([],[qt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(K)],[]),get_network_economics_parameters:e.Func([],[U],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[$e],[]),get_neuron_info_by_id_or_subaccount:e.Func([y],[$e],[]),get_neurons_fund_audit_info:e.Func([Et],[Kt],[]),get_node_provider_by_caller:e.Func([e.Null],[Wt],[]),get_pending_proposals:e.Func([],[e.Vec(se)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(se)],[]),get_restore_aging_summary:e.Func([],[Ge],[]),list_known_neurons:e.Func([],[Ht],[]),list_neurons:e.Func([jt],[zt],[]),list_node_provider_rewards:e.Func([Jt],[$t],[]),list_node_providers:e.Func([],[Qt],[]),list_proposals:e.Func([Yt],[Zt],[]),manage_neuron:e.Func([t],[Qe],[]),settle_community_fund_participation:e.Func([po],[H],[]),settle_neurons_fund_participation:e.Func([mo],[Ro],[]),simulate_manage_neuron:e.Func([t],[Qe],[]),transfer_gtc_neuron:e.Func([n,n],[H],[]),update_node_provider:e.Func([go],[H],[])})};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}),w=e.Record({by:e.Opt(l)}),x=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),E=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),pe=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ue=e.Record({visibility:e.Opt(e.Int32)}),le=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:E,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:pe,SetVisibility:ue,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:le}),M=e.Record({operation:e.Opt(p)}),v=e.Record({id:e.Nat64}),J=e.Record({vote:e.Int32,proposal:e.Opt(v)}),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)}),C=e.Record({percentage_to_merge:e.Nat32}),V=e.Record({hash:e.Vec(e.Nat8)}),oe=e.Record({e8s:e.Nat64}),q=e.Record({to_account:e.Opt(V),amount:e.Opt(oe)}),me=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:w,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:o,StakeMaturity:$,MergeMaturity:C,Disburse:q}),y=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),Ne=e.Record({id:e.Opt(n),command:e.Opt(me),neuron_id_or_subaccount:e.Opt(y)}),Oe=e.Record({controllers:e.Vec(e.Principal)}),fe=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(Oe),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(fe)}),Re=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)}),h=e.Record({basis_points:e.Opt(e.Nat64)}),R=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),ge=e.Record({reward_rate_transition_duration:e.Opt(R),initial_reward_rate:e.Opt(h),final_reward_rate:e.Opt(h)}),ve=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(h),neuron_maximum_age_for_age_bonus:e.Opt(R),neuron_maximum_dissolve_delay:e.Opt(R),neuron_minimum_dissolve_delay_to_vote:e.Opt(R),neuron_maximum_age_bonus:e.Opt(h),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(R),proposal_initial_voting_period:e.Opt(R),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(ge)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),we=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),ye=e.Record({id:e.Opt(e.Principal)}),be=e.Record({dissolve_delay_interval:e.Opt(R),count:e.Opt(e.Nat64)}),he=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),Se=e.Record({iso_codes:e.Vec(e.Text)}),ke=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(R),neuron_basket_construction_parameters:e.Opt(be),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(he),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(Se)}),I=e.Record({total:e.Opt(m)}),xe=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(R),memo:e.Opt(e.Nat64),vesting_period:e.Opt(R),stake:e.Opt(m)}),Ve=e.Record({developer_neurons:e.Vec(xe)}),a=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(Ve),swap_distribution:e.Opt(I)}),D=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(ve),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(we),description:e.Opt(e.Text),dapp_canisters:e.Vec(ye),swap_parameters:e.Opt(ke),initial_token_distribution:e.Opt(a)}),L=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),b=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(V)}),tt=e.Record({dissolve_delay_seconds:e.Nat64}),ot=e.Record({to_account:e.Opt(V)}),nt=e.Variant({RewardToNeuron:tt,RewardToAccount:ot}),B=e.Record({node_provider:e.Opt(b),reward_mode:e.Opt(nt),amount_e8s:e.Nat64}),rt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),st=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(rt),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)}),at=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(st)}),it=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),ct=e.Record({open_time_window:e.Opt(it)}),_t=e.Record({request:e.Opt(ct),swap_canister_id:e.Opt(e.Principal)}),dt=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(B)}),G=e.Record({human_readable:e.Opt(e.Text)}),pt=e.Record({contribution_threshold_xdr:e.Opt(G),one_third_participation_milestone_xdr:e.Opt(G),full_participation_milestone_xdr:e.Opt(G)}),ut=e.Record({maximum_icp_xdr_rate:e.Opt(h),neurons_fund_matched_funding_curve_coefficients:e.Opt(pt),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(G),minimum_icp_xdr_rate:e.Opt(h)}),U=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(ut)}),ne=e.Record({principals:e.Vec(e.Principal)}),lt=e.Variant({ToRemove:b,ToAdd:b}),Fe=e.Record({change:e.Opt(lt)}),Ae=e.Record({motion_text:e.Text}),mt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:Ne,UpdateCanisterSettings:Q,InstallCode:Re,StopOrStartCanister:Y,CreateServiceNervousSystem:D,ExecuteNnsFunction:L,RewardNodeProvider:B,OpenSnsTokenSwap:at,SetSnsTokenSwapOpenTimeWindow:_t,SetDefaultFollowees:dt,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:ne,AddOrRemoveNodeProvider:Fe,Motion:Ae});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(mt),summary:e.Text}));let Nt=e.Record({proposal:e.Opt(o),caller:e.Opt(e.Principal),proposer_id:e.Opt(n)}),qe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),K=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(b),timestamp:e.Nat64,rewards:e.Vec(B),xdr_conversion_rate:e.Opt(qe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ee=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))}),Be=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(Ee),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(Ee),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),Ot=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}),Ge=e.Record({groups:e.Vec(Ot),timestamp_seconds:e.Opt(e.Nat64)}),Ue=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(v)}),Ke=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}),ft=e.Record({followers:e.Vec(n)}),Rt=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,ft))}),gt=e.Variant({LastNeuronId:n}),We=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(gt)}),vt=e.Record({neuron_indexes_migration:e.Opt(We),copy_inactive_neurons_to_stable_memory_migration:e.Opt(We)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),He=e.Record({vote:e.Int32,voting_power:e.Nat64}),wt=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)}),yt=e.Record({controller: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)}),re=e.Record({neurons_fund_neuron_portions:e.Vec(yt)}),bt=e.Record({serialized_representation:e.Opt(e.Text)}),W=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(wt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(re),ideal_matched_participation_function:e.Opt(bt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),ht=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(re)}),St=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)}),S=e.Record({status:e.Opt(St),canister_id:e.Opt(e.Principal)}),kt=e.Record({ledger_index_canister_summary:e.Opt(S),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(S),ledger_canister_summary:e.Opt(S),swap_canister_summary:e.Opt(S),governance_canister_summary:e.Opt(S),root_canister_summary:e.Opt(S),dapp_canister_summaries:e.Vec(S)}),je=e.Record({swap_background_information:e.Opt(kt)}),ze=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),xt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Vt=e.Record({id:e.Opt(v),failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(ht),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(je),latest_tally:e.Opt(ze),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(xt),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:w,MergeMaturity:C,Disburse:q}),Tt=e.Record({command:e.Opt(Pt),timestamp:e.Nat64}),Xe=e.Record({vote:e.Int32,proposal_id:e.Opt(v)}),Ct=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),P=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Xe),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(Ct),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(Ke),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Lo=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),making_sns_proposal:e.Opt(Nt),most_recent_monthly_node_provider_rewards:e.Opt(K),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Be),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(b),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(U),restore_aging_summary:e.Opt(Ge),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Ue),to_claim_transfers:e.Vec(Ke),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,Rt)),migrations:e.Opt(vt),proposals:e.Vec(e.Tuple(e.Nat64,Vt)),xdr_conversion_rate:e.Opt(qe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Tt)),neurons:e.Vec(e.Tuple(e.Nat64,P)),genesis_timestamp_seconds:e.Nat64}),H=e.Variant({Ok:e.Null,Err:O}),Mt=e.Variant({Error:O,NeuronId:n}),Ft=e.Record({result:e.Opt(Mt)}),Je=e.Variant({Ok:P,Err:O}),At=e.Variant({Ok:Be,Err:O}),qt=e.Variant({Ok:K,Err:O}),j=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Xe),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}),$e=e.Variant({Ok:j,Err:O}),Et=e.Record({nns_proposal_id:e.Opt(v)}),Bt=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(re)}),Gt=e.Record({neurons_fund_audit_info:e.Opt(Bt)}),Ut=e.Variant({Ok:Gt,Err:O}),Kt=e.Record({result:e.Opt(Ut)}),Wt=e.Variant({Ok:b,Err:O}),se=e.Record({id:e.Opt(v),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),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(ze),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),Ht=e.Record({known_neurons:e.Vec(c)}),jt=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}),zt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,j)),full_neurons:e.Vec(P)}),Xt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),Jt=e.Record({date_filter:e.Opt(Xt)}),$t=e.Record({rewards:e.Vec(K)}),Qt=e.Record({node_providers:e.Vec(b)}),Yt=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(v),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),Zt=e.Record({proposal_info:e.Vec(se)}),It=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)}),Dt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:It,StopOrStartCanister:Y,CreateServiceNervousSystem:D,ExecuteNnsFunction:L,RewardNodeProvider:B,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:ne,AddOrRemoveNodeProvider:Fe,Motion:Ae}),Lt=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Dt),summary:e.Text}),eo=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:w,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:Lt,StakeMaturity:$,MergeMaturity:C,Disburse:q});t.fill(e.Record({id:e.Opt(n),command:e.Opt(eo),neuron_id_or_subaccount:e.Opt(y)}));let ae=e.Record({created_neuron_id:e.Opt(n)}),to=e.Record({refreshed_neuron_id:e.Opt(n)}),oo=e.Record({target_neuron:e.Opt(P),source_neuron:e.Opt(P),target_neuron_info:e.Opt(j),source_neuron_info:e.Opt(j)}),no=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(v)}),ro=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),so=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ao=e.Record({transfer_block_height:e.Nat64}),io=e.Variant({Error:O,Spawn:ae,Split:ae,Follow:e.Record({}),ClaimOrRefresh:to,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:oo,DisburseToNeuron:ae,MakeProposal:no,StakeMaturity:ro,MergeMaturity:so,Disburse:ao}),Qe=e.Record({command:e.Opt(io)}),co=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)}),_o=e.Variant({Committed:co,Aborted:e.Record({})}),po=e.Record({result:e.Opt(_o),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),uo=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)}),lo=e.Variant({Committed:uo,Aborted:e.Record({})}),mo=e.Record({result:e.Opt(lo),nns_proposal_id:e.Opt(e.Nat64)}),No=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(ne),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(No)}),fo=e.Variant({Ok:Oo,Err:O}),Ro=e.Record({result:e.Opt(fo)}),go=e.Record({reward_account:e.Opt(V)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[H],[]),claim_or_refresh_neuron_from_account:e.Func([f],[Ft],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_full_neuron:e.Func([e.Nat64],[Je],["query"]),get_full_neuron_by_id_or_subaccount:e.Func([y],[Je],["query"]),get_latest_reward_event:e.Func([],[Ue],["query"]),get_metrics:e.Func([],[At],["query"]),get_monthly_node_provider_rewards:e.Func([],[qt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(K)],["query"]),get_network_economics_parameters:e.Func([],[U],["query"]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],["query"]),get_neuron_info:e.Func([e.Nat64],[$e],["query"]),get_neuron_info_by_id_or_subaccount:e.Func([y],[$e],["query"]),get_neurons_fund_audit_info:e.Func([Et],[Kt],["query"]),get_node_provider_by_caller:e.Func([e.Null],[Wt],["query"]),get_pending_proposals:e.Func([],[e.Vec(se)],["query"]),get_proposal_info:e.Func([e.Nat64],[e.Opt(se)],["query"]),get_restore_aging_summary:e.Func([],[Ge],["query"]),list_known_neurons:e.Func([],[Ht],["query"]),list_neurons:e.Func([jt],[zt],["query"]),list_node_provider_rewards:e.Func([Jt],[$t],["query"]),list_node_providers:e.Func([],[Qt],["query"]),list_proposals:e.Func([Yt],[Zt],["query"]),manage_neuron:e.Func([t],[Qe],[]),settle_community_fund_participation:e.Func([po],[H],[]),settle_neurons_fund_participation:e.Func([mo],[Ro],[]),simulate_manage_neuron:e.Func([t],[Qe],[]),transfer_gtc_neuron:e.Func([n,n],[H],[]),update_node_provider:e.Func([go],[H],[])})};var Sn=({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,visibility:e.Opt(e.Int32),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,visibility:e.Opt(e.Int32),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 Vn=require("@dfinity/ledger-icp"),z=require("@dfinity/principal"),g=require("@dfinity/utils");var Pn=e=>({id:e}),Tn=e=>({id:e}),Mr=e=>{if("NeuronId"in e)return{NeuronId:{id:e.NeuronId}};if("Subaccount"in e)return{Subaccount:Uint8Array.from(e.Subaccount)};throw new k(e)},To=e=>e.basisPoints!==void 0?{basis_points:[e.basisPoints]}:{basis_points:[]},ce=e=>e.seconds!==void 0?{seconds:[e.seconds]}:{seconds:[]},Fr=e=>e.secondsAfterUtcMidnight!==void 0?{seconds_after_utc_midnight:[e.secondsAfterUtcMidnight]}:{seconds_after_utc_midnight:[]},Ar=e=>({iso_codes:e.isoCodes}),ee=e=>e.e8s!==void 0?{e8s:[e.e8s]}:{e8s:[]},Cn=e=>e.base64Encoding!==void 0?{base64_encoding:[e.base64Encoding]}:{base64_encoding:[]},qr=e=>({reward_rate_transition_duration:e.rewardRateTransitionDuration!==void 0?[ce(e.rewardRateTransitionDuration)]:[],initial_reward_rate:e.initialRewardRate!==void 0?[To(e.initialRewardRate)]:[],final_reward_rate:e.finalRewardRate!==void 0?[To(e.finalRewardRate)]:[]}),Er=e=>({transaction_fee:e.transactionFee!==void 0?[ee(e.transactionFee)]:[],token_symbol:e.tokenSymbol!==void 0?[e.tokenSymbol]:[],token_logo:e.tokenLogo!==void 0?[Cn(e.tokenLogo)]:[],token_name:e.tokenName!==void 0?[e.tokenName]:[]}),Br=e=>({minimum_participants:e.minimumParticipants!==void 0?[e.minimumParticipants]:[],duration:e.duration!==void 0?[ce(e.duration)]:[],neuron_basket_construction_parameters:e.neuronBasketConstructionParameters!==void 0?[Gr(e.neuronBasketConstructionParameters)]:[],confirmation_text:e.confirmationText!==void 0?[e.confirmationText]:[],maximum_participant_icp:e.maximumParticipantIcp!==void 0?[ee(e.maximumParticipantIcp)]:[],neurons_fund_investment_icp:e.neuronsFundInvestmentIcp!==void 0?[ee(e.neuronsFundInvestmentIcp)]:[],minimum_icp:e.minimumIcp!==void 0?[ee(e.minimumIcp)]:[],minimum_participant_icp:e.minimumParticipantIcp!==void 0?[ee(e.minimumParticipantIcp)]:[],start_time:e.startTime!==void 0?[Fr(e.startTime)]:[],maximum_icp:e.maximumIcp!==void 0?[ee(e.maximumIcp)]:[],restricted_countries:e.restrictedCountries!==void 0?[Ar(e.restrictedCountries)]:[],maximum_direct_participation_icp:e.maxDirectParticipationIcp!==void 0?[ee(e.maxDirectParticipationIcp)]:[],minimum_direct_participation_icp:e.minDirectParticipationIcp!==void 0?[ee(e.minDirectParticipationIcp)]:[],neurons_fund_participation:(0,g.toNullable)(e.neuronsFundParticipation)}),Gr=e=>({dissolve_delay_interval:e.dissolveDelayInterval!==void 0?[ce(e.dissolveDelayInterval)]:[],count:e.count!==void 0?[e.count]:[]}),Ur=e=>({neuron_maximum_dissolve_delay_bonus:e.neuronMaximumDissolveDelayBonus!==void 0?[To(e.neuronMaximumDissolveDelayBonus)]:[],neuron_maximum_age_for_age_bonus:e.neuronMaximumAgeForAgeBonus!==void 0?[ce(e.neuronMaximumAgeForAgeBonus)]:[],neuron_maximum_dissolve_delay:e.neuronMaximumDissolveDelay!==void 0?[ce(e.neuronMaximumDissolveDelay)]:[],neuron_minimum_dissolve_delay_to_vote:e.neuronMinimumDissolveDelayToVote!==void 0?[ce(e.neuronMinimumDissolveDelayToVote)]:[],neuron_maximum_age_bonus:e.neuronMaximumAgeBonus!==void 0?[To(e.neuronMaximumAgeBonus)]:[],neuron_minimum_stake:e.neuronMinimumStake!==void 0?[ee(e.neuronMinimumStake)]:[],proposal_wait_for_quiet_deadline_increase:e.proposalWaitForQuietDeadlineIncrease!==void 0?[ce(e.proposalWaitForQuietDeadlineIncrease)]:[],proposal_initial_voting_period:e.proposalInitialVotingPeriod!==void 0?[ce(e.proposalInitialVotingPeriod)]:[],proposal_rejection_fee:e.proposalRejectionFee!==void 0?[ee(e.proposalRejectionFee)]:[],voting_reward_parameters:e.votingRewardParameters!==void 0?[qr(e.votingRewardParameters)]:[]}),kn=e=>({total:e.total!==void 0?[ee(e.total)]:[]}),Kr=e=>({treasury_distribution:e.treasuryDistribution!==void 0?[kn(e.treasuryDistribution)]:[],developer_distribution:e.developerDistribution!==void 0?[Hr(e.developerDistribution)]:[],swap_distribution:e.swapDistribution!==void 0?[kn(e.swapDistribution)]:[]}),Wr=e=>({controller:e.controller!==void 0?[z.Principal.fromText(e.controller)]:[],dissolve_delay:e.dissolveDelay!==void 0?[ce(e.dissolveDelay)]:[],memo:e.memo!==void 0?[e.memo]:[],vesting_period:e.vestingPeriod!==void 0?[ce(e.vestingPeriod)]:[],stake:e.stake!==void 0?[ee(e.stake)]:[]}),Hr=e=>({developer_neurons:e.developerNeurons.map(Wr)}),jr=e=>({url:e.url!==void 0?[e.url]:[],governance_parameters:e.governanceParameters!==void 0?[Ur(e.governanceParameters)]:[],fallback_controller_principal_ids:e.fallbackControllerPrincipalIds.map(t=>z.Principal.fromText(t)),logo:e.logo!==void 0?[Cn(e.logo)]:[],name:e.name!==void 0?[e.name]:[],ledger_parameters:e.ledgerParameters!==void 0?[Er(e.ledgerParameters)]:[],description:e.description!==void 0?[e.description]:[],dapp_canisters:e.dappCanisters.map(t=>({id:[z.Principal.fromText(t)]})),swap_parameters:e.swapParameters!==void 0?[Br(e.swapParameters)]:[],initial_token_distribution:e.initialTokenDistribution!==void 0?[Kr(e.initialTokenDistribution)]:[]}),zr=e=>{if(e.wasmModule===void 0)throw new Error("wasmModule not found");return{arg:(0,g.toNullable)((0,g.arrayBufferToUint8Array)(e.arg??new ArrayBuffer(0))),wasm_module:(0,g.toNullable)((0,g.arrayBufferToUint8Array)(e.wasmModule)),skip_stopping_before_installing:(0,g.toNullable)(e.skipStoppingBeforeInstalling),canister_id:(0,g.toNullable)((0,g.nonNullish)(e.canisterId)?z.Principal.fromText(e.canisterId):void 0),install_mode:(0,g.toNullable)(e.installMode)}},Xr=e=>e===void 0?[]:[{freezing_threshold:(0,g.toNullable)(e.freezingThreshold),controllers:e.controllers?[{controllers:e.controllers.map(t=>z.Principal.fromText(t))}]:[],log_visibility:(0,g.toNullable)(e.logVisibility),wasm_memory_limit:(0,g.toNullable)(e.wasmMemoryLimit),compute_allocation:(0,g.toNullable)(e.computeAllocation),memory_allocation:(0,g.toNullable)(e.memoryAllocation)}],Mn=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,g.arrayBufferToUint8Array)(t.payloadBytes)}}}if("ManageNeuron"in e){let t=e.ManageNeuron;return{ManageNeuron:Ir(t)}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(z.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:Yr(t.neuronsFundEconomics)}}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{node_provider:t.nodeProvider?[Co(t.nodeProvider)]:[],amount_e8s:t.amountE8s,reward_mode:t.rewardMode!=null?[xn(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?[Co(o.nodeProvider)]:[],amount_e8s:o.amountE8s,reward_mode:o.rewardMode!=null?[xn(o.rewardMode)]:[]}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change?[Qr(t.change)]:[]}}}if("Motion"in e)return{Motion:{motion_text:e.Motion.motionText}};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("CreateServiceNervousSystem"in e)return{CreateServiceNervousSystem:jr(e.CreateServiceNervousSystem)};if("InstallCode"in e)return{InstallCode:zr(e.InstallCode)};if("StopOrStartCanister"in e){let t=e.StopOrStartCanister;return{StopOrStartCanister:{canister_id:t.canisterId?[z.Principal.fromText(t.canisterId)]:[],action:t.action?[t.action]:[]}}}if("UpdateCanisterSettings"in e){let t=e.UpdateCanisterSettings;return{UpdateCanisterSettings:{canister_id:t.canisterId?[z.Principal.fromText(t.canisterId)]:[],settings:Xr(t.settings)}}}throw new k(e)},Jr=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(Tn)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by?[Zr(t.by)]:[]}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation?[$r(t.operation)]:[]}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal?[Pn(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?[z.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,g.toNullable)(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{url:t.url,title:[],action:t.action?[Mn(t.action)]:[],summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{to_account:t.toAccountId?[Xo(t.toAccountId)]:[],amount:t.amount?[Fn(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?[z.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)},$r=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hot_key_to_remove:t.hotKeyToRemove!=null?[z.Principal.fromText(t.hotKeyToRemove)]:[]}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{new_hot_key:t.newHotKey?[z.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,g.toNullable)(t.visibility)}}}throw new k(e)},Qr=e=>{if("ToRemove"in e)return{ToRemove:Co(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Co(e.ToAdd)};throw new k(e)},Co=e=>({id:e.id!=null?[z.Principal.fromText(e.id)]:[],reward_account:e.rewardAccount!=null?[Xo(e.rewardAccount)]:[]}),Fn=e=>({e8s:e}),Xo=e=>({hash:(0,Vn.accountIdentifierToBytes)(e)}),Yr=e=>{if((0,g.isNullish)(e))return[];let{maximumIcpXdrRate:t,maxTheoreticalNeuronsFundParticipationAmountXdr:o,neuronsFundMatchedFundingCurveCoefficients:n,minimumIcpXdrRate:r}=e,i=_=>(0,g.isNullish)(_)?[]:[{basis_points:(0,g.toNullable)(_.basisPoints)}],c=_=>(0,g.isNullish)(_)?[]:[{human_readable:(0,g.toNullable)(_.humanReadable)}],d=_=>(0,g.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)}]},xn=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?[Xo(e.RewardToAccount.toAccount)]:[]}};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?[e.MemoAndController.controller]:[]}};throw new k(e)},Mo=({neuronIds:e,includeEmptyNeurons:t,includePublicNeurons:o})=>({neuron_ids:BigUint64Array.from(e??[]),include_neurons_readable_by_caller:!e,include_empty_neurons_readable_by_caller:(0,g.toNullable)(t),include_public_neurons_in_full_neurons:(0,g.toNullable)(o)}),Ir=({id:e,command:t,neuronIdOrSubaccount:o})=>({id:e?[Tn(e)]:[],command:t?[Jr(t)]:[],neuron_id_or_subaccount:o?[Mr(o)]:[]}),An=({includeRewardStatus:e,beforeProposal:t,excludeTopic:o,includeStatus:n,limit:r,includeAllManageNeuronProposals:i,omitLargeFields:c})=>({include_reward_status:Int32Array.from(e),before_proposal:t?[Pn(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,g.toNullable)(c)}),qn=e=>({id:[],command:[{ClaimOrRefresh:{by:[{NeuronIdOrSubaccount:{}}]}}],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}),En=({memo:e,controller:t})=>{let o={ClaimOrRefresh:{by:[{MemoAndController:{controller:t==null?[]:[t],memo:e}}]}};return{id:[],command:[o],neuron_id_or_subaccount:[]}},Bn=({neuronId:e,amount:t})=>({id:[],command:[{Split:{amount_e8s:t}}],neuron_id_or_subaccount:[{NeuronId:{id:e}}]});var Gn=({neuronId:e,vote:t,proposalId:o})=>Ie({neuronId:e,command:{RegisterVote:{vote:t,proposal:[{id:o}]}}}),Un=e=>{let t={MakeProposal:{url:e.url,title:e.title!=null?[e.title]:[],summary:e.summary,action:[Mn(e.action)]}};return{id:[],command:[t],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}},Kn=({neuronId:e,topic:t,followees:o})=>Ie({neuronId:e,command:{Follow:{topic:t,followees:o.map(n=>({id:n}))}}}),Wn=({neuronId:e,toAccountIdentifier:t,amount:o})=>Ie({neuronId:e,command:{Disburse:{to_account:t!==void 0?[t.toAccountIdentifierHash()]:[],amount:o!==void 0?[Fn(o)]:[]}}}),Hn=({neuronId:e,percentageToMerge:t})=>Ie({neuronId:e,command:{MergeMaturity:{percentage_to_merge:t}}}),jn=({neuronId:e,percentageToStake:t})=>Ie({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,g.toNullable)(t)}}}),zn=({neuronId:e,percentageToSpawn:t,newController:o,nonce:n})=>Ie({neuronId:e,command:{Spawn:{percentage_to_spawn:t===void 0?[]:[t],new_controller:o===void 0?[]:[o],nonce:n===void 0?[]:[n]}}}),Xn=({neuronId:e,principal:t})=>_e({neuronId:e,operation:{AddHotKey:{new_hot_key:[t]}}}),Jn=({neuronId:e,principal:t})=>_e({neuronId:e,operation:{RemoveHotKey:{hot_key_to_remove:[t]}}}),$n=({neuronId:e,additionalDissolveDelaySeconds:t})=>_e({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Qn=({neuronId:e,dissolveDelaySeconds:t})=>_e({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:BigInt(t)}}}),Yn=e=>_e({neuronId:e,operation:{JoinCommunityFund:{}}}),Zn=({neuronId:e,autoStake:t})=>_e({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),In=e=>_e({neuronId:e,operation:{LeaveCommunityFund:{}}}),Dn=({neuronId:e,visibility:t})=>_e({neuronId:e,operation:{SetVisibility:{visibility:[t]}}}),Jo=({sourceNeuronId:e,targetNeuronId:t})=>Ie({neuronId:t,command:{Merge:{source_neuron_id:[{id:e}]}}}),Ln=e=>_e({neuronId:e,operation:{StartDissolving:{}}}),er=e=>_e({neuronId:e,operation:{StopDissolving:{}}}),Ie=({neuronId:e,command:t})=>({id:[{id:e}],command:[t],neuron_id_or_subaccount:[]}),_e=({neuronId:e,operation:t})=>Ie({neuronId:e,command:{Configure:{operation:[t]}}});var qo=require("@dfinity/ledger-icp"),$o=require("@dfinity/principal"),s=require("@dfinity/utils");var Qo=({neuronId:e,neuronInfo:t,rawNeuron:o,canisterId:n})=>{let r=o?Dr({neuron:o,canisterId:n}):void 0;return{neuronId:e,dissolveDelaySeconds:t.dissolve_delay_seconds,recentBallots:t.recent_ballots.map(rr),neuronType:(0,s.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,s.fromNullable)(t.visibility),fullNeuron:r}},Dr=({neuron:e,canisterId:t})=>({id:e.id.length?De(e.id[0]):void 0,stakedMaturityE8sEquivalent:(0,s.fromNullable)(e.staked_maturity_e8s_equivalent),controller:e.controller.length?e.controller[0].toString():void 0,recentBallots:e.recent_ballots.map(rr),neuronType:(0,s.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,s.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,qo.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?Lr(e.dissolve_state[0]):void 0,spawnAtTimesSeconds:e.spawn_at_timestamp_seconds[0],followees:e.followees.map(([o,n])=>sr({topic:o,followees:n})),visibility:(0,s.fromNullable)(e.visibility)}),nr=({neuron:e,account:t})=>({id:(0,s.nonNullish)(e.id)?(0,s.toNullable)({id:e.id}):[],staked_maturity_e8s_equivalent:(0,s.toNullable)(e.stakedMaturityE8sEquivalent),controller:(0,s.nonNullish)(e.controller)?(0,s.toNullable)($o.Principal.from(e.controller)):[],recent_ballots:e.recentBallots.map(o=>({vote:o.vote,proposal_id:(0,s.nonNullish)(o.proposalId)?(0,s.toNullable)({id:o.proposalId}):[]})),kyc_verified:e.kycVerified,neuron_type:(0,s.toNullable)(e.neuronType),not_for_profit:e.notForProfit,cached_neuron_stake_e8s:e.cachedNeuronStake,created_timestamp_seconds:e.createdTimestampSeconds,auto_stake_maturity:(0,s.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=>$o.Principal.from(o)),account:t,joined_community_fund_timestamp_seconds:(0,s.toNullable)(e.joinedCommunityFundTimestampSeconds),dissolve_state:(0,s.nonNullish)(e.dissolveState)?[e.dissolveState]:[],spawn_at_timestamp_seconds:(0,s.toNullable)(e.spawnAtTimesSeconds),followees:e.followees.map(o=>[o.topic,{followees:o.followees.map(n=>({id:n}))}]),visibility:(0,s.toNullable)(e.visibility),transfer:[],known_neuron_data:[]}),rr=({vote:e,proposal_id:t})=>({vote:e,proposalId:t.length?De(t[0]):void 0}),Lr=e=>"DissolveDelaySeconds"in e?{DissolveDelaySeconds:e.DissolveDelaySeconds}:{WhenDissolvedTimestampSeconds:e.WhenDissolvedTimestampSeconds},sr=({topic:e,followees:t})=>({topic:e,followees:t.followees.map(De)}),De=({id:e})=>e,es=e=>{if("NeuronId"in e)return{NeuronId:e.NeuronId.id};if("Subaccount"in e)return{Subaccount:(0,s.uint8ArrayToArrayOfNumber)(Uint8Array.from(e.Subaccount))};throw new k(e)},ts=({neuronId:e,ballot:t})=>{let{vote:o,voting_power:n}=t;return{neuronId:e,vote:o,votingPower:n}},os=({title:e,url:t,action:o,summary:n})=>({title:e.length?e[0]:void 0,url:t,action:o.length?ar(o[0]):void 0,summary:n}),ar=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?De(o.id[0]):void 0,command:o.command.length?rs(o.command[0]):void 0,neuronIdOrSubaccount:o.neuron_id_or_subaccount.length?es(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:is(o.neurons_fund_economics)}}}if("RewardNodeProvider"in e){let o=e.RewardNodeProvider;return{RewardNodeProvider:{nodeProvider:o.node_provider.length?Fo(o.node_provider[0]):void 0,amountE8s:o.amount_e8s,rewardMode:o.reward_mode.length?tr(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?Fo(n.node_provider[0]):void 0,amountE8s:n.amount_e8s,rewardMode:n.reward_mode.length?tr(n.reward_mode[0]):void 0}))}}}if("AddOrRemoveNodeProvider"in e){let o=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:o.change.length?as(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])=>sr({topic:n,followees:r}))}};if("RegisterKnownNeuron"in e){let o=e.RegisterKnownNeuron;return{RegisterKnownNeuron:ds(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,s.fromNullable)(o.params);return{OpenSnsTokenSwap:{communityFundInvestmentE8s:(0,s.fromNullable)(o.community_fund_investment_e8s),targetSwapCanisterId:(0,s.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,s.fromNullable)(n.sale_delay_seconds),neuronBasketConstructionParameters:(0,s.fromNullable)(n.neuron_basket_construction_parameters),maxDirectParticipationIcpE8s:(0,s.fromNullable)(n.max_direct_participation_icp_e8s),minDirectParticipationIcpE8s:(0,s.fromNullable)(n.min_direct_participation_icp_e8s)}}}}if("CreateServiceNervousSystem"in e){let o=e.CreateServiceNervousSystem;return{CreateServiceNervousSystem:{url:(0,s.fromNullable)(o.url),governanceParameters:Os((0,s.fromNullable)(o.governance_parameters)),fallbackControllerPrincipalIds:o.fallback_controller_principal_ids.map(n=>n.toString()),logo:_r((0,s.fromNullable)(o.logo)),name:(0,s.fromNullable)(o.name),ledgerParameters:ms((0,s.fromNullable)(o.ledger_parameters)),description:(0,s.fromNullable)(o.description),dappCanisters:o.dapp_canisters.map(ls)??[],swapParameters:Rs((0,s.fromNullable)(o.swap_parameters)),initialTokenDistribution:ws((0,s.fromNullable)(o.initial_token_distribution))}}}if("InstallCode"in e){let o=e.InstallCode;return{InstallCode:{skipStoppingBeforeInstalling:(0,s.fromNullable)(o.skip_stopping_before_installing),canisterId:o.canister_id.length?o.canister_id[0].toString():void 0,installMode:(0,s.fromNullable)(o.install_mode),wasmModuleHash:(0,s.uint8ArrayToHexString)((0,s.fromDefinedNullable)(o.wasm_module_hash)),argHash:(0,s.uint8ArrayToHexString)((0,s.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,s.fromNullable)(o.action)}}}if("UpdateCanisterSettings"in e)return{UpdateCanisterSettings:{canisterId:e.UpdateCanisterSettings.canister_id.length?e.UpdateCanisterSettings.canister_id[0].toString():void 0,settings:ys((0,s.fromDefinedNullable)(e.UpdateCanisterSettings.settings))}};throw new k(e)},ns=e=>({no:e.no,yes:e.yes,total:e.total,timestampSeconds:e.timestamp_seconds}),rs=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(De)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by.length?_s(t.by[0]):void 0}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation.length?ss(t.operation[0]):void 0}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal.length?De(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,s.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?ar(t.action[0]):void 0,summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{toAccountId:t.to_account.length?Yo(t.to_account[0]):void 0,amount:t.amount.length?cs(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)},ss=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,s.fromNullable)(t.visibility)}}}throw new k(e)},as=e=>{if("ToRemove"in e)return{ToRemove:Fo(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Fo(e.ToAdd)};throw new k(e)},is=e=>{let t=(0,s.fromNullable)(e);if((0,s.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,s.fromNullable)(N);if((0,s.isNullish)(f))return;let{basis_points:l}=f,w=(0,s.fromNullable)(l);return(0,s.nonNullish)(w)?{basisPoints:w}:void 0},d=N=>{let f=(0,s.fromNullable)(N);if((0,s.isNullish)(f))return;let{human_readable:l}=f,w=(0,s.fromNullable)(l);return(0,s.nonNullish)(w)?{humanReadable:w}:void 0},_=N=>{let f=(0,s.fromNullable)(N);if((0,s.isNullish)(f))return;let{full_participation_milestone_xdr:l,one_third_participation_milestone_xdr:w,contribution_threshold_xdr:x}=f;return{fullParticipationMilestoneXdr:d(l),oneThirdParticipationMilestoneXdr:d(w),contributionThresholdXdr:d(x)}};return{maximumIcpXdrRate:c(o),neuronsFundMatchedFundingCurveCoefficients:_(n),maxTheoreticalNeuronsFundParticipationAmountXdr:d(r),minimumIcpXdrRate:c(i)}},Fo=e=>({id:e.id.length?e.id[0].toString():void 0,rewardAccount:e.reward_account.length?Yo(e.reward_account[0]):void 0}),cs=e=>e.e8s,Yo=e=>(0,qo.accountIdentifierFromBytes)(new Uint8Array(e.hash)),tr=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?Yo(e.RewardToAccount.to_account[0]):void 0}};throw new k(e)},_s=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)},Zo=e=>({id:e.id.length?De(e.id[0]):void 0,ballots:e.ballots.map(t=>ts({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,s.fromNullable)(e.deadline_timestamp_seconds),decidedTimestampSeconds:e.decided_timestamp_seconds,proposal:e.proposal.length?os(e.proposal[0]):void 0,proposer:e.proposer.length?De(e.proposer[0]):void 0,latestTally:e.latest_tally.length?ns(e.latest_tally[0]):void 0,executedTimestampSeconds:e.executed_timestamp_seconds,topic:e.topic,status:e.status,rewardStatus:e.reward_status}),ir=({response:{neuron_infos:e,full_neurons:t},canisterId:o})=>e.map(([n,r])=>Qo({neuronId:n,neuronInfo:r,rawNeuron:t.find(i=>i.id.length&&i.id[0].id===n),canisterId:o})),cr=({proposal_info:e})=>({proposals:e.map(Zo)}),ds=({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])??""}},Ao=e=>e===void 0?void 0:{basisPoints:(0,s.fromNullable)(e.basis_points)},de=e=>e===void 0?void 0:{seconds:(0,s.fromNullable)(e.seconds)},ps=e=>e===void 0?void 0:{secondsAfterUtcMidnight:(0,s.fromNullable)(e.seconds_after_utc_midnight)},us=e=>e===void 0?void 0:{isoCodes:e.iso_codes},te=e=>e===void 0?void 0:{e8s:(0,s.fromNullable)(e.e8s)},ls=e=>e===void 0||e.id.length===0?void 0:(0,s.fromDefinedNullable)(e.id).toString(),_r=e=>e===void 0?void 0:{base64Encoding:(0,s.fromNullable)(e.base64_encoding)},ms=e=>e===void 0?void 0:{transactionFee:te((0,s.fromNullable)(e.transaction_fee)),tokenSymbol:(0,s.fromNullable)(e.token_symbol),tokenLogo:_r((0,s.fromNullable)(e.token_logo)),tokenName:(0,s.fromNullable)(e.token_name)},Ns=e=>e===void 0?void 0:{rewardRateTransitionDuration:de((0,s.fromNullable)(e.reward_rate_transition_duration)),initialRewardRate:Ao((0,s.fromNullable)(e.initial_reward_rate)),finalRewardRate:Ao((0,s.fromNullable)(e.final_reward_rate))},Os=e=>e===void 0?void 0:{neuronMaximumDissolveDelayBonus:Ao((0,s.fromNullable)(e.neuron_maximum_dissolve_delay_bonus)),neuronMaximumAgeForAgeBonus:de((0,s.fromNullable)(e.neuron_maximum_age_for_age_bonus)),neuronMaximumDissolveDelay:de((0,s.fromNullable)(e.neuron_maximum_dissolve_delay)),neuronMinimumDissolveDelayToVote:de((0,s.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote)),neuronMaximumAgeBonus:Ao((0,s.fromNullable)(e.neuron_maximum_age_bonus)),neuronMinimumStake:te((0,s.fromNullable)(e.neuron_minimum_stake)),proposalWaitForQuietDeadlineIncrease:de((0,s.fromNullable)(e.proposal_wait_for_quiet_deadline_increase)),proposalInitialVotingPeriod:de((0,s.fromNullable)(e.proposal_initial_voting_period)),proposalRejectionFee:te((0,s.fromNullable)(e.proposal_rejection_fee)),votingRewardParameters:Ns((0,s.fromNullable)(e.voting_reward_parameters))},fs=e=>e===void 0?void 0:{dissolveDelayInterval:de((0,s.fromNullable)(e.dissolve_delay_interval)),count:(0,s.fromNullable)(e.count)},Rs=e=>e===void 0?void 0:{minimumParticipants:(0,s.fromNullable)(e.minimum_participants),duration:de((0,s.fromNullable)(e.duration)),neuronBasketConstructionParameters:fs((0,s.fromNullable)(e.neuron_basket_construction_parameters)),confirmationText:(0,s.fromNullable)(e.confirmation_text),maximumParticipantIcp:te((0,s.fromNullable)(e.maximum_participant_icp)),neuronsFundInvestmentIcp:te((0,s.fromNullable)(e.neurons_fund_investment_icp)),minimumIcp:te((0,s.fromNullable)(e.minimum_icp)),minimumParticipantIcp:te((0,s.fromNullable)(e.minimum_participant_icp)),startTime:ps((0,s.fromNullable)(e.start_time)),maximumIcp:te((0,s.fromNullable)(e.maximum_icp)),restrictedCountries:us((0,s.fromNullable)(e.restricted_countries)),maxDirectParticipationIcp:te((0,s.fromNullable)(e.maximum_direct_participation_icp)),minDirectParticipationIcp:te((0,s.fromNullable)(e.minimum_direct_participation_icp)),neuronsFundParticipation:(0,s.fromNullable)(e.neurons_fund_participation)},or=e=>e===void 0?void 0:{total:te((0,s.fromNullable)(e.total))},gs=e=>e===void 0?void 0:{controller:e.controller.length===0?void 0:e.controller[0].toString(),dissolveDelay:de((0,s.fromNullable)(e.dissolve_delay)),memo:(0,s.fromNullable)(e.memo),vestingPeriod:de((0,s.fromNullable)(e.vesting_period)),stake:te((0,s.fromNullable)(e.stake))},vs=e=>e===void 0?void 0:{developerNeurons:e.developer_neurons.map(gs)},ws=e=>e===void 0?void 0:{treasuryDistribution:or((0,s.fromNullable)(e.treasury_distribution)),developerDistribution:vs((0,s.fromNullable)(e.developer_distribution)),swapDistribution:or((0,s.fromNullable)(e.swap_distribution))},ys=e=>{var t;return e===void 0?void 0:{freezingThreshold:(0,s.fromNullable)(e.freezing_threshold),controllers:(t=(0,s.fromNullable)(e.controllers))==null?void 0:t.controllers.map(o=>o.toString()),logVisibility:(0,s.fromNullable)(e.log_visibility),wasmMemoryLimit:(0,s.fromNullable)(e.wasm_memory_limit),computeAllocation:(0,s.fromNullable)(e.compute_allocation),memoryAllocation:(0,s.fromNullable)(e.memory_allocation)}};var yo=e=>{let{command:t}=e,o=t[0];if(!o)throw new Te({error_message:"Error updating neuron",error_type:0});if("Error"in o)throw new Te(o.Error);return o},T=async({request:e,service:t})=>{let o=await t.manage_neuron(e);return yo(o)},dr=async({request:e,service:t})=>{let o=await t.simulate_manage_neuron(e);return yo(o)};var Io=BigInt(1e8);var Eo=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=Mo({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 ir({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=An(t),r=await this.getGovernanceService(o).list_proposals(n);return cr(r)};this.stakeNeuron=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:i,fee:c})=>{if(t<Io)throw new et(t);let d=new Uint8Array((0,Do.default)(8)),_=(0,u.uint8ArrayToBigInt)(d),N=this.buildNeuronStakeSubAccount(d,o),f=Ce.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 Le;return l};this.stakeNeuronIcrc1=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:i,fee:c})=>{if(t<Io)throw new et(t);let d=new Uint8Array((0,Do.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 Le;return f};this.increaseDissolveDelay=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{let n=$n({neuronId:t,additionalDissolveDelaySeconds:o});await T({request:n,service:this.certifiedService})};this.setDissolveDelay=async({neuronId:t,dissolveDelaySeconds:o})=>{let n=Qn({neuronId:t,dissolveDelaySeconds:o});await T({request:n,service:this.certifiedService})};this.startDissolving=async t=>{let o=Ln(t);await T({request:o,service:this.certifiedService})};this.stopDissolving=async t=>{let o=er(t);await T({request:o,service:this.certifiedService})};this.joinCommunityFund=async t=>{let o=Yn(t);await T({request:o,service:this.certifiedService})};this.autoStakeMaturity=async t=>{await T({request:Zn(t),service:this.certifiedService})};this.leaveCommunityFund=async t=>{let o=In(t);await T({request:o,service:this.certifiedService})};this.setVisibility=async(t,o)=>{let n=Dn({neuronId:t,visibility:o});await T({request:n,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 Te(n.Err)};this.mergeNeurons=async t=>{let o=Jo(t);await T({request:o,service:this.certifiedService})};this.simulateMergeNeurons=async t=>{var _;let o=Jo(t),n=await dr({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 Qo({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=Bn({neuronId:t,amount:o}),r=await this.certifiedService.manage_neuron(n),i=yo(r);if("Split"in i){let c=(0,u.fromNullable)(i.Split.created_neuron_id);if((0,u.isNullish)(c))throw new Te({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?Zo(n):void 0};this.makeProposal=async t=>{var r;let o=Un(t),n=await T({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=Gn({neuronId:t,vote:o,proposalId:n});await T({request:r,service:this.certifiedService})};this.setFollowees=async t=>{let o=Kn(t);await T({request:o,service:this.certifiedService})};this.disburse=async({neuronId:t,toAccountId:o,amount:n})=>{(0,u.nonNullish)(o)&&(0,Ce.checkAccountId)(o);let r=(0,u.nonNullish)(o)?Ce.AccountIdentifier.fromHex(o):void 0,i=Wn({neuronId:t,toAccountIdentifier:r,amount:n});await T({request:i,service:this.certifiedService})};this.mergeMaturity=async({neuronId:t,percentageToMerge:o})=>{(0,u.assertPercentageNumber)(o);let n=Hn({neuronId:t,percentageToMerge:o});await T({request:n,service:this.certifiedService})};this.stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,u.assertPercentageNumber)(o??100),await T({request:jn({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=zn({neuronId:t,percentageToSpawn:o,newController:n,nonce:r}),c=await this.certifiedService.manage_neuron(i),d=yo(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=Xn({neuronId:t,principal:o});await T({request:n,service:this.certifiedService})};this.removeHotkey=async({neuronId:t,principal:o})=>{let n=Jn({neuronId:t,principal:o});await T({request:n,service:this.certifiedService})};this.claimOrRefreshNeuronFromAccount=async({memo:t,controller:o})=>{var c;let n=En({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=qn(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)=>Ce.SubAccount.fromBytes(this.getNeuronStakeSubAccountBytes(t,o));this.getNeuronStakeSubAccountBytes=(t,o)=>{let n=(0,u.asciiStringToByteArray)("neuron-stake"),r=wn.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??ho,{service:n,certifiedService:r,agent:i}=(0,u.createServices)({options:{...t,canisterId:o},idlFactory:Po,certifiedIdlFactory:hn}),c=t.oldListNeuronsServiceOverride??pr.Actor.createActor(Sn,{agent:i,canisterId:o});return new e(o,n,r,c,i)}getGovernanceService(t){return t?this.certifiedService:this.service}};var lr=require("@dfinity/ledger-icp"),Go=require("@dfinity/utils");var ur=({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}),w=e.Record({by:e.Opt(l)}),x=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),E=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),pe=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ue=e.Record({visibility:e.Opt(e.Int32)}),le=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:E,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:pe,SetVisibility:ue,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:le}),M=e.Record({operation:e.Opt(p)}),v=e.Record({id:e.Nat64}),J=e.Record({vote:e.Int32,proposal:e.Opt(v)}),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)}),C=e.Record({percentage_to_merge:e.Nat32}),V=e.Record({hash:e.Vec(e.Nat8)}),oe=e.Record({e8s:e.Nat64}),q=e.Record({to_account:e.Opt(V),amount:e.Opt(oe)}),me=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:w,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:o,StakeMaturity:$,MergeMaturity:C,Disburse:q}),y=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),Ne=e.Record({id:e.Opt(n),command:e.Opt(me),neuron_id_or_subaccount:e.Opt(y)}),Oe=e.Record({controllers:e.Vec(e.Principal)}),fe=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(Oe),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(fe)}),Re=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)}),h=e.Record({basis_points:e.Opt(e.Nat64)}),R=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),ge=e.Record({reward_rate_transition_duration:e.Opt(R),initial_reward_rate:e.Opt(h),final_reward_rate:e.Opt(h)}),ve=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(h),neuron_maximum_age_for_age_bonus:e.Opt(R),neuron_maximum_dissolve_delay:e.Opt(R),neuron_minimum_dissolve_delay_to_vote:e.Opt(R),neuron_maximum_age_bonus:e.Opt(h),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(R),proposal_initial_voting_period:e.Opt(R),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(ge)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),we=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),ye=e.Record({id:e.Opt(e.Principal)}),be=e.Record({dissolve_delay_interval:e.Opt(R),count:e.Opt(e.Nat64)}),he=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),Se=e.Record({iso_codes:e.Vec(e.Text)}),ke=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(R),neuron_basket_construction_parameters:e.Opt(be),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(he),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(Se)}),I=e.Record({total:e.Opt(m)}),xe=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(R),memo:e.Opt(e.Nat64),vesting_period:e.Opt(R),stake:e.Opt(m)}),Ve=e.Record({developer_neurons:e.Vec(xe)}),a=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(Ve),swap_distribution:e.Opt(I)}),D=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(ve),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(we),description:e.Opt(e.Text),dapp_canisters:e.Vec(ye),swap_parameters:e.Opt(ke),initial_token_distribution:e.Opt(a)}),L=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),b=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(V)}),tt=e.Record({dissolve_delay_seconds:e.Nat64}),ot=e.Record({to_account:e.Opt(V)}),nt=e.Variant({RewardToNeuron:tt,RewardToAccount:ot}),B=e.Record({node_provider:e.Opt(b),reward_mode:e.Opt(nt),amount_e8s:e.Nat64}),rt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),st=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(rt),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)}),at=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(st)}),it=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),ct=e.Record({open_time_window:e.Opt(it)}),_t=e.Record({request:e.Opt(ct),swap_canister_id:e.Opt(e.Principal)}),dt=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(B)}),G=e.Record({human_readable:e.Opt(e.Text)}),pt=e.Record({contribution_threshold_xdr:e.Opt(G),one_third_participation_milestone_xdr:e.Opt(G),full_participation_milestone_xdr:e.Opt(G)}),ut=e.Record({maximum_icp_xdr_rate:e.Opt(h),neurons_fund_matched_funding_curve_coefficients:e.Opt(pt),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(G),minimum_icp_xdr_rate:e.Opt(h)}),U=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(ut)}),ne=e.Record({principals:e.Vec(e.Principal)}),lt=e.Variant({ToRemove:b,ToAdd:b}),Fe=e.Record({change:e.Opt(lt)}),Ae=e.Record({motion_text:e.Text}),mt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:Ne,UpdateCanisterSettings:Q,InstallCode:Re,StopOrStartCanister:Y,CreateServiceNervousSystem:D,ExecuteNnsFunction:L,RewardNodeProvider:B,OpenSnsTokenSwap:at,SetSnsTokenSwapOpenTimeWindow:_t,SetDefaultFollowees:dt,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:ne,AddOrRemoveNodeProvider:Fe,Motion:Ae});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(mt),summary:e.Text}));let Nt=e.Record({proposal:e.Opt(o),caller:e.Opt(e.Principal),proposer_id:e.Opt(n)}),qe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),K=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(b),timestamp:e.Nat64,rewards:e.Vec(B),xdr_conversion_rate:e.Opt(qe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ee=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))}),Be=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(Ee),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(Ee),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),Ot=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}),Ge=e.Record({groups:e.Vec(Ot),timestamp_seconds:e.Opt(e.Nat64)}),Ue=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(v)}),Ke=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}),ft=e.Record({followers:e.Vec(n)}),Rt=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,ft))}),gt=e.Variant({LastNeuronId:n}),We=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(gt)}),vt=e.Record({neuron_indexes_migration:e.Opt(We),copy_inactive_neurons_to_stable_memory_migration:e.Opt(We)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),He=e.Record({vote:e.Int32,voting_power:e.Nat64}),wt=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)}),yt=e.Record({controller: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)}),re=e.Record({neurons_fund_neuron_portions:e.Vec(yt)}),bt=e.Record({serialized_representation:e.Opt(e.Text)}),W=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(wt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(re),ideal_matched_participation_function:e.Opt(bt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),ht=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(re)}),St=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)}),S=e.Record({status:e.Opt(St),canister_id:e.Opt(e.Principal)}),kt=e.Record({ledger_index_canister_summary:e.Opt(S),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(S),ledger_canister_summary:e.Opt(S),swap_canister_summary:e.Opt(S),governance_canister_summary:e.Opt(S),root_canister_summary:e.Opt(S),dapp_canister_summaries:e.Vec(S)}),je=e.Record({swap_background_information:e.Opt(kt)}),ze=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),xt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Vt=e.Record({id:e.Opt(v),failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(ht),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(je),latest_tally:e.Opt(ze),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(xt),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:w,MergeMaturity:C,Disburse:q}),Tt=e.Record({command:e.Opt(Pt),timestamp:e.Nat64}),Xe=e.Record({vote:e.Int32,proposal_id:e.Opt(v)}),Ct=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),P=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Xe),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(Ct),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(Ke),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Lo=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),making_sns_proposal:e.Opt(Nt),most_recent_monthly_node_provider_rewards:e.Opt(K),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Be),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(b),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(U),restore_aging_summary:e.Opt(Ge),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Ue),to_claim_transfers:e.Vec(Ke),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,Rt)),migrations:e.Opt(vt),proposals:e.Vec(e.Tuple(e.Nat64,Vt)),xdr_conversion_rate:e.Opt(qe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Tt)),neurons:e.Vec(e.Tuple(e.Nat64,P)),genesis_timestamp_seconds:e.Nat64}),H=e.Variant({Ok:e.Null,Err:O}),Mt=e.Variant({Error:O,NeuronId:n}),Ft=e.Record({result:e.Opt(Mt)}),Je=e.Variant({Ok:P,Err:O}),At=e.Variant({Ok:Be,Err:O}),qt=e.Variant({Ok:K,Err:O}),j=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Xe),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}),$e=e.Variant({Ok:j,Err:O}),Et=e.Record({nns_proposal_id:e.Opt(v)}),Bt=e.Record({final_neurons_fund_participation:e.Opt(W),initial_neurons_fund_participation:e.Opt(W),neurons_fund_refunds:e.Opt(re)}),Gt=e.Record({neurons_fund_audit_info:e.Opt(Bt)}),Ut=e.Variant({Ok:Gt,Err:O}),Kt=e.Record({result:e.Opt(Ut)}),Wt=e.Variant({Ok:b,Err:O}),se=e.Record({id:e.Opt(v),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,He)),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(ze),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),Ht=e.Record({known_neurons:e.Vec(c)}),jt=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}),zt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,j)),full_neurons:e.Vec(P)}),Xt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),Jt=e.Record({date_filter:e.Opt(Xt)}),$t=e.Record({rewards:e.Vec(K)}),Qt=e.Record({node_providers:e.Vec(b)}),Yt=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(v),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),Zt=e.Record({proposal_info:e.Vec(se)}),It=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)}),Dt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:It,StopOrStartCanister:Y,CreateServiceNervousSystem:D,ExecuteNnsFunction:L,RewardNodeProvider:B,RewardNodeProviders:Me,ManageNetworkEconomics:U,ApproveGenesisKyc:ne,AddOrRemoveNodeProvider:Fe,Motion:Ae}),Lt=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Dt),summary:e.Text}),eo=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:w,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:Lt,StakeMaturity:$,MergeMaturity:C,Disburse:q});t.fill(e.Record({id:e.Opt(n),command:e.Opt(eo),neuron_id_or_subaccount:e.Opt(y)}));let ae=e.Record({created_neuron_id:e.Opt(n)}),to=e.Record({refreshed_neuron_id:e.Opt(n)}),oo=e.Record({target_neuron:e.Opt(P),source_neuron:e.Opt(P),target_neuron_info:e.Opt(j),source_neuron_info:e.Opt(j)}),no=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(v)}),ro=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),so=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ao=e.Record({transfer_block_height:e.Nat64}),io=e.Variant({Error:O,Spawn:ae,Split:ae,Follow:e.Record({}),ClaimOrRefresh:to,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:oo,DisburseToNeuron:ae,MakeProposal:no,StakeMaturity:ro,MergeMaturity:so,Disburse:ao}),Qe=e.Record({command:e.Opt(io)}),co=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)}),_o=e.Variant({Committed:co,Aborted:e.Record({})}),po=e.Record({result:e.Opt(_o),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),uo=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)}),lo=e.Variant({Committed:uo,Aborted:e.Record({})}),mo=e.Record({result:e.Opt(lo),nns_proposal_id:e.Opt(e.Nat64)}),No=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(ne),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(No)}),fo=e.Variant({Ok:Oo,Err:O}),Ro=e.Record({result:e.Opt(fo)}),go=e.Record({reward_account:e.Opt(V)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[H],[]),claim_or_refresh_neuron_from_account:e.Func([f],[Ft],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Je],[]),get_full_neuron_by_id_or_subaccount:e.Func([y],[Je],[]),get_latest_reward_event:e.Func([],[Ue],[]),get_metrics:e.Func([],[At],[]),get_monthly_node_provider_rewards:e.Func([],[qt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(K)],[]),get_network_economics_parameters:e.Func([],[U],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[$e],[]),get_neuron_info_by_id_or_subaccount:e.Func([y],[$e],[]),get_neurons_fund_audit_info:e.Func([Et],[Kt],[]),get_node_provider_by_caller:e.Func([e.Null],[Wt],[]),get_pending_proposals:e.Func([],[e.Vec(se)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(se)],[]),get_restore_aging_summary:e.Func([],[Ge],[]),list_known_neurons:e.Func([],[Ht],[]),list_neurons:e.Func([jt],[zt],[]),list_node_provider_rewards:e.Func([Jt],[$t],[]),list_node_providers:e.Func([],[Qt],[]),list_proposals:e.Func([Yt],[Zt],[]),manage_neuron:e.Func([t],[Qe],[]),settle_community_fund_participation:e.Func([po],[H],[]),settle_neurons_fund_participation:e.Func([mo],[Ro],[]),simulate_manage_neuron:e.Func([t],[Qe],[]),transfer_gtc_neuron:e.Func([n,n],[H],[]),update_neuron:e.Func([P],[e.Opt(O)],[]),update_node_provider:e.Func([go],[H],[])})};var Bo=class e{constructor(t,o){this.canisterId=t;this.certifiedService=o;this.canisterId=t,this.certifiedService=o}static create(t={}){let o=t.canisterId??ho,{certifiedService:n}=(0,Go.createServices)({options:{...t,canisterId:o},idlFactory:Po,certifiedIdlFactory:ur});return new e(o,n)}async updateNeuron(t){(0,Go.assertNonNullish)(t.id);let o=Mo({neuronIds:[t.id]}),r=(await this.certifiedService.list_neurons(o)).full_neurons[0];if((0,lr.principalToAccountIdentifier)(this.canisterId,Uint8Array.from(r.account))!==t.accountIdentifier)throw new Error("Neuron account identifier can't be changed");let c=nr({neuron:t,account:Uint8Array.from(r.account)});return this.certifiedService.update_neuron(c)}};var Or=require("@dfinity/utils");var mr=({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)}),w=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}),E=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(E)}),pe=e.Record({airdrop_neurons:e.Vec(E)}),ue=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),le=e.Record({treasury_distribution:e.Opt(x),developer_distribution:e.Opt(X),airdrop_distribution:e.Opt(pe),swap_distribution:e.Opt(ue)}),p=e.Variant({FractionalDeveloperVotingPower:le}),M=e.Record({iso_codes:e.Vec(e.Text)}),v=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(w),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)}),J=e.Record({sns_init_payload:e.Opt(v)}),F=e.Record({restored_dapp_canisters:e.Vec(_),nns_controlled_dapp_canisters:e.Vec(_),sns_controlled_dapp_canisters:e.Vec(_)}),A=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)}),$=e.Record({dapp_canisters_transfer_result:e.Opt(F),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(A)}),C=e.Record({allowed_principals:e.Vec(e.Principal)}),V=e.Record({proposal_id:e.Nat64}),oe=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)}),q=e.Variant({Error:r,DeployedSns:oe}),me=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(q)}),y=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(y)}),Oe=e.Record({next_version:e.Opt(y)}),fe=e.Record({hash:e.Vec(e.Nat8)}),Q=e.Record({proposal_id:e.Opt(e.Nat64)}),Re=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),Y=e.Record({hash:e.Vec(e.Nat8)}),h=e.Record({wasm:e.Opt(o)}),R=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),m=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(m)}),ve=e.Variant({Ok:ge,Error:r}),Z=e.Record({result:e.Opt(ve)}),we=e.Record({next_version:e.Opt(y),current_version:e.Opt(y)}),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(oe)}),Se=e.Record({limit:e.Nat32,starting_at:e.Opt(y),sns_governance_canister_id:e.Opt(e.Principal)}),ke=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}),I=e.Record({pretty_version:e.Opt(ke),version:e.Opt(y)}),xe=e.Record({steps:e.Vec(I)}),Ve=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),a=e.Variant({Error:r,AllowedPrincipals:C}),D=e.Record({update_allowed_principals_result:e.Opt(a)}),L=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),b=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([J],[$],[]),get_allowed_principals:e.Func([e.Record({})],[C],[]),get_deployed_sns_by_proposal_id:e.Func([V],[me],[]),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([fe],[Q],[]),get_sns_subnet_ids:e.Func([e.Record({})],[Re],[]),get_wasm:e.Func([Y],[h],[]),get_wasm_metadata:e.Func([R],[Z],[]),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([L],[b],[])})};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)}),w=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}),E=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(E)}),pe=e.Record({airdrop_neurons:e.Vec(E)}),ue=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),le=e.Record({treasury_distribution:e.Opt(x),developer_distribution:e.Opt(X),airdrop_distribution:e.Opt(pe),swap_distribution:e.Opt(ue)}),p=e.Variant({FractionalDeveloperVotingPower:le}),M=e.Record({iso_codes:e.Vec(e.Text)}),v=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(w),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)}),J=e.Record({sns_init_payload:e.Opt(v)}),F=e.Record({restored_dapp_canisters:e.Vec(_),nns_controlled_dapp_canisters:e.Vec(_),sns_controlled_dapp_canisters:e.Vec(_)}),A=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)}),$=e.Record({dapp_canisters_transfer_result:e.Opt(F),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(A)}),C=e.Record({allowed_principals:e.Vec(e.Principal)}),V=e.Record({proposal_id:e.Nat64}),oe=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)}),q=e.Variant({Error:r,DeployedSns:oe}),me=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(q)}),y=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(y)}),Oe=e.Record({next_version:e.Opt(y)}),fe=e.Record({hash:e.Vec(e.Nat8)}),Q=e.Record({proposal_id:e.Opt(e.Nat64)}),Re=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),Y=e.Record({hash:e.Vec(e.Nat8)}),h=e.Record({wasm:e.Opt(o)}),R=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),m=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(m)}),ve=e.Variant({Ok:ge,Error:r}),Z=e.Record({result:e.Opt(ve)}),we=e.Record({next_version:e.Opt(y),current_version:e.Opt(y)}),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(oe)}),Se=e.Record({limit:e.Nat32,starting_at:e.Opt(y),sns_governance_canister_id:e.Opt(e.Principal)}),ke=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}),I=e.Record({pretty_version:e.Opt(ke),version:e.Opt(y)}),xe=e.Record({steps:e.Vec(I)}),Ve=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),a=e.Variant({Error:r,AllowedPrincipals:C}),D=e.Record({update_allowed_principals_result:e.Opt(a)}),L=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),b=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([J],[$],[]),get_allowed_principals:e.Func([e.Record({})],[C],["query"]),get_deployed_sns_by_proposal_id:e.Func([V],[me],["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([fe],[Q],["query"]),get_sns_subnet_ids:e.Func([e.Record({})],[Re],["query"]),get_wasm:e.Func([Y],[h],["query"]),get_wasm_metadata:e.Func([R],[Z],["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([L],[b],[])})};var Uo=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,Or.createServices)({options:{...t,canisterId:t.canisterId??Nn},idlFactory:Nr,certifiedIdlFactory:mr});return new e(o,n)}};var fr=({proposal:{ballots:e},neuron:{neuronId:t}})=>{var o;return(o=e.find(({neuronId:n})=>n===t))==null?void 0:o.vote},Rr=({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})},bs=({neurons:e,proposal:t})=>e.filter(o=>fr({proposal:t,neuron:o})===0&&Rr({neurons:e,proposal:t}).find(({neuronId:n})=>n===o.neuronId)===void 0),hs=({neurons:e,proposal:t})=>e.filter(o=>fr({proposal:t,neuron:o})!==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: