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