@dfinity/nns 6.0.0 → 7.0.0

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