@dfinity/nns 4.0.2 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -32
- package/dist/candid/genesis_token.d.ts +3 -0
- package/dist/candid/genesis_token.did +1 -1
- package/dist/candid/governance.certified.idl.js +41 -0
- package/dist/candid/governance.d.ts +26 -0
- package/dist/candid/governance.did +30 -12
- package/dist/candid/governance.idl.js +41 -0
- package/dist/candid/governance_test.certified.idl.js +41 -0
- package/dist/candid/governance_test.d.ts +26 -0
- package/dist/candid/governance_test.did +30 -12
- package/dist/candid/governance_test.idl.js +41 -0
- package/dist/candid/sns_wasm.d.ts +3 -0
- package/dist/candid/sns_wasm.did +12 -12
- package/dist/cjs/index.cjs.js +1 -2
- package/dist/cjs/index.cjs.js.map +4 -4
- package/dist/esm/chunk-T6KTQFXP.js +19 -0
- package/dist/esm/chunk-T6KTQFXP.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 +4 -4
- package/dist/types/canisters/governance/request.converters.d.ts +7 -7
- package/dist/types/canisters/governance/response.converters.d.ts +1 -6
- package/dist/types/enums/governance.enums.d.ts +6 -1
- package/dist/types/errors/governance.errors.d.ts +0 -2
- package/dist/types/governance.canister.d.ts +16 -28
- package/dist/types/sns_wasm.canister.d.ts +1 -1
- package/dist/types/types/governance_converters.d.ts +15 -0
- package/package.json +6 -7
- package/dist/esm/chunk-LZ5FA3UO.js +0 -20
- package/dist/esm/chunk-LZ5FA3UO.js.map +0 -7
- package/dist/types/canisters/governance/request.proto.converters.d.ts +0 -16
- package/dist/types/canisters/governance/response.proto.converters.d.ts +0 -1
- package/dist/types/utils/proto.utils.d.ts +0 -25
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
"use strict";var ir=Object.create;var so=Object.defineProperty;var cr=Object.getOwnPropertyDescriptor;var _r=Object.getOwnPropertyNames;var dr=Object.getPrototypeOf,pr=Object.prototype.hasOwnProperty;var ur=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),lr=(e,t)=>{for(var o in t)so(e,o,{get:t[o],enumerable:!0})},Eo=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of _r(t))!pr.call(e,r)&&r!==o&&so(e,r,{get:()=>t[r],enumerable:!(n=cr(t,r))||n.enumerable});return e};var Go=(e,t,o)=>(o=e!=null?ir(dr(e)):{},Eo(t||!e||!e.__esModule?so(o,"default",{value:e,enumerable:!0}):o,e)),mr=e=>Eo(so({},"__esModule",{value:!0}),e);var en=ur((Gs,Lo)=>{Lo.exports=require("crypto").randomBytes});var Rs={};lr(Rs,{CouldNotClaimNeuronError:()=>je,FeatureNotSupportedError:()=>oo,GenesisTokenCanister:()=>io,GovernanceCanister:()=>go,GovernanceError:()=>J,GovernanceTestCanister:()=>yo,InsufficientAmountError:()=>ze,NeuronState:()=>bo,NeuronType:()=>zo,NnsFunction:()=>jo,ProposalRewardStatus:()=>Uo,ProposalStatus:()=>Wo,SnsWasmCanister:()=>vo,StakeNeuronError:()=>to,Topic:()=>Ko,UnrecognizedTypeError:()=>oe,UnsupportedValueError:()=>v,Vote:()=>Ho,ineligibleNeurons:()=>ar,votableNeurons:()=>Ns,votedNeurons:()=>fs});module.exports=mr(Rs);var bo=(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))(bo||{}),Ko=(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))(Ko||{}),Uo=(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))(Uo||{}),Wo=(a=>(a[a.Unknown=0]="Unknown",a[a.Open=1]="Open",a[a.Rejected=2]="Rejected",a[a.Accepted=3]="Accepted",a[a.Executed=4]="Executed",a[a.Failed=5]="Failed",a))(Wo||{}),Ho=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(Ho||{}),jo=(i=>(i[i.Unspecified=0]="Unspecified",i[i.CreateSubnet=1]="CreateSubnet",i[i.AddNodeToSubnet=2]="AddNodeToSubnet",i[i.NnsCanisterInstall=3]="NnsCanisterInstall",i[i.NnsCanisterUpgrade=4]="NnsCanisterUpgrade",i[i.BlessReplicaVersion=5]="BlessReplicaVersion",i[i.RecoverSubnet=6]="RecoverSubnet",i[i.UpdateConfigOfSubnet=7]="UpdateConfigOfSubnet",i[i.AssignNoid=8]="AssignNoid",i[i.NnsRootUpgrade=9]="NnsRootUpgrade",i[i.IcpXdrConversionRate=10]="IcpXdrConversionRate",i[i.UpdateSubnetReplicaVersion=11]="UpdateSubnetReplicaVersion",i[i.ClearProvisionalWhitelist=12]="ClearProvisionalWhitelist",i[i.RemoveNodesFromSubnet=13]="RemoveNodesFromSubnet",i[i.SetAuthorizedSubnetworks=14]="SetAuthorizedSubnetworks",i[i.SetFirewallConfig=15]="SetFirewallConfig",i[i.UpdateNodeOperatorConfig=16]="UpdateNodeOperatorConfig",i[i.StopOrStartNnsCanister=17]="StopOrStartNnsCanister",i[i.RemoveNodes=18]="RemoveNodes",i[i.UninstallCode=19]="UninstallCode",i[i.UpdateNodeRewardsTable=20]="UpdateNodeRewardsTable",i[i.AddOrRemoveDataCenters=21]="AddOrRemoveDataCenters",i[i.UpdateUnassignedNodesConfig=22]="UpdateUnassignedNodesConfig",i[i.RemoveNodeOperators=23]="RemoveNodeOperators",i[i.RerouteCanisterRanges=24]="RerouteCanisterRanges",i[i.AddFirewallRules=25]="AddFirewallRules",i[i.RemoveFirewallRules=26]="RemoveFirewallRules",i[i.UpdateFirewallRules=27]="UpdateFirewallRules",i[i.PrepareCanisterMigration=28]="PrepareCanisterMigration",i[i.CompleteCanisterMigration=29]="CompleteCanisterMigration",i[i.AddSnsWasm=30]="AddSnsWasm",i[i.ChangeSubnetMembership=31]="ChangeSubnetMembership",i[i.UpdateSubnetType=32]="UpdateSubnetType",i[i.ChangeSubnetTypeAssignment=33]="ChangeSubnetTypeAssignment",i[i.UpdateSnsWasmSnsSubnetIds=34]="UpdateSnsWasmSnsSubnetIds",i[i.UpdateAllowedPrincipals=35]="UpdateAllowedPrincipals",i[i.RetireReplicaVersion=36]="RetireReplicaVersion",i[i.InsertSnsWasmUpgradePathEntries=37]="InsertSnsWasmUpgradePathEntries",i[i.UpdateElectedReplicaVersions=38]="UpdateElectedReplicaVersions",i[i.BitcoinSetConfig=39]="BitcoinSetConfig",i[i.UpdateElectedHostosVersions=40]="UpdateElectedHostosVersions",i[i.UpdateNodesHostosVersion=41]="UpdateNodesHostosVersion",i[i.AddApiBoundaryNode=43]="AddApiBoundaryNode",i[i.RemoveApiBoundaryNodes=44]="RemoveApiBoundaryNodes",i[i.UpdateApiBoundaryNodesVersion=46]="UpdateApiBoundaryNodesVersion",i))(jo||{}),zo=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Seed=1]="Seed",n[n.Ect=2]="Ect",n))(zo||{});var to=class extends Error{},je=class extends to{},ze=class extends to{constructor(o){super();this.minimumAmount=o}},oe=class extends Error{},J=class extends Error{constructor(o){super();this.detail=o}},v=class extends Error{constructor(t){super("Unsupported value: "+t)}},oo=class extends Error{};var Yo=require("@dfinity/utils");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)}),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}),a=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],[a],[]),get_build_metadata:e.Func([],[e.Text],[]),len:e.Func([],[e.Nat16],[]),total:e.Func([],[e.Nat32],[])})};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)}),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}),a=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],[a],["query"]),get_build_metadata:e.Func([],[e.Text],["query"]),len:e.Func([],[e.Nat16],["query"]),total:e.Func([],[e.Nat32],["query"])})};var no=require("@dfinity/principal"),bs=no.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),ao=no.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),Qo=no.Principal.fromText("renrk-eyaaa-aaaaa-aaada-cai"),Xo=no.Principal.fromText("r7inp-6aaaa-aaaaa-aaabq-cai");var io=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,Yo.createServices)({options:{...t,canisterId:t.canisterId??Qo},idlFactory:Jo,certifiedIdlFactory:$o});return new e(o)}};var Se=require("@dfinity/ledger-icp"),p=require("@dfinity/utils");function Nr(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function fr(e,...t){if(!Nr(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function ho(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Zo(e,t){fr(e);let o=t.outputLen;if(e.length<o)throw new Error(`digestInto() expects output buffer of length at least ${o}`)}function Rr(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var _o=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),ee=(e,t)=>e<<32-t|e>>>t,Or=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Or)throw new Error("Non little-endian hardware is not supported");function wr(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function So(e){if(typeof e=="string"&&(e=wr(e)),!Rr(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var co=class{clone(){return this._cloneInto()}},Vs={}.toString;function Io(e){let t=n=>e().update(So(n)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function gr(e,t,o,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,o,n);let r=BigInt(32),s=BigInt(4294967295),a=Number(o>>r&s),_=Number(o&s),d=n?4:0,R=n?0:4;e.setUint32(t+d,a,n),e.setUint32(t+R,_,n)}var po=class extends co{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=_o(this.buffer)}update(t){ho(this);let{view:o,buffer:n,blockLen:r}=this;t=So(t);let s=t.length;for(let a=0;a<s;){let _=Math.min(r-this.pos,s-a);if(_===r){let d=_o(t);for(;r<=s-a;a+=r)this.process(d,a);continue}n.set(t.subarray(a,a+_),this.pos),this.pos+=_,a+=_,this.pos===r&&(this.process(o,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){ho(this),Zo(t,this),this.finished=!0;let{buffer:o,view:n,blockLen:r,isLE:s}=this,{pos:a}=this;o[a++]=128,this.buffer.subarray(a).fill(0),this.padOffset>r-a&&(this.process(n,0),a=0);for(let m=a;m<r;m++)o[m]=0;gr(n,r-8,BigInt(this.length*8),s),this.process(n,0);let _=_o(t),d=this.outputLen;if(d%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let R=d/4,w=this.get();if(R>w.length)throw new Error("_sha2: outputLen bigger than state");for(let m=0;m<R;m++)_.setUint32(4*m,w[m],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:a,pos:_}=this;return t.length=r,t.pos=_,t.finished=s,t.destroyed=a,r%o&&t.buffer.set(n),t}};var yr=(e,t,o)=>e&t^~e&o,vr=(e,t,o)=>e&t^e&o^t&o,br=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]),Ke=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ue=new Uint32Array(64),ko=class extends po{constructor(){super(64,32,8,!1),this.A=Ke[0]|0,this.B=Ke[1]|0,this.C=Ke[2]|0,this.D=Ke[3]|0,this.E=Ke[4]|0,this.F=Ke[5]|0,this.G=Ke[6]|0,this.H=Ke[7]|0}get(){let{A:t,B:o,C:n,D:r,E:s,F:a,G:_,H:d}=this;return[t,o,n,r,s,a,_,d]}set(t,o,n,r,s,a,_,d){this.A=t|0,this.B=o|0,this.C=n|0,this.D=r|0,this.E=s|0,this.F=a|0,this.G=_|0,this.H=d|0}process(t,o){for(let m=0;m<16;m++,o+=4)Ue[m]=t.getUint32(o,!1);for(let m=16;m<64;m++){let T=Ue[m-15],P=Ue[m-2],G=ee(T,7)^ee(T,18)^T>>>3,B=ee(P,17)^ee(P,19)^P>>>10;Ue[m]=B+Ue[m-7]+G+Ue[m-16]|0}let{A:n,B:r,C:s,D:a,E:_,F:d,G:R,H:w}=this;for(let m=0;m<64;m++){let T=ee(_,6)^ee(_,11)^ee(_,25),P=w+T+yr(_,d,R)+br[m]+Ue[m]|0,B=(ee(n,2)^ee(n,13)^ee(n,22))+vr(n,r,s)|0;w=R,R=d,d=_,_=a+P|0,a=s,s=r,r=n,n=P+B|0}n=n+this.A|0,r=r+this.B|0,s=s+this.C|0,a=a+this.D|0,_=_+this.E|0,d=d+this.F|0,R=R+this.G|0,w=w+this.H|0,this.set(n,r,s,a,_,d,R,w)}roundClean(){Ue.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Do=Io(()=>new ko);var qo=Go(en());var tn=({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)}),a=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)}),R=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),w=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:R,Memo:e.Nat64}),m=e.Record({by:e.Opt(w)}),T=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),P=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}),u=e.Record({dissolve_timestamp_seconds:e.Nat64}),Y=e.Variant({RemoveHotKey:T,AddHotKey:P,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:u}),K=e.Record({operation:e.Opt(Y)}),se=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}),ae=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),H=e.Record({percentage_to_merge:e.Nat32}),b=e.Record({hash:e.Vec(e.Nat8)}),ie=e.Record({e8s:e.Nat64}),j=e.Record({to_account:e.Opt(b),amount:e.Opt(ie)}),ce=e.Variant({Spawn:a,Split:_,Follow:d,ClaimOrRefresh:m,Configure:K,RegisterVote:se,Merge:U,DisburseToNeuron:W,MakeProposal:t,StakeMaturity:ae,MergeMaturity:H,Disburse:j}),V=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:o}),k=e.Record({id:e.Opt(o),command:e.Opt(ce),neuron_id_or_subaccount:e.Opt(V)}),h=e.Record({basis_points:e.Opt(e.Nat64)}),f=e.Record({seconds:e.Opt(e.Nat64)}),l=e.Record({e8s:e.Opt(e.Nat64)}),_e=e.Record({reward_rate_transition_duration:e.Opt(f),initial_reward_rate:e.Opt(h),final_reward_rate:e.Opt(h)}),y=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(h),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(h),neuron_minimum_stake:e.Opt(l),proposal_wait_for_quiet_deadline_increase:e.Opt(f),proposal_initial_voting_period:e.Opt(f),proposal_rejection_fee:e.Opt(l),voting_reward_parameters:e.Opt(_e)}),z=e.Record({base64_encoding:e.Opt(e.Text)}),de=e.Record({transaction_fee:e.Opt(l),token_symbol:e.Opt(e.Text),token_logo:e.Opt(z),token_name:e.Opt(e.Text)}),pe=e.Record({id:e.Opt(e.Principal)}),ue=e.Record({dissolve_delay_interval:e.Opt(f),count:e.Opt(e.Nat64)}),le=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),me=e.Record({iso_codes:e.Vec(e.Text)}),Ne=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(ue),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(l),minimum_icp:e.Opt(l),minimum_direct_participation_icp:e.Opt(l),minimum_participant_icp:e.Opt(l),start_time:e.Opt(le),maximum_direct_participation_icp:e.Opt(l),maximum_icp:e.Opt(l),neurons_fund_investment_icp:e.Opt(l),restricted_countries:e.Opt(me)}),$=e.Record({total:e.Opt(l)}),fe=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(l)}),Re=e.Record({developer_neurons:e.Vec(fe)}),i=e.Record({treasury_distribution:e.Opt($),developer_distribution:e.Opt(Re),swap_distribution:e.Opt($)}),Oe=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(y),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(z),name:e.Opt(e.Text),ledger_parameters:e.Opt(de),description:e.Opt(e.Text),dapp_canisters:e.Vec(pe),swap_parameters:e.Opt(Ne),initial_token_distribution:e.Opt(i)}),we=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),O=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(b)}),ge=e.Record({dissolve_delay_seconds:e.Nat64}),ye=e.Record({to_account:e.Opt(b)}),ve=e.Variant({RewardToNeuron:ge,RewardToAccount:ye}),C=e.Record({node_provider:e.Opt(O),reward_mode:e.Opt(ve),amount_e8s:e.Nat64}),$e=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),Je=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt($e),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)}),Qe=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(Je)}),Xe=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Ye=e.Record({open_time_window:e.Opt(Xe)}),Ze=e.Record({request:e.Opt(Ye),swap_canister_id:e.Opt(e.Principal)}),Ie=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),ke=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(C)}),Z=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}),De=e.Record({principals:e.Vec(e.Principal)}),Le=e.Variant({ToRemove:O,ToAdd:O}),et=e.Record({change:e.Opt(Le)}),tt=e.Record({motion_text:e.Text}),ot=e.Variant({RegisterKnownNeuron:s,ManageNeuron:k,CreateServiceNervousSystem:Oe,ExecuteNnsFunction:we,RewardNodeProvider:C,OpenSnsTokenSwap:Qe,SetSnsTokenSwapOpenTimeWindow:Ze,SetDefaultFollowees:Ie,RewardNodeProviders:ke,ManageNetworkEconomics:Z,ApproveGenesisKyc:De,AddOrRemoveNodeProvider:et,Motion:tt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(ot),summary:e.Text}));let nt=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),xe=e.Record({timestamp:e.Nat64,rewards:e.Vec(C)}),Pe=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}),Te=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)}),Ve=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}),rt=e.Record({followers:e.Vec(o)}),st=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,rt))}),at=e.Variant({LastNeuronId:o}),Ce=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(at)}),it=e.Record({neuron_indexes_migration:e.Opt(Ce),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ce)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),ct=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),_t=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(ct)}),Me=e.Record({vote:e.Int32,voting_power:e.Nat64}),dt=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)}),pt=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)}),I=e.Record({neurons_fund_neuron_portions:e.Vec(pt)}),ut=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(dt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(I),ideal_matched_participation_function:e.Opt(ut),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),lt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(I)}),mt=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)}),g=e.Record({status:e.Opt(mt),canister_id:e.Opt(e.Principal)}),Nt=e.Record({ledger_index_canister_summary:e.Opt(g),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(g),ledger_canister_summary:e.Opt(g),swap_canister_summary:e.Opt(g),governance_canister_summary:e.Opt(g),root_canister_summary:e.Opt(g),dapp_canister_summaries:e.Vec(g)}),Ae=e.Record({swap_background_information:e.Opt(Nt)}),Fe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),ft=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Rt=e.Record({id:e.Opt(o),failure_reason:e.Opt(N),cf_participants:e.Vec(_t),ballots:e.Vec(e.Tuple(e.Nat64,Me)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(lt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Ae),latest_tally:e.Opt(Fe),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(ft),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Ot=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:m,MergeMaturity:H,Disburse:j}),wt=e.Record({command:e.Opt(Ot),timestamp:e.Nat64}),qe=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),gt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),S=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(qe),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(gt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Ve),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(nt),most_recent_monthly_node_provider_rewards:e.Opt(xe),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Pe),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(O),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(Z),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Te),to_claim_transfers:e.Vec(Ve),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,st)),migrations:e.Opt(it),proposals:e.Vec(e.Tuple(e.Nat64,Rt)),in_flight_commands:e.Vec(e.Tuple(e.Nat64,wt)),neurons:e.Vec(e.Tuple(e.Nat64,S)),genesis_timestamp_seconds:e.Nat64}),F=e.Variant({Ok:e.Null,Err:N}),yt=e.Variant({Error:N,NeuronId:o}),vt=e.Record({result:e.Opt(yt)}),Be=e.Variant({Ok:S,Err:N}),bt=e.Variant({Ok:Pe,Err:N}),ht=e.Variant({Ok:ke,Err:N}),q=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(qe),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(r),voting_power:e.Nat64,age_seconds:e.Nat64}),Ee=e.Variant({Ok:q,Err:N}),St=e.Record({nns_proposal_id:e.Opt(o)}),kt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(I)}),xt=e.Record({neurons_fund_audit_info:e.Opt(kt)}),Pt=e.Variant({Ok:xt,Err:N}),Tt=e.Record({result:e.Opt(Pt)}),Vt=e.Variant({Ok:O,Err:N}),D=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Nat64,Me)),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(Ae),latest_tally:e.Opt(Fe),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),Ct=e.Record({known_neurons:e.Vec(s)}),Mt=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),At=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,q)),full_neurons:e.Vec(S)}),Ft=e.Record({node_providers:e.Vec(O)}),qt=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)}),Bt=e.Record({proposal_info:e.Vec(D)}),L=e.Record({created_neuron_id:e.Opt(o)}),Et=e.Record({refreshed_neuron_id:e.Opt(o)}),Gt=e.Record({target_neuron:e.Opt(S),source_neuron:e.Opt(S),target_neuron_info:e.Opt(q),source_neuron_info:e.Opt(q)}),Kt=e.Record({proposal_id:e.Opt(o)}),Ut=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Wt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ht=e.Record({transfer_block_height:e.Nat64}),jt=e.Variant({Error:N,Spawn:L,Split:L,Follow:e.Record({}),ClaimOrRefresh:Et,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:Gt,DisburseToNeuron:L,MakeProposal:Kt,StakeMaturity:Ut,MergeMaturity:Wt,Disburse:Ht}),Ge=e.Record({command:e.Opt(jt)}),zt=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)}),$t=e.Variant({Committed:zt,Aborted:e.Record({})}),Jt=e.Record({result:e.Opt($t),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Qt=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)}),Xt=e.Variant({Committed:Qt,Aborted:e.Record({})}),Yt=e.Record({result:e.Opt(Xt),nns_proposal_id:e.Opt(e.Nat64)}),Zt=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)}),It=e.Record({neurons_fund_neuron_portions:e.Vec(Zt)}),Dt=e.Variant({Ok:It,Err:N}),Lt=e.Record({result:e.Opt(Dt)}),eo=e.Record({reward_account:e.Opt(b)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(o)],[F],[]),claim_or_refresh_neuron_from_account:e.Func([R],[vt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Be],[]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Be],[]),get_latest_reward_event:e.Func([],[Te],[]),get_metrics:e.Func([],[bt],[]),get_monthly_node_provider_rewards:e.Func([],[ht],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(xe)],[]),get_network_economics_parameters:e.Func([],[Z],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Ee],[]),get_neuron_info_by_id_or_subaccount:e.Func([V],[Ee],[]),get_neurons_fund_audit_info:e.Func([St],[Tt],[]),get_node_provider_by_caller:e.Func([e.Null],[Vt],[]),get_pending_proposals:e.Func([],[e.Vec(D)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(D)],[]),list_known_neurons:e.Func([],[Ct],[]),list_neurons:e.Func([Mt],[At],[]),list_node_providers:e.Func([],[Ft],[]),list_proposals:e.Func([qt],[Bt],[]),manage_neuron:e.Func([k],[Ge],[]),settle_community_fund_participation:e.Func([Jt],[F],[]),settle_neurons_fund_participation:e.Func([Yt],[Lt],[]),simulate_manage_neuron:e.Func([k],[Ge],[]),transfer_gtc_neuron:e.Func([o,o],[F],[]),update_node_provider:e.Func([eo],[F],[])})};var uo=({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)}),a=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)}),R=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),w=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:R,Memo:e.Nat64}),m=e.Record({by:e.Opt(w)}),T=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),P=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}),u=e.Record({dissolve_timestamp_seconds:e.Nat64}),Y=e.Variant({RemoveHotKey:T,AddHotKey:P,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:u}),K=e.Record({operation:e.Opt(Y)}),se=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}),ae=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),H=e.Record({percentage_to_merge:e.Nat32}),b=e.Record({hash:e.Vec(e.Nat8)}),ie=e.Record({e8s:e.Nat64}),j=e.Record({to_account:e.Opt(b),amount:e.Opt(ie)}),ce=e.Variant({Spawn:a,Split:_,Follow:d,ClaimOrRefresh:m,Configure:K,RegisterVote:se,Merge:U,DisburseToNeuron:W,MakeProposal:t,StakeMaturity:ae,MergeMaturity:H,Disburse:j}),V=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:o}),k=e.Record({id:e.Opt(o),command:e.Opt(ce),neuron_id_or_subaccount:e.Opt(V)}),h=e.Record({basis_points:e.Opt(e.Nat64)}),f=e.Record({seconds:e.Opt(e.Nat64)}),l=e.Record({e8s:e.Opt(e.Nat64)}),_e=e.Record({reward_rate_transition_duration:e.Opt(f),initial_reward_rate:e.Opt(h),final_reward_rate:e.Opt(h)}),y=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(h),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(h),neuron_minimum_stake:e.Opt(l),proposal_wait_for_quiet_deadline_increase:e.Opt(f),proposal_initial_voting_period:e.Opt(f),proposal_rejection_fee:e.Opt(l),voting_reward_parameters:e.Opt(_e)}),z=e.Record({base64_encoding:e.Opt(e.Text)}),de=e.Record({transaction_fee:e.Opt(l),token_symbol:e.Opt(e.Text),token_logo:e.Opt(z),token_name:e.Opt(e.Text)}),pe=e.Record({id:e.Opt(e.Principal)}),ue=e.Record({dissolve_delay_interval:e.Opt(f),count:e.Opt(e.Nat64)}),le=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),me=e.Record({iso_codes:e.Vec(e.Text)}),Ne=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(ue),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(l),minimum_icp:e.Opt(l),minimum_direct_participation_icp:e.Opt(l),minimum_participant_icp:e.Opt(l),start_time:e.Opt(le),maximum_direct_participation_icp:e.Opt(l),maximum_icp:e.Opt(l),neurons_fund_investment_icp:e.Opt(l),restricted_countries:e.Opt(me)}),$=e.Record({total:e.Opt(l)}),fe=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(l)}),Re=e.Record({developer_neurons:e.Vec(fe)}),i=e.Record({treasury_distribution:e.Opt($),developer_distribution:e.Opt(Re),swap_distribution:e.Opt($)}),Oe=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(y),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(z),name:e.Opt(e.Text),ledger_parameters:e.Opt(de),description:e.Opt(e.Text),dapp_canisters:e.Vec(pe),swap_parameters:e.Opt(Ne),initial_token_distribution:e.Opt(i)}),we=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),O=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(b)}),ge=e.Record({dissolve_delay_seconds:e.Nat64}),ye=e.Record({to_account:e.Opt(b)}),ve=e.Variant({RewardToNeuron:ge,RewardToAccount:ye}),C=e.Record({node_provider:e.Opt(O),reward_mode:e.Opt(ve),amount_e8s:e.Nat64}),$e=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),Je=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt($e),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)}),Qe=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(Je)}),Xe=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Ye=e.Record({open_time_window:e.Opt(Xe)}),Ze=e.Record({request:e.Opt(Ye),swap_canister_id:e.Opt(e.Principal)}),Ie=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),ke=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(C)}),Z=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}),De=e.Record({principals:e.Vec(e.Principal)}),Le=e.Variant({ToRemove:O,ToAdd:O}),et=e.Record({change:e.Opt(Le)}),tt=e.Record({motion_text:e.Text}),ot=e.Variant({RegisterKnownNeuron:s,ManageNeuron:k,CreateServiceNervousSystem:Oe,ExecuteNnsFunction:we,RewardNodeProvider:C,OpenSnsTokenSwap:Qe,SetSnsTokenSwapOpenTimeWindow:Ze,SetDefaultFollowees:Ie,RewardNodeProviders:ke,ManageNetworkEconomics:Z,ApproveGenesisKyc:De,AddOrRemoveNodeProvider:et,Motion:tt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(ot),summary:e.Text}));let nt=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),xe=e.Record({timestamp:e.Nat64,rewards:e.Vec(C)}),Pe=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}),Te=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)}),Ve=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}),rt=e.Record({followers:e.Vec(o)}),st=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,rt))}),at=e.Variant({LastNeuronId:o}),Ce=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(at)}),it=e.Record({neuron_indexes_migration:e.Opt(Ce),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ce)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),ct=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),_t=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(ct)}),Me=e.Record({vote:e.Int32,voting_power:e.Nat64}),dt=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)}),pt=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)}),I=e.Record({neurons_fund_neuron_portions:e.Vec(pt)}),ut=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(dt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(I),ideal_matched_participation_function:e.Opt(ut),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),lt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(I)}),mt=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)}),g=e.Record({status:e.Opt(mt),canister_id:e.Opt(e.Principal)}),Nt=e.Record({ledger_index_canister_summary:e.Opt(g),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(g),ledger_canister_summary:e.Opt(g),swap_canister_summary:e.Opt(g),governance_canister_summary:e.Opt(g),root_canister_summary:e.Opt(g),dapp_canister_summaries:e.Vec(g)}),Ae=e.Record({swap_background_information:e.Opt(Nt)}),Fe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),ft=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Rt=e.Record({id:e.Opt(o),failure_reason:e.Opt(N),cf_participants:e.Vec(_t),ballots:e.Vec(e.Tuple(e.Nat64,Me)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(lt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Ae),latest_tally:e.Opt(Fe),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(ft),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Ot=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:m,MergeMaturity:H,Disburse:j}),wt=e.Record({command:e.Opt(Ot),timestamp:e.Nat64}),qe=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),gt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),S=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(qe),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(gt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Ve),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(nt),most_recent_monthly_node_provider_rewards:e.Opt(xe),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Pe),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(O),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(Z),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Te),to_claim_transfers:e.Vec(Ve),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,st)),migrations:e.Opt(it),proposals:e.Vec(e.Tuple(e.Nat64,Rt)),in_flight_commands:e.Vec(e.Tuple(e.Nat64,wt)),neurons:e.Vec(e.Tuple(e.Nat64,S)),genesis_timestamp_seconds:e.Nat64}),F=e.Variant({Ok:e.Null,Err:N}),yt=e.Variant({Error:N,NeuronId:o}),vt=e.Record({result:e.Opt(yt)}),Be=e.Variant({Ok:S,Err:N}),bt=e.Variant({Ok:Pe,Err:N}),ht=e.Variant({Ok:ke,Err:N}),q=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(qe),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(r),voting_power:e.Nat64,age_seconds:e.Nat64}),Ee=e.Variant({Ok:q,Err:N}),St=e.Record({nns_proposal_id:e.Opt(o)}),kt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(I)}),xt=e.Record({neurons_fund_audit_info:e.Opt(kt)}),Pt=e.Variant({Ok:xt,Err:N}),Tt=e.Record({result:e.Opt(Pt)}),Vt=e.Variant({Ok:O,Err:N}),D=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Nat64,Me)),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(Ae),latest_tally:e.Opt(Fe),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),Ct=e.Record({known_neurons:e.Vec(s)}),Mt=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),At=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,q)),full_neurons:e.Vec(S)}),Ft=e.Record({node_providers:e.Vec(O)}),qt=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)}),Bt=e.Record({proposal_info:e.Vec(D)}),L=e.Record({created_neuron_id:e.Opt(o)}),Et=e.Record({refreshed_neuron_id:e.Opt(o)}),Gt=e.Record({target_neuron:e.Opt(S),source_neuron:e.Opt(S),target_neuron_info:e.Opt(q),source_neuron_info:e.Opt(q)}),Kt=e.Record({proposal_id:e.Opt(o)}),Ut=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Wt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ht=e.Record({transfer_block_height:e.Nat64}),jt=e.Variant({Error:N,Spawn:L,Split:L,Follow:e.Record({}),ClaimOrRefresh:Et,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:Gt,DisburseToNeuron:L,MakeProposal:Kt,StakeMaturity:Ut,MergeMaturity:Wt,Disburse:Ht}),Ge=e.Record({command:e.Opt(jt)}),zt=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)}),$t=e.Variant({Committed:zt,Aborted:e.Record({})}),Jt=e.Record({result:e.Opt($t),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Qt=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)}),Xt=e.Variant({Committed:Qt,Aborted:e.Record({})}),Yt=e.Record({result:e.Opt(Xt),nns_proposal_id:e.Opt(e.Nat64)}),Zt=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)}),It=e.Record({neurons_fund_neuron_portions:e.Vec(Zt)}),Dt=e.Variant({Ok:It,Err:N}),Lt=e.Record({result:e.Opt(Dt)}),eo=e.Record({reward_account:e.Opt(b)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(o)],[F],[]),claim_or_refresh_neuron_from_account:e.Func([R],[vt],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_full_neuron:e.Func([e.Nat64],[Be],["query"]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Be],["query"]),get_latest_reward_event:e.Func([],[Te],["query"]),get_metrics:e.Func([],[bt],["query"]),get_monthly_node_provider_rewards:e.Func([],[ht],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(xe)],["query"]),get_network_economics_parameters:e.Func([],[Z],["query"]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],["query"]),get_neuron_info:e.Func([e.Nat64],[Ee],["query"]),get_neuron_info_by_id_or_subaccount:e.Func([V],[Ee],["query"]),get_neurons_fund_audit_info:e.Func([St],[Tt],["query"]),get_node_provider_by_caller:e.Func([e.Null],[Vt],["query"]),get_pending_proposals:e.Func([],[e.Vec(D)],["query"]),get_proposal_info:e.Func([e.Nat64],[e.Opt(D)],["query"]),list_known_neurons:e.Func([],[Ct],["query"]),list_neurons:e.Func([Mt],[At],["query"]),list_node_providers:e.Func([],[Ft],["query"]),list_proposals:e.Func([qt],[Bt],["query"]),manage_neuron:e.Func([k],[Ge],[]),settle_community_fund_participation:e.Func([Jt],[F],[]),settle_neurons_fund_participation:e.Func([Yt],[Lt],[]),simulate_manage_neuron:e.Func([k],[Ge],[]),transfer_gtc_neuron:e.Func([o,o],[F],[]),update_node_provider:e.Func([eo],[F],[])})};var rn=require("@dfinity/ledger-icp"),te=require("@dfinity/principal"),E=require("@dfinity/utils");var sn=e=>({id:e}),xo=e=>({id:e}),hr=e=>({followees:e.map(xo)}),Sr=e=>{if("NeuronId"in e)return{NeuronId:{id:e.NeuronId}};if("Subaccount"in e)return{Subaccount:Uint8Array.from(e.Subaccount)};throw new v(e)},lo=e=>e.basisPoints!==void 0?{basis_points:[e.basisPoints]}:{basis_points:[]},ne=e=>e.seconds!==void 0?{seconds:[e.seconds]}:{seconds:[]},kr=e=>e.secondsAfterUtcMidnight!==void 0?{seconds_after_utc_midnight:[e.secondsAfterUtcMidnight]}:{seconds_after_utc_midnight:[]},xr=e=>({iso_codes:e.isoCodes}),Q=e=>e.e8s!==void 0?{e8s:[e.e8s]}:{e8s:[]},an=e=>e.base64Encoding!==void 0?{base64_encoding:[e.base64Encoding]}:{base64_encoding:[]},Pr=e=>({reward_rate_transition_duration:e.rewardRateTransitionDuration!==void 0?[ne(e.rewardRateTransitionDuration)]:[],initial_reward_rate:e.initialRewardRate!==void 0?[lo(e.initialRewardRate)]:[],final_reward_rate:e.finalRewardRate!==void 0?[lo(e.finalRewardRate)]:[]}),Tr=e=>({transaction_fee:e.transactionFee!==void 0?[Q(e.transactionFee)]:[],token_symbol:e.tokenSymbol!==void 0?[e.tokenSymbol]:[],token_logo:e.tokenLogo!==void 0?[an(e.tokenLogo)]:[],token_name:e.tokenName!==void 0?[e.tokenName]:[]}),Vr=e=>({minimum_participants:e.minimumParticipants!==void 0?[e.minimumParticipants]:[],duration:e.duration!==void 0?[ne(e.duration)]:[],neuron_basket_construction_parameters:e.neuronBasketConstructionParameters!==void 0?[Cr(e.neuronBasketConstructionParameters)]:[],confirmation_text:e.confirmationText!==void 0?[e.confirmationText]:[],maximum_participant_icp:e.maximumParticipantIcp!==void 0?[Q(e.maximumParticipantIcp)]:[],neurons_fund_investment_icp:e.neuronsFundInvestmentIcp!==void 0?[Q(e.neuronsFundInvestmentIcp)]:[],minimum_icp:e.minimumIcp!==void 0?[Q(e.minimumIcp)]:[],minimum_participant_icp:e.minimumParticipantIcp!==void 0?[Q(e.minimumParticipantIcp)]:[],start_time:e.startTime!==void 0?[kr(e.startTime)]:[],maximum_icp:e.maximumIcp!==void 0?[Q(e.maximumIcp)]:[],restricted_countries:e.restrictedCountries!==void 0?[xr(e.restrictedCountries)]:[],maximum_direct_participation_icp:e.maxDirectParticipationIcp!==void 0?[Q(e.maxDirectParticipationIcp)]:[],minimum_direct_participation_icp:e.minDirectParticipationIcp!==void 0?[Q(e.minDirectParticipationIcp)]:[],neurons_fund_participation:(0,E.toNullable)(e.neuronsFundParticipation)}),Cr=e=>({dissolve_delay_interval:e.dissolveDelayInterval!==void 0?[ne(e.dissolveDelayInterval)]:[],count:e.count!==void 0?[e.count]:[]}),Mr=e=>({neuron_maximum_dissolve_delay_bonus:e.neuronMaximumDissolveDelayBonus!==void 0?[lo(e.neuronMaximumDissolveDelayBonus)]:[],neuron_maximum_age_for_age_bonus:e.neuronMaximumAgeForAgeBonus!==void 0?[ne(e.neuronMaximumAgeForAgeBonus)]:[],neuron_maximum_dissolve_delay:e.neuronMaximumDissolveDelay!==void 0?[ne(e.neuronMaximumDissolveDelay)]:[],neuron_minimum_dissolve_delay_to_vote:e.neuronMinimumDissolveDelayToVote!==void 0?[ne(e.neuronMinimumDissolveDelayToVote)]:[],neuron_maximum_age_bonus:e.neuronMaximumAgeBonus!==void 0?[lo(e.neuronMaximumAgeBonus)]:[],neuron_minimum_stake:e.neuronMinimumStake!==void 0?[Q(e.neuronMinimumStake)]:[],proposal_wait_for_quiet_deadline_increase:e.proposalWaitForQuietDeadlineIncrease!==void 0?[ne(e.proposalWaitForQuietDeadlineIncrease)]:[],proposal_initial_voting_period:e.proposalInitialVotingPeriod!==void 0?[ne(e.proposalInitialVotingPeriod)]:[],proposal_rejection_fee:e.proposalRejectionFee!==void 0?[Q(e.proposalRejectionFee)]:[],voting_reward_parameters:e.votingRewardParameters!==void 0?[Pr(e.votingRewardParameters)]:[]}),on=e=>({total:e.total!==void 0?[Q(e.total)]:[]}),Ar=e=>({treasury_distribution:e.treasuryDistribution!==void 0?[on(e.treasuryDistribution)]:[],developer_distribution:e.developerDistribution!==void 0?[qr(e.developerDistribution)]:[],swap_distribution:e.swapDistribution!==void 0?[on(e.swapDistribution)]:[]}),Fr=e=>({controller:e.controller!==void 0?[te.Principal.fromText(e.controller)]:[],dissolve_delay:e.dissolveDelay!==void 0?[ne(e.dissolveDelay)]:[],memo:e.memo!==void 0?[e.memo]:[],vesting_period:e.vestingPeriod!==void 0?[ne(e.vestingPeriod)]:[],stake:e.stake!==void 0?[Q(e.stake)]:[]}),qr=e=>({developer_neurons:e.developerNeurons.map(Fr)}),Br=e=>({url:e.url!==void 0?[e.url]:[],governance_parameters:e.governanceParameters!==void 0?[Mr(e.governanceParameters)]:[],fallback_controller_principal_ids:e.fallbackControllerPrincipalIds.map(te.Principal.fromText),logo:e.logo!==void 0?[an(e.logo)]:[],name:e.name!==void 0?[e.name]:[],ledger_parameters:e.ledgerParameters!==void 0?[Tr(e.ledgerParameters)]:[],description:e.description!==void 0?[e.description]:[],dapp_canisters:e.dappCanisters.map(t=>({id:[te.Principal.fromText(t)]})),swap_parameters:e.swapParameters!==void 0?[Vr(e.swapParameters)]:[],initial_token_distribution:e.initialTokenDistribution!==void 0?[Ar(e.initialTokenDistribution)]:[]}),cn=e=>{if("ExecuteNnsFunction"in e){let t=e.ExecuteNnsFunction;if(t.payloadBytes===void 0)throw new Error("payloadBytes not found");return{ExecuteNnsFunction:{nns_function:t.nnsFunctionId,payload:(0,E.arrayBufferToUint8Array)(t.payloadBytes)}}}if("ManageNeuron"in e){let t=e.ManageNeuron;return{ManageNeuron:Wr(t)}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(te.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}}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{node_provider:t.nodeProvider?[mo(t.nodeProvider)]:[],amount_e8s:t.amountE8s,reward_mode:t.rewardMode!=null?[nn(t.rewardMode)]:[]}}}if("RewardNodeProviders"in e){let t=e.RewardNodeProviders;return{RewardNodeProviders:{use_registry_derived_rewards:t.useRegistryDerivedRewards===void 0?[]:[t.useRegistryDerivedRewards],rewards:t.rewards.map(o=>({node_provider:o.nodeProvider?[mo(o.nodeProvider)]:[],amount_e8s:o.amountE8s,reward_mode:o.rewardMode!=null?[nn(o.rewardMode)]:[]}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change?[Kr(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,hr(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?[]:[te.Principal.fromText(o)]}}}if("OpenSnsTokenSwap"in e){let{communityFundInvestmentE8s:t,targetSwapCanisterId:o,params:n}=e.OpenSnsTokenSwap;return{OpenSnsTokenSwap:{community_fund_investment_e8s:(0,E.toNullable)(t),target_swap_canister_id:(0,E.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,E.toNullable)(n.saleDelaySeconds),neuron_basket_construction_parameters:(0,E.toNullable)(n.neuronBasketConstructionParameters),max_direct_participation_icp_e8s:(0,E.toNullable)(n.maxDirectParticipationIcpE8s),min_direct_participation_icp_e8s:(0,E.toNullable)(n.minDirectParticipationIcpE8s)}]}}}if("CreateServiceNervousSystem"in e)return{CreateServiceNervousSystem:Br(e.CreateServiceNervousSystem)};throw new v(e)},Er=e=>{if("Split"in e)return{Split:{amount_e8s:e.Split.amount}};if("Follow"in e){let t=e.Follow;return{Follow:{topic:t.topic,followees:t.followees.map(xo)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by?[Ur(t.by)]:[]}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation?[Gr(t.operation)]:[]}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal?[sn(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?[te.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,E.toNullable)(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{url:t.url,title:[],action:t.action?[cn(t.action)]:[],summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{to_account:t.toAccountId?[Po(t.toAccountId)]:[],amount:t.amount?[_n(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?[te.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 v(e)},Gr=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hot_key_to_remove:t.hotKeyToRemove!=null?[te.Principal.fromText(t.hotKeyToRemove)]:[]}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{new_hot_key:t.newHotKey?[te.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 v(e)},Kr=e=>{if("ToRemove"in e)return{ToRemove:mo(e.ToRemove)};if("ToAdd"in e)return{ToAdd:mo(e.ToAdd)};throw new v(e)},mo=e=>({id:e.id!=null?[te.Principal.fromText(e.id)]:[],reward_account:e.rewardAccount!=null?[Po(e.rewardAccount)]:[]}),_n=e=>({e8s:e}),Po=e=>({hash:(0,rn.accountIdentifierToBytes)(e)}),nn=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 v(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?[e.MemoAndController.controller]:[]}};throw new v(e)},dn=e=>({neuron_ids:BigUint64Array.from(e??[]),include_neurons_readable_by_caller:!e}),Wr=({id:e,command:t,neuronIdOrSubaccount:o})=>({id:e?[xo(e)]:[],command:t?[Er(t)]:[],neuron_id_or_subaccount:o?[Sr(o)]:[]}),pn=({includeRewardStatus:e,beforeProposal:t,excludeTopic:o,includeStatus:n,limit:r,includeAllManageNeuronProposals:s,omitLargeFields:a})=>({include_reward_status:Int32Array.from(e),before_proposal:t?[sn(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,E.toNullable)(a)}),un=e=>({id:[],command:[{ClaimOrRefresh:{by:[{NeuronIdOrSubaccount:{}}]}}],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}),ln=({memo:e,controller:t})=>{let o={ClaimOrRefresh:{by:[{MemoAndController:{controller:t==null?[]:[t],memo:e}}]}};return{id:[],command:[o],neuron_id_or_subaccount:[]}},mn=({neuronId:e,amount:t})=>({id:[],command:[{Split:{amount_e8s:t}}],neuron_id_or_subaccount:[{NeuronId:{id:e}}]});var Nn=({neuronId:e,vote:t,proposalId:o})=>We({neuronId:e,command:{RegisterVote:{vote:t,proposal:[{id:o}]}}}),fn=e=>{let t={MakeProposal:{url:e.url,title:e.title!=null?[e.title]:[],summary:e.summary,action:[cn(e.action)]}};return{id:[],command:[t],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}},Rn=({neuronId:e,topic:t,followees:o})=>We({neuronId:e,command:{Follow:{topic:t,followees:o.map(n=>({id:n}))}}}),On=({neuronId:e,toAccountIdentifier:t,amount:o})=>We({neuronId:e,command:{Disburse:{to_account:t!==void 0?[t.toAccountIdentifierHash()]:[],amount:o!==void 0?[_n(o)]:[]}}}),wn=({neuronId:e,percentageToMerge:t})=>We({neuronId:e,command:{MergeMaturity:{percentage_to_merge:t}}}),gn=({neuronId:e,percentageToStake:t})=>We({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,E.toNullable)(t)}}}),yn=({neuronId:e,percentageToSpawn:t,newController:o,nonce:n})=>We({neuronId:e,command:{Spawn:{percentage_to_spawn:t===void 0?[]:[t],new_controller:o===void 0?[]:[o],nonce:n===void 0?[]:[n]}}}),vn=({neuronId:e,principal:t})=>be({neuronId:e,operation:{AddHotKey:{new_hot_key:[t]}}}),bn=({neuronId:e,principal:t})=>be({neuronId:e,operation:{RemoveHotKey:{hot_key_to_remove:[t]}}}),hn=({neuronId:e,additionalDissolveDelaySeconds:t})=>be({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Sn=({neuronId:e,dissolveDelaySeconds:t})=>be({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:BigInt(t)}}}),kn=e=>be({neuronId:e,operation:{JoinCommunityFund:{}}}),xn=({neuronId:e,autoStake:t})=>be({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),Pn=e=>be({neuronId:e,operation:{LeaveCommunityFund:{}}}),To=({sourceNeuronId:e,targetNeuronId:t})=>We({neuronId:t,command:{Merge:{source_neuron_id:[{id:e}]}}}),Tn=e=>be({neuronId:e,operation:{StartDissolving:{}}}),Vn=e=>be({neuronId:e,operation:{StopDissolving:{}}}),We=({neuronId:e,command:t})=>({id:[{id:e}],command:[t],neuron_id_or_subaccount:[]}),be=({neuronId:e,operation:t})=>We({neuronId:e,command:{Configure:{operation:[t]}}});var fo=require("@dfinity/principal");var Vo=require("@dfinity/agent"),M=()=>import("@dfinity/nns-proto"),No=async({agent:e,canisterId:t,methodName:o,arg:n})=>{let r=await e.call(t,{methodName:o,arg:n,effectiveCanisterId:t});if(!r.response.ok)throw new Error(["Call failed:",` Method: ${o}`,` Canister ID: ${t}`,` Request ID: ${r.requestId}`,` HTTP status code: ${r.response.status}`,` HTTP status text: ${r.response.statusText}`].join(`
|
|
2
|
-
`));let s=await Vo.polling.pollForResponse(e,t,r.requestId,Vo.polling.defaultStrategy());return new Uint8Array(s)};var Cn=async e=>{let{PrincipalId:t,ManageNeuron:o,NeuronId:n}=await M(),r=new t;r.setSerializedId(fo.Principal.fromText(e.principal).toUint8Array());let s=new o.AddHotKey;s.setNewHotKey(r);let a=new o.Configure;a.setAddHotKey(s);let _=new o;_.setConfigure(a);let d=new n;return d.setId(e.neuronId.toString()),_.setNeuronId(d),_},Mn=async e=>{let{PrincipalId:t,ManageNeuron:o,NeuronId:n}=await M(),r=new t;r.setSerializedId(fo.Principal.fromText(e.principal).toUint8Array());let s=new o.RemoveHotKey;s.setHotKeyToRemove(r);let a=new o.Configure;a.setRemoveHotKey(s);let _=new o;_.setConfigure(a);let d=new n;return d.setId(e.neuronId.toString()),_.setNeuronId(d),_},An=async({neuronId:e,additionalDissolveDelaySeconds:t})=>{let{ManageNeuron:o,NeuronId:n}=await M(),r=new o.IncreaseDissolveDelay;r.setAdditionalDissolveDelaySeconds(t);let s=new o.Configure;s.setIncreaseDissolveDelay(r);let a=new o;a.setConfigure(s);let _=new n;return _.setId(e.toString()),a.setNeuronId(_),a},Fn=async e=>{let{ManageNeuron:t,NeuronId:o}=await M(),n=new t.Configure;n.setStartDissolving(new t.StartDissolving);let r=new t;r.setConfigure(n);let s=new o;return s.setId(e.toString()),r.setNeuronId(s),r},qn=async e=>{let{ManageNeuron:t,NeuronId:o}=await M(),n=new t.Configure;n.setStopDissolving(new t.StopDissolving);let r=new t;r.setConfigure(n);let s=new o;return s.setId(e.toString()),r.setNeuronId(s),r},Bn=async e=>{let{ManageNeuron:t,NeuronId:o}=await M(),n=new t.Configure;n.setJoinCommunityFund(new t.JoinCommunityFund);let r=new t;r.setConfigure(n);let s=new o;return s.setId(e.toString()),r.setNeuronId(s),r},En=async e=>{let{ManageNeuron:t,NeuronId:o,AccountIdentifier:n}=await M(),r=new t.Disburse;if(e.toAccountId){let _=new n;_.setHash(Uint8Array.from(Buffer.from(e.toAccountId,"hex"))),r.setToAccount(_)}if(e.amount!=null){let _=new t.Disburse.Amount;_.setE8s(e.amount.toString()),r.setAmount(_)}let s=new t;s.setDisburse(r);let a=new o;return a.setId(e.neuronId.toString()),s.setNeuronId(a),s},Gn=async e=>{let{ManageNeuron:t,NeuronId:o}=await M(),n=new t.MergeMaturity;n.setPercentageToMerge(e.percentageToMerge);let r=new t,s=new o;return s.setId(e.neuronId.toString()),r.setNeuronId(s),r.setMergeMaturity(n),r},Kn=async e=>{let{ManageNeuron:t,NeuronId:o,PrincipalId:n}=await M(),r=new t.Spawn;if(e.newController){let _=new n;_.setSerializedId(fo.Principal.fromText(e.newController).toUint8Array().slice(4)),r.setNewController(_)}e.percentageToSpawn!==void 0&&r.setPercentageToSpawn(e.percentageToSpawn);let s=new t;s.setSpawn(r);let a=new o;return a.setId(e.neuronId.toString()),s.setNeuronId(a),s};var he=require("@dfinity/ledger-icp"),Ro=require("@dfinity/principal"),c=require("@dfinity/utils");var Co=({neuronId:e,neuronInfo:t,rawNeuron:o,canisterId:n})=>{let r=o?Hr({neuron:o,canisterId:n}):void 0;return{neuronId:e,dissolveDelaySeconds:t.dissolve_delay_seconds,recentBallots:t.recent_ballots.map(zn),neuronType:(0,c.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}},Hr=({neuron:e,canisterId:t})=>({id:e.id.length?He(e.id[0]):void 0,stakedMaturityE8sEquivalent:(0,c.fromNullable)(e.staked_maturity_e8s_equivalent),controller:e.controller.length?e.controller[0].toString():void 0,recentBallots:e.recent_ballots.map(zn),neuronType:(0,c.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,c.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,he.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?jr(e.dissolve_state[0]):void 0,spawnAtTimesSeconds:e.spawn_at_timestamp_seconds[0],followees:e.followees.map(([o,n])=>$n({topic:o,followees:n}))}),jn=e=>({id:(0,c.nonNullish)(e.id)?(0,c.toNullable)({id:e.id}):[],staked_maturity_e8s_equivalent:(0,c.toNullable)(e.stakedMaturityE8sEquivalent),controller:(0,c.nonNullish)(e.controller)?(0,c.toNullable)(Ro.Principal.from(e.controller)):[],recent_ballots:e.recentBallots.map(t=>({vote:t.vote,proposal_id:(0,c.nonNullish)(t.proposalId)?(0,c.toNullable)({id:t.proposalId}):[]})),kyc_verified:e.kycVerified,neuron_type:(0,c.toNullable)(e.neuronType),not_for_profit:e.notForProfit,cached_neuron_stake_e8s:e.cachedNeuronStake,created_timestamp_seconds:e.createdTimestampSeconds,auto_stake_maturity:(0,c.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=>Ro.Principal.from(t)),account:he.AccountIdentifier.fromHex(e.accountIdentifier).toUint8Array(),joined_community_fund_timestamp_seconds:(0,c.toNullable)(e.joinedCommunityFundTimestampSeconds),dissolve_state:(0,c.nonNullish)(e.dissolveState)?[e.dissolveState]:[],spawn_at_timestamp_seconds:(0,c.toNullable)(e.spawnAtTimesSeconds),followees:e.followees.map(t=>[t.topic,{followees:t.followees.map(o=>({id:o}))}]),transfer:[],known_neuron_data:[]}),zn=({vote:e,proposal_id:t})=>({vote:e,proposalId:t.length?He(t[0]):void 0}),jr=e=>"DissolveDelaySeconds"in e?{DissolveDelaySeconds:e.DissolveDelaySeconds}:{WhenDissolvedTimestampSeconds:e.WhenDissolvedTimestampSeconds},$n=({topic:e,followees:t})=>({topic:e,followees:t.followees.map(He)}),He=({id:e})=>e,zr=e=>{if("NeuronId"in e)return{NeuronId:e.NeuronId.id};if("Subaccount"in e)return{Subaccount:(0,c.uint8ArrayToArrayOfNumber)(Uint8Array.from(e.Subaccount))};throw new v(e)},$r=({neuronId:e,ballot:t})=>{let{vote:o,voting_power:n}=t;return{neuronId:e,vote:o,votingPower:n}},Jr=({title:e,url:t,action:o,summary:n})=>({title:e.length?e[0]:void 0,url:t,action:o.length?Jn(o[0]):void 0,summary:n}),Jn=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?He(o.id[0]):void 0,command:o.command.length?Xr(o.command[0]):void 0,neuronIdOrSubaccount:o.neuron_id_or_subaccount.length?zr(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}}}if("RewardNodeProvider"in e){let o=e.RewardNodeProvider;return{RewardNodeProvider:{nodeProvider:o.node_provider.length?Oo(o.node_provider[0]):void 0,amountE8s:o.amount_e8s,rewardMode:o.reward_mode.length?Un(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?Oo(n.node_provider[0]):void 0,amountE8s:n.amount_e8s,rewardMode:n.reward_mode.length?Un(n.reward_mode[0]):void 0}))}}}if("AddOrRemoveNodeProvider"in e){let o=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:o.change.length?Zr(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])=>$n({topic:n,followees:r}))}};if("RegisterKnownNeuron"in e){let o=e.RegisterKnownNeuron;return{RegisterKnownNeuron:Lr(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,c.fromNullable)(o.params);return{OpenSnsTokenSwap:{communityFundInvestmentE8s:(0,c.fromNullable)(o.community_fund_investment_e8s),targetSwapCanisterId:(0,c.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,c.fromNullable)(n.sale_delay_seconds),neuronBasketConstructionParameters:(0,c.fromNullable)(n.neuron_basket_construction_parameters),maxDirectParticipationIcpE8s:(0,c.fromNullable)(n.max_direct_participation_icp_e8s),minDirectParticipationIcpE8s:(0,c.fromNullable)(n.min_direct_participation_icp_e8s)}}}}if("CreateServiceNervousSystem"in e){let o=e.CreateServiceNervousSystem;return{CreateServiceNervousSystem:{url:(0,c.fromNullable)(o.url),governanceParameters:_s((0,c.fromNullable)(o.governance_parameters)),fallbackControllerPrincipalIds:o.fallback_controller_principal_ids.map(n=>n.toString()),logo:In((0,c.fromNullable)(o.logo)),name:(0,c.fromNullable)(o.name),ledgerParameters:is((0,c.fromNullable)(o.ledger_parameters)),description:(0,c.fromNullable)(o.description),dappCanisters:o.dapp_canisters.map(as)??[],swapParameters:ps((0,c.fromNullable)(o.swap_parameters)),initialTokenDistribution:ms((0,c.fromNullable)(o.initial_token_distribution))}}}throw new v(e)},Qr=e=>({no:e.no,yes:e.yes,total:e.total,timestampSeconds:e.timestamp_seconds}),Xr=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(He)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by.length?Dr(t.by[0]):void 0}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation.length?Yr(t.operation[0]):void 0}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal.length?He(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,c.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?Jn(t.action[0]):void 0,summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{toAccountId:t.to_account.length?Mo(t.to_account[0]):void 0,amount:t.amount.length?Ir(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 v(e)},Yr=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 v(e)},Zr=e=>{if("ToRemove"in e)return{ToRemove:Oo(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Oo(e.ToAdd)};throw new v(e)},Oo=e=>({id:e.id.length?e.id[0].toString():void 0,rewardAccount:e.reward_account.length?Mo(e.reward_account[0]):void 0}),Ir=e=>e.e8s,Mo=e=>(0,he.accountIdentifierFromBytes)(new Uint8Array(e.hash)),Un=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?Mo(e.RewardToAccount.to_account[0]):void 0}};throw new v(e)},Dr=e=>{if("NeuronIdOrSubaccount"in e)return{NeuronIdOrSubaccount:{}};if("Memo"in e)return{Memo:e.Memo};if("MemoAndController"in e)return{MemoAndController:{memo:e.MemoAndController.memo,controller:e.MemoAndController.controller.length?e.MemoAndController.controller[0]:void 0}};throw new v(e)},Ao=e=>({id:e.id.length?He(e.id[0]):void 0,ballots:e.ballots.map(t=>$r({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,c.fromNullable)(e.deadline_timestamp_seconds),decidedTimestampSeconds:e.decided_timestamp_seconds,proposal:e.proposal.length?Jr(e.proposal[0]):void 0,proposer:e.proposer.length?He(e.proposer[0]):void 0,latestTally:e.latest_tally.length?Qr(e.latest_tally[0]):void 0,executedTimestampSeconds:e.executed_timestamp_seconds,topic:e.topic,status:e.status,rewardStatus:e.reward_status}),Qn=({response:{neuron_infos:e,full_neurons:t},canisterId:o})=>e.map(([n,r])=>Co({neuronId:n,neuronInfo:r,rawNeuron:t.find(s=>s.id.length&&s.id[0].id===n),canisterId:o})),Xn=({proposal_info:e})=>({proposals:e.map(Ao)}),Lr=({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])??""}},Yn=e=>{let t=e.getProposalId();return{vote:e.getVote(),proposalId:t!==void 0?BigInt(t.getId()):void 0}},es=e=>e!=null&&e.hasWhenDissolvedTimestampSeconds()?2:e!=null&&e.hasDissolveDelaySeconds()?e.getDissolveDelaySeconds()==="0"?3:1:0,ts=e=>e.toArray().map(([t,o])=>{var n;return{topic:Number(t),followees:((n=o.getFolloweesList)==null?void 0:n.call(o).map(r=>BigInt(r.getId())))??[]}}),Wn=e=>Ro.Principal.fromUint8Array(e.getSerializedId_asU8()).toText(),os=({neuron:e,canisterId:t})=>{let o=he.SubAccount.fromBytes(e.getAccount_asU8());return he.AccountIdentifier.fromPrincipal({principal:t,subAccount:o})},ns=({pbNeuron:e,pbNeuronInfo:t,canisterId:o})=>{let n=e.getId(),r=e.getController(),s=r===void 0?r:Wn(r),a;return e.hasWhenDissolvedTimestampSeconds()?a={WhenDissolvedTimestampSeconds:BigInt(e.getWhenDissolvedTimestampSeconds())}:e.hasDissolveDelaySeconds()&&(a={DissolveDelaySeconds:BigInt(e.getDissolveDelaySeconds())}),{id:n===void 0?void 0:BigInt(n.getId()),stakedMaturityE8sEquivalent:void 0,controller:s,recentBallots:t.getRecentBallotsList().map(Yn),neuronType:void 0,kycVerified:e.getKycVerified(),notForProfit:e.getNotForProfit(),cachedNeuronStake:BigInt(e.getCachedNeuronStakeE8s()),createdTimestampSeconds:BigInt(e.getCreatedTimestampSeconds()),autoStakeMaturity:void 0,maturityE8sEquivalent:BigInt(e.getMaturityE8sEquivalent()),agingSinceTimestampSeconds:BigInt(e.getAgingSinceTimestampSeconds()),spawnAtTimesSeconds:e.hasSpawnAtTimestampSeconds()?BigInt(e.getSpawnAtTimestampSeconds()):void 0,neuronFees:BigInt(e.getNeuronFeesE8s()),hotKeys:e.getHotKeysList().map(Wn),accountIdentifier:os({neuron:e,canisterId:o}).toHex(),joinedCommunityFundTimestampSeconds:void 0,dissolveState:a,followees:ts(e.getFolloweesMap())}},Zn=({pbNeurons:e,canisterId:t})=>o=>{let n=e.find(s=>{var a;return((a=s.getId())==null?void 0:a.getId())===o.getKey()}),r=o.getValue();if(r===void 0)throw new Error(`NeuronInfo not present for neuron ${o.getKey()}`);return{neuronId:BigInt(o.getKey()),dissolveDelaySeconds:BigInt(r.getDissolveDelaySeconds()),recentBallots:r.getRecentBallotsList().map(Yn),neuronType:void 0,createdTimestampSeconds:BigInt(r.getCreatedTimestampSeconds()),state:es(n),joinedCommunityFundTimestampSeconds:void 0,retrievedAtTimestampSeconds:BigInt(r.getRetrievedAtTimestampSeconds()),votingPower:BigInt(r.getVotingPower()),ageSeconds:BigInt(r.getAgeSeconds()),fullNeuron:n===void 0?void 0:ns({pbNeuron:n,pbNeuronInfo:r,canisterId:t})}},wo=e=>e===void 0?void 0:{basisPoints:(0,c.fromNullable)(e.basis_points)},re=e=>e===void 0?void 0:{seconds:(0,c.fromNullable)(e.seconds)},rs=e=>e===void 0?void 0:{secondsAfterUtcMidnight:(0,c.fromNullable)(e.seconds_after_utc_midnight)},ss=e=>e===void 0?void 0:{isoCodes:e.iso_codes},X=e=>e===void 0?void 0:{e8s:(0,c.fromNullable)(e.e8s)},as=e=>e===void 0||e.id.length===0?void 0:(0,c.fromDefinedNullable)(e.id).toString(),In=e=>e===void 0?void 0:{base64Encoding:(0,c.fromNullable)(e.base64_encoding)},is=e=>e===void 0?void 0:{transactionFee:X((0,c.fromNullable)(e.transaction_fee)),tokenSymbol:(0,c.fromNullable)(e.token_symbol),tokenLogo:In((0,c.fromNullable)(e.token_logo)),tokenName:(0,c.fromNullable)(e.token_name)},cs=e=>e===void 0?void 0:{rewardRateTransitionDuration:re((0,c.fromNullable)(e.reward_rate_transition_duration)),initialRewardRate:wo((0,c.fromNullable)(e.initial_reward_rate)),finalRewardRate:wo((0,c.fromNullable)(e.final_reward_rate))},_s=e=>e===void 0?void 0:{neuronMaximumDissolveDelayBonus:wo((0,c.fromNullable)(e.neuron_maximum_dissolve_delay_bonus)),neuronMaximumAgeForAgeBonus:re((0,c.fromNullable)(e.neuron_maximum_age_for_age_bonus)),neuronMaximumDissolveDelay:re((0,c.fromNullable)(e.neuron_maximum_dissolve_delay)),neuronMinimumDissolveDelayToVote:re((0,c.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote)),neuronMaximumAgeBonus:wo((0,c.fromNullable)(e.neuron_maximum_age_bonus)),neuronMinimumStake:X((0,c.fromNullable)(e.neuron_minimum_stake)),proposalWaitForQuietDeadlineIncrease:re((0,c.fromNullable)(e.proposal_wait_for_quiet_deadline_increase)),proposalInitialVotingPeriod:re((0,c.fromNullable)(e.proposal_initial_voting_period)),proposalRejectionFee:X((0,c.fromNullable)(e.proposal_rejection_fee)),votingRewardParameters:cs((0,c.fromNullable)(e.voting_reward_parameters))},ds=e=>e===void 0?void 0:{dissolveDelayInterval:re((0,c.fromNullable)(e.dissolve_delay_interval)),count:(0,c.fromNullable)(e.count)},ps=e=>e===void 0?void 0:{minimumParticipants:(0,c.fromNullable)(e.minimum_participants),duration:re((0,c.fromNullable)(e.duration)),neuronBasketConstructionParameters:ds((0,c.fromNullable)(e.neuron_basket_construction_parameters)),confirmationText:(0,c.fromNullable)(e.confirmation_text),maximumParticipantIcp:X((0,c.fromNullable)(e.maximum_participant_icp)),neuronsFundInvestmentIcp:X((0,c.fromNullable)(e.neurons_fund_investment_icp)),minimumIcp:X((0,c.fromNullable)(e.minimum_icp)),minimumParticipantIcp:X((0,c.fromNullable)(e.minimum_participant_icp)),startTime:rs((0,c.fromNullable)(e.start_time)),maximumIcp:X((0,c.fromNullable)(e.maximum_icp)),restrictedCountries:ss((0,c.fromNullable)(e.restricted_countries)),maxDirectParticipationIcp:X((0,c.fromNullable)(e.maximum_direct_participation_icp)),minDirectParticipationIcp:X((0,c.fromNullable)(e.minimum_direct_participation_icp)),neuronsFundParticipation:(0,c.fromNullable)(e.neurons_fund_participation)},Hn=e=>e===void 0?void 0:{total:X((0,c.fromNullable)(e.total))},us=e=>e===void 0?void 0:{controller:e.controller.length===0?void 0:e.controller[0].toString(),dissolveDelay:re((0,c.fromNullable)(e.dissolve_delay)),memo:(0,c.fromNullable)(e.memo),vestingPeriod:re((0,c.fromNullable)(e.vesting_period)),stake:X((0,c.fromNullable)(e.stake))},ls=e=>e===void 0?void 0:{developerNeurons:e.developer_neurons.map(us)},ms=e=>e===void 0?void 0:{treasuryDistribution:Hn((0,c.fromNullable)(e.treasury_distribution)),developerDistribution:ls((0,c.fromNullable)(e.developer_distribution)),swapDistribution:Hn((0,c.fromNullable)(e.swap_distribution))};var Dn=async e=>{let{ManageNeuronResponse:t}=await M(),n=t.deserializeBinary(e).getError();if(n)throw new J({error_message:n.getErrorMessage(),error_type:n.getErrorType()})};var ro=e=>{let{command:t}=e,o=t[0];if(!o)throw new J({error_message:"Error updating neuron",error_type:0});if("Error"in o)throw new J(o.Error);return o},x=async({request:e,service:t})=>{let o=await t.manage_neuron(e);return ro(o)},Ln=async({request:e,service:t})=>{let o=await t.simulate_manage_neuron(e);return ro(o)};var Fo=BigInt(1e8);var go=class e{constructor(t,o,n,r,s=!1){this.canisterId=t;this.service=o;this.certifiedService=n;this.agent=r;this.hardwareWallet=s;this.listNeurons=async({certified:t=!0,neuronIds:o})=>{if(this.hardwareWallet&&!t)throw new oo;if(this.hardwareWallet)return this.listNeuronsHardwareWallet();let n=dn(o),r=await this.getGovernanceService(t).list_neurons(n);return Qn({response:r,canisterId:this.canisterId})};this.listKnownNeurons=async(t=!0)=>(await this.getGovernanceService(t).list_known_neurons()).known_neurons.map(n=>{var r,s,a;return{id:((r=(0,p.fromNullable)(n.id))==null?void 0:r.id)??BigInt(0),name:((s=(0,p.fromNullable)(n.known_neuron_data))==null?void 0:s.name)??"",description:(0,p.fromNullable)(((a=(0,p.fromNullable)(n.known_neuron_data))==null?void 0:a.description)??[])}});this.getLastestRewardEvent=async(t=!0)=>this.getGovernanceService(t).get_latest_reward_event();this.listProposals=async({request:t,certified:o=!0})=>{let n=pn(t),r=await this.getGovernanceService(o).list_proposals(n);return Xn(r)};this.stakeNeuron=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:s,fee:a})=>{if(t<Fo)throw new ze(t);let _=new Uint8Array((0,qo.default)(8)),d=(0,p.uint8ArrayToBigInt)(_),R=this.buildNeuronStakeSubAccount(_,o),w=Se.AccountIdentifier.fromPrincipal({principal:this.canisterId,subAccount:R});await r.transfer({memo:d,amount:t,fromSubAccount:n,to:w,createdAt:s,fee:a});let m=await this.claimOrRefreshNeuronFromAccount({controller:o,memo:d});if((0,p.isNullish)(m))throw new je;return m};this.stakeNeuronIcrc1=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:s,fee:a})=>{if(t<Fo)throw new ze(t);let _=new Uint8Array((0,qo.default)(8)),d=(0,p.uint8ArrayToBigInt)(_),R=this.getNeuronStakeSubAccountBytes(_,o);await r.icrc1Transfer({icrc1Memo:_,amount:t,fromSubAccount:n,to:{owner:this.canisterId,subaccount:[R]},createdAt:s,fee:a});let w=await this.claimOrRefreshNeuronFromAccount({controller:o,memo:d});if((0,p.isNullish)(w))throw new je;return w};this.increaseDissolveDelay=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{if(this.hardwareWallet)return this.increaseDissolveDelayHardwareWallet({neuronId:t,additionalDissolveDelaySeconds:o});let n=hn({neuronId:t,additionalDissolveDelaySeconds:o});await x({request:n,service:this.certifiedService})};this.setDissolveDelay=async({neuronId:t,dissolveDelaySeconds:o})=>{let n=Sn({neuronId:t,dissolveDelaySeconds:o});await x({request:n,service:this.certifiedService})};this.startDissolving=async t=>{if(this.hardwareWallet)return this.startDissolvingHardwareWallet(t);let o=Tn(t);await x({request:o,service:this.certifiedService})};this.stopDissolving=async t=>{if(this.hardwareWallet)return this.stopDissolvingHardwareWallet(t);let o=Vn(t);await x({request:o,service:this.certifiedService})};this.joinCommunityFund=async t=>{if(this.hardwareWallet)return this.joinCommunityFundHardwareWallet(t);let o=kn(t);await x({request:o,service:this.certifiedService})};this.autoStakeMaturity=async t=>{await x({request:xn(t),service:this.certifiedService})};this.leaveCommunityFund=async t=>{let o=Pn(t);await x({request:o,service:this.certifiedService})};this.setNodeProviderAccount=async t=>{(0,Se.checkAccountId)(t);let o=Se.AccountIdentifier.fromHex(t),n=await this.certifiedService.update_node_provider({reward_account:[o.toAccountIdentifierHash()]});if("Err"in n)throw new J(n.Err)};this.mergeNeurons=async t=>{let o=To(t);await x({request:o,service:this.certifiedService})};this.simulateMergeNeurons=async t=>{var d;let o=To(t),n=await Ln({request:o,service:this.certifiedService}),r,s,a,_;if("Merge"in n&&(0,p.nonNullish)(r=n.Merge)&&(0,p.nonNullish)(s=(0,p.fromNullable)(r.target_neuron_info))&&(0,p.nonNullish)(a=(0,p.fromNullable)(r.target_neuron))&&(0,p.nonNullish)(_=(d=(0,p.fromNullable)(a.id))==null?void 0:d.id))return Co({neuronId:_,neuronInfo:s,rawNeuron:a,canisterId:this.canisterId});throw new oe(`simulateMergeNeurons: Unrecognized Merge error in ${JSON.stringify(n)}`)};this.splitNeuron=async({neuronId:t,amount:o})=>{let n=mn({neuronId:t,amount:o}),r=await this.certifiedService.manage_neuron(n),s=ro(r);if("Split"in s){let a=(0,p.fromNullable)(s.Split.created_neuron_id);if((0,p.isNullish)(a))throw new J({error_message:"Unexpected error splitting neuron. No neuronId in Split response.",error_type:0});return a.id}throw new oe(`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=fn(t),n=await x({request:o,service:this.certifiedService});return"MakeProposal"in n?(r=(0,p.fromNullable)(n.MakeProposal.proposal_id))==null?void 0:r.id:void 0};this.registerVote=async({neuronId:t,vote:o,proposalId:n})=>{let r=Nn({neuronId:t,vote:o,proposalId:n});await x({request:r,service:this.certifiedService})};this.setFollowees=async t=>{let o=Rn(t);await x({request:o,service:this.certifiedService})};this.disburse=async({neuronId:t,toAccountId:o,amount:n})=>{if((0,p.nonNullish)(o)&&(0,Se.checkAccountId)(o),this.hardwareWallet)return this.disburseHardwareWallet({neuronId:t,toAccountId:o,amount:n});let r=(0,p.nonNullish)(o)?Se.AccountIdentifier.fromHex(o):void 0,s=On({neuronId:t,toAccountIdentifier:r,amount:n});await x({request:s,service:this.certifiedService})};this.mergeMaturity=async({neuronId:t,percentageToMerge:o})=>{if((0,p.assertPercentageNumber)(o),this.hardwareWallet)return this.mergeMaturityHardwareWallet({neuronId:t,percentageToMerge:o});let n=wn({neuronId:t,percentageToMerge:o});await x({request:n,service:this.certifiedService})};this.stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,p.assertPercentageNumber)(o??100),await x({request:gn({neuronId:t,percentageToStake:o}),service:this.certifiedService})};this.spawnNeuron=async({neuronId:t,percentageToSpawn:o,newController:n,nonce:r})=>{var R;if((0,p.nonNullish)(o)&&(0,p.assertPercentageNumber)(o),this.hardwareWallet)return this.spawnHardwareWallet({neuronId:t,percentageToSpawn:o,newController:n==null?void 0:n.toText()});let s=yn({neuronId:t,percentageToSpawn:o,newController:n,nonce:r}),a=await this.certifiedService.manage_neuron(s),_=ro(a),d;if("Spawn"in _&&(0,p.nonNullish)(d=(R=(0,p.fromNullable)(_.Spawn.created_neuron_id))==null?void 0:R.id))return d;throw new oe(`Unrecognized Spawn error in ${JSON.stringify(a)}`)};this.addHotkey=async({neuronId:t,principal:o})=>{if(this.hardwareWallet)return this.addHotkeyHardwareWallet({neuronId:t,principal:o});let n=vn({neuronId:t,principal:o});await x({request:n,service:this.certifiedService})};this.removeHotkey=async({neuronId:t,principal:o})=>{if(this.hardwareWallet)return this.removeHotkeyHardwareWallet({neuronId:t,principal:o});let n=bn({neuronId:t,principal:o});await x({request:n,service:this.certifiedService})};this.claimOrRefreshNeuronFromAccount=async({memo:t,controller:o})=>{var a;let n=ln({memo:t,controller:o}),r=await this.certifiedService.manage_neuron(n),s;if((0,p.nonNullish)(s=(0,p.fromNullable)(r.command))&&"ClaimOrRefresh"in s)return(a=(0,p.fromNullable)(s.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:a.id;throw new oe(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(r)}`)};this.claimOrRefreshNeuron=async t=>{var s;let o=un(t),n=await this.service.manage_neuron(o),r;if((0,p.nonNullish)(r=(0,p.fromNullable)(n.command))&&"ClaimOrRefresh"in r)return(s=(0,p.fromNullable)(r.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:s.id;throw new oe(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(n)}`)};this.buildNeuronStakeSubAccount=(t,o)=>Se.SubAccount.fromBytes(this.getNeuronStakeSubAccountBytes(t,o));this.getNeuronStakeSubAccountBytes=(t,o)=>{let n=(0,p.asciiStringToByteArray)("neuron-stake"),r=Do.create();return r.update((0,p.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.listNeuronsHardwareWallet=async()=>{let{ListNeurons:t,ListNeuronsResponse:o}=await M(),n=new t;n.setIncludeNeuronsReadableByCaller(!0);let r=await No({agent:this.agent,canisterId:this.canisterId,methodName:"list_neurons_pb",arg:n.serializeBinary()}),s=o.deserializeBinary(r),a=s.getFullNeuronsList();return s.getNeuronIdsList().map(Zn({pbNeurons:a,canisterId:this.canisterId}))};this.manageNeuronUpdateCall=async t=>{let o=await No({agent:this.agent,canisterId:this.canisterId,methodName:"manage_neuron_pb",arg:t.serializeBinary()});await Dn(o)};this.addHotkeyHardwareWallet=async({neuronId:t,principal:o})=>{let n=await Cn({neuronId:t,principal:o.toText()});await this.manageNeuronUpdateCall(n)};this.removeHotkeyHardwareWallet=async({neuronId:t,principal:o})=>{let n=await Mn({neuronId:t,principal:o.toText()});await this.manageNeuronUpdateCall(n)};this.increaseDissolveDelayHardwareWallet=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{let n=await An({neuronId:t,additionalDissolveDelaySeconds:o});await this.manageNeuronUpdateCall(n)};this.startDissolvingHardwareWallet=async t=>{let o=await Fn(t);await this.manageNeuronUpdateCall(o)};this.stopDissolvingHardwareWallet=async t=>{let o=await qn(t);await this.manageNeuronUpdateCall(o)};this.joinCommunityFundHardwareWallet=async t=>{let o=await Bn(t);await this.manageNeuronUpdateCall(o)};this.disburseHardwareWallet=async t=>{let o=await En(t);await this.manageNeuronUpdateCall(o)};this.mergeMaturityHardwareWallet=async t=>{let o=await Gn(t);await this.manageNeuronUpdateCall(o)};this.spawnHardwareWallet=async t=>{var d;let o=await Kn(t),n=await No({agent:this.agent,canisterId:this.canisterId,methodName:"manage_neuron_pb",arg:o.serializeBinary()}),{ManageNeuronResponse:r}=await M(),s=r.deserializeBinary(n),a=s.getError();if(a)throw new J({error_message:a.getErrorMessage(),error_type:a.getErrorType()});let _=(d=s.getSpawn())==null?void 0:d.getCreatedNeuronId();if((0,p.nonNullish)(_))return BigInt(_.getId());throw new oe(`Unrecognized Spawn error in ${JSON.stringify(s)}`)};this.canisterId=t,this.service=o,this.certifiedService=n,this.agent=r,this.hardwareWallet=s}static create(t={}){let o=t.canisterId??ao,{service:n,certifiedService:r,agent:s}=(0,p.createServices)({options:{...t,canisterId:o},idlFactory:uo,certifiedIdlFactory:tn});return new e(o,n,r,s,t.hardwareWallet)}getGovernanceService(t){return t?this.certifiedService:this.service}};var tr=require("@dfinity/utils");var er=({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)}),a=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)}),R=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),w=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:R,Memo:e.Nat64}),m=e.Record({by:e.Opt(w)}),T=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),P=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}),u=e.Record({dissolve_timestamp_seconds:e.Nat64}),Y=e.Variant({RemoveHotKey:T,AddHotKey:P,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:u}),K=e.Record({operation:e.Opt(Y)}),se=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}),ae=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),H=e.Record({percentage_to_merge:e.Nat32}),b=e.Record({hash:e.Vec(e.Nat8)}),ie=e.Record({e8s:e.Nat64}),j=e.Record({to_account:e.Opt(b),amount:e.Opt(ie)}),ce=e.Variant({Spawn:a,Split:_,Follow:d,ClaimOrRefresh:m,Configure:K,RegisterVote:se,Merge:U,DisburseToNeuron:W,MakeProposal:t,StakeMaturity:ae,MergeMaturity:H,Disburse:j}),V=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:o}),k=e.Record({id:e.Opt(o),command:e.Opt(ce),neuron_id_or_subaccount:e.Opt(V)}),h=e.Record({basis_points:e.Opt(e.Nat64)}),f=e.Record({seconds:e.Opt(e.Nat64)}),l=e.Record({e8s:e.Opt(e.Nat64)}),_e=e.Record({reward_rate_transition_duration:e.Opt(f),initial_reward_rate:e.Opt(h),final_reward_rate:e.Opt(h)}),y=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(h),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(h),neuron_minimum_stake:e.Opt(l),proposal_wait_for_quiet_deadline_increase:e.Opt(f),proposal_initial_voting_period:e.Opt(f),proposal_rejection_fee:e.Opt(l),voting_reward_parameters:e.Opt(_e)}),z=e.Record({base64_encoding:e.Opt(e.Text)}),de=e.Record({transaction_fee:e.Opt(l),token_symbol:e.Opt(e.Text),token_logo:e.Opt(z),token_name:e.Opt(e.Text)}),pe=e.Record({id:e.Opt(e.Principal)}),ue=e.Record({dissolve_delay_interval:e.Opt(f),count:e.Opt(e.Nat64)}),le=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),me=e.Record({iso_codes:e.Vec(e.Text)}),Ne=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(ue),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(l),minimum_icp:e.Opt(l),minimum_direct_participation_icp:e.Opt(l),minimum_participant_icp:e.Opt(l),start_time:e.Opt(le),maximum_direct_participation_icp:e.Opt(l),maximum_icp:e.Opt(l),neurons_fund_investment_icp:e.Opt(l),restricted_countries:e.Opt(me)}),$=e.Record({total:e.Opt(l)}),fe=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(l)}),Re=e.Record({developer_neurons:e.Vec(fe)}),i=e.Record({treasury_distribution:e.Opt($),developer_distribution:e.Opt(Re),swap_distribution:e.Opt($)}),Oe=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(y),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(z),name:e.Opt(e.Text),ledger_parameters:e.Opt(de),description:e.Opt(e.Text),dapp_canisters:e.Vec(pe),swap_parameters:e.Opt(Ne),initial_token_distribution:e.Opt(i)}),we=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),O=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(b)}),ge=e.Record({dissolve_delay_seconds:e.Nat64}),ye=e.Record({to_account:e.Opt(b)}),ve=e.Variant({RewardToNeuron:ge,RewardToAccount:ye}),C=e.Record({node_provider:e.Opt(O),reward_mode:e.Opt(ve),amount_e8s:e.Nat64}),$e=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),Je=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt($e),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)}),Qe=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(Je)}),Xe=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Ye=e.Record({open_time_window:e.Opt(Xe)}),Ze=e.Record({request:e.Opt(Ye),swap_canister_id:e.Opt(e.Principal)}),Ie=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),ke=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(C)}),Z=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}),De=e.Record({principals:e.Vec(e.Principal)}),Le=e.Variant({ToRemove:O,ToAdd:O}),et=e.Record({change:e.Opt(Le)}),tt=e.Record({motion_text:e.Text}),ot=e.Variant({RegisterKnownNeuron:s,ManageNeuron:k,CreateServiceNervousSystem:Oe,ExecuteNnsFunction:we,RewardNodeProvider:C,OpenSnsTokenSwap:Qe,SetSnsTokenSwapOpenTimeWindow:Ze,SetDefaultFollowees:Ie,RewardNodeProviders:ke,ManageNetworkEconomics:Z,ApproveGenesisKyc:De,AddOrRemoveNodeProvider:et,Motion:tt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(ot),summary:e.Text}));let nt=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),xe=e.Record({timestamp:e.Nat64,rewards:e.Vec(C)}),Pe=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}),Te=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)}),Ve=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}),rt=e.Record({followers:e.Vec(o)}),st=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,rt))}),at=e.Variant({LastNeuronId:o}),Ce=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(at)}),it=e.Record({neuron_indexes_migration:e.Opt(Ce),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ce)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),ct=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),_t=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(ct)}),Me=e.Record({vote:e.Int32,voting_power:e.Nat64}),dt=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)}),pt=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)}),I=e.Record({neurons_fund_neuron_portions:e.Vec(pt)}),ut=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(dt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(I),ideal_matched_participation_function:e.Opt(ut),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),lt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(I)}),mt=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)}),g=e.Record({status:e.Opt(mt),canister_id:e.Opt(e.Principal)}),Nt=e.Record({ledger_index_canister_summary:e.Opt(g),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(g),ledger_canister_summary:e.Opt(g),swap_canister_summary:e.Opt(g),governance_canister_summary:e.Opt(g),root_canister_summary:e.Opt(g),dapp_canister_summaries:e.Vec(g)}),Ae=e.Record({swap_background_information:e.Opt(Nt)}),Fe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),ft=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Rt=e.Record({id:e.Opt(o),failure_reason:e.Opt(N),cf_participants:e.Vec(_t),ballots:e.Vec(e.Tuple(e.Nat64,Me)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(lt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Ae),latest_tally:e.Opt(Fe),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(ft),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Ot=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:m,MergeMaturity:H,Disburse:j}),wt=e.Record({command:e.Opt(Ot),timestamp:e.Nat64}),qe=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),gt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),S=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(qe),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(gt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Ve),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(nt),most_recent_monthly_node_provider_rewards:e.Opt(xe),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Pe),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(O),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(Z),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Te),to_claim_transfers:e.Vec(Ve),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,st)),migrations:e.Opt(it),proposals:e.Vec(e.Tuple(e.Nat64,Rt)),in_flight_commands:e.Vec(e.Tuple(e.Nat64,wt)),neurons:e.Vec(e.Tuple(e.Nat64,S)),genesis_timestamp_seconds:e.Nat64}),F=e.Variant({Ok:e.Null,Err:N}),yt=e.Variant({Error:N,NeuronId:o}),vt=e.Record({result:e.Opt(yt)}),Be=e.Variant({Ok:S,Err:N}),bt=e.Variant({Ok:Pe,Err:N}),ht=e.Variant({Ok:ke,Err:N}),q=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(qe),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(r),voting_power:e.Nat64,age_seconds:e.Nat64}),Ee=e.Variant({Ok:q,Err:N}),St=e.Record({nns_proposal_id:e.Opt(o)}),kt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(I)}),xt=e.Record({neurons_fund_audit_info:e.Opt(kt)}),Pt=e.Variant({Ok:xt,Err:N}),Tt=e.Record({result:e.Opt(Pt)}),Vt=e.Variant({Ok:O,Err:N}),D=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Nat64,Me)),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(Ae),latest_tally:e.Opt(Fe),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),Ct=e.Record({known_neurons:e.Vec(s)}),Mt=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),At=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,q)),full_neurons:e.Vec(S)}),Ft=e.Record({node_providers:e.Vec(O)}),qt=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)}),Bt=e.Record({proposal_info:e.Vec(D)}),L=e.Record({created_neuron_id:e.Opt(o)}),Et=e.Record({refreshed_neuron_id:e.Opt(o)}),Gt=e.Record({target_neuron:e.Opt(S),source_neuron:e.Opt(S),target_neuron_info:e.Opt(q),source_neuron_info:e.Opt(q)}),Kt=e.Record({proposal_id:e.Opt(o)}),Ut=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Wt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ht=e.Record({transfer_block_height:e.Nat64}),jt=e.Variant({Error:N,Spawn:L,Split:L,Follow:e.Record({}),ClaimOrRefresh:Et,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:Gt,DisburseToNeuron:L,MakeProposal:Kt,StakeMaturity:Ut,MergeMaturity:Wt,Disburse:Ht}),Ge=e.Record({command:e.Opt(jt)}),zt=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)}),$t=e.Variant({Committed:zt,Aborted:e.Record({})}),Jt=e.Record({result:e.Opt($t),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Qt=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)}),Xt=e.Variant({Committed:Qt,Aborted:e.Record({})}),Yt=e.Record({result:e.Opt(Xt),nns_proposal_id:e.Opt(e.Nat64)}),Zt=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)}),It=e.Record({neurons_fund_neuron_portions:e.Vec(Zt)}),Dt=e.Variant({Ok:It,Err:N}),Lt=e.Record({result:e.Opt(Dt)}),eo=e.Record({reward_account:e.Opt(b)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(o)],[F],[]),claim_or_refresh_neuron_from_account:e.Func([R],[vt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Be],[]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Be],[]),get_latest_reward_event:e.Func([],[Te],[]),get_metrics:e.Func([],[bt],[]),get_monthly_node_provider_rewards:e.Func([],[ht],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(xe)],[]),get_network_economics_parameters:e.Func([],[Z],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Ee],[]),get_neuron_info_by_id_or_subaccount:e.Func([V],[Ee],[]),get_neurons_fund_audit_info:e.Func([St],[Tt],[]),get_node_provider_by_caller:e.Func([e.Null],[Vt],[]),get_pending_proposals:e.Func([],[e.Vec(D)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(D)],[]),list_known_neurons:e.Func([],[Ct],[]),list_neurons:e.Func([Mt],[At],[]),list_node_providers:e.Func([],[Ft],[]),list_proposals:e.Func([qt],[Bt],[]),manage_neuron:e.Func([k],[Ge],[]),settle_community_fund_participation:e.Func([Jt],[F],[]),settle_neurons_fund_participation:e.Func([Yt],[Lt],[]),simulate_manage_neuron:e.Func([k],[Ge],[]),transfer_gtc_neuron:e.Func([o,o],[F],[]),update_neuron:e.Func([S],[e.Opt(N)],[]),update_node_provider:e.Func([eo],[F],[])})};var yo=class e{constructor(t){this.certifiedService=t;this.certifiedService=t}static create(t={}){let o=t.canisterId??ao,{certifiedService:n}=(0,tr.createServices)({options:{...t,canisterId:o},idlFactory:uo,certifiedIdlFactory:er});return new e(n)}updateNeuron(t){this.certifiedService.update_neuron(jn(t))}};var rr=require("@dfinity/utils");var or=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),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)}),a=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)}),R=e.Record({canisters:e.Vec(d)}),w=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)}),m=e.Record({serialized_representation:e.Opt(e.Text)}),T=e.Record({coefficient_intervals:e.Vec(w),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(m)}),P=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(P)}),B=e.Record({participants:e.Vec(G)}),u=e.Record({total_e8s:e.Nat64}),Y=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(Y)}),se=e.Record({airdrop_neurons:e.Vec(Y)}),U=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),W=e.Record({treasury_distribution:e.Opt(u),developer_distribution:e.Opt(K),airdrop_distribution:e.Opt(se),swap_distribution:e.Opt(U)}),ae=e.Variant({FractionalDeveloperVotingPower:W}),H=e.Record({iso_codes:e.Vec(e.Text)}),b=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(R),neurons_fund_participation_constraints:e.Opt(T),neurons_fund_participants:e.Opt(B),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(ae),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)}),ie=e.Record({sns_init_payload:e.Opt(b)}),j=e.Record({restored_dapp_canisters:e.Vec(d),nns_controlled_dapp_canisters:e.Vec(d),sns_controlled_dapp_canisters:e.Vec(d)}),ce=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)}),V=e.Record({dapp_canisters_transfer_result:e.Opt(j),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(ce)}),k=e.Record({allowed_principals:e.Vec(e.Principal)}),h=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)}),l=e.Variant({Error:r,DeployedSns:f}),_e=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(l)}),y=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),z=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(y)}),de=e.Record({next_version:e.Opt(y)}),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)}),me=e.Record({next_version:e.Opt(y),current_version:e.Opt(y)}),Ne=e.Record({upgrade_path:e.Vec(me),sns_governance_canister_id:e.Opt(e.Principal)}),$=e.Record({error:e.Opt(r)}),fe=e.Record({instances:e.Vec(f)}),Re=e.Record({limit:e.Nat32,starting_at:e.Opt(y),sns_governance_canister_id:e.Opt(e.Principal)}),i=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),Oe=e.Record({pretty_version:e.Opt(i),version:e.Opt(y)}),we=e.Record({steps:e.Vec(Oe)}),O=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),ge=e.Variant({Error:r,AllowedPrincipals:k}),ye=e.Record({update_allowed_principals_result:e.Opt(ge)}),ve=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),C=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[a],[]),deploy_new_sns:e.Func([ie],[V],[]),get_allowed_principals:e.Func([e.Record({})],[k],[]),get_deployed_sns_by_proposal_id:e.Func([h],[_e],[]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],[]),get_next_sns_version:e.Func([z],[de],[]),get_sns_subnet_ids:e.Func([e.Record({})],[pe],[]),get_wasm:e.Func([ue],[le],[]),insert_upgrade_path_entries:e.Func([Ne],[$],[]),list_deployed_snses:e.Func([e.Record({})],[fe],[]),list_upgrade_steps:e.Func([Re],[we],[]),update_allowed_principals:e.Func([O],[ye],[]),update_sns_subnet_list:e.Func([ve],[C],[])})};var nr=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),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)}),a=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)}),R=e.Record({canisters:e.Vec(d)}),w=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)}),m=e.Record({serialized_representation:e.Opt(e.Text)}),T=e.Record({coefficient_intervals:e.Vec(w),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(m)}),P=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(P)}),B=e.Record({participants:e.Vec(G)}),u=e.Record({total_e8s:e.Nat64}),Y=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(Y)}),se=e.Record({airdrop_neurons:e.Vec(Y)}),U=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),W=e.Record({treasury_distribution:e.Opt(u),developer_distribution:e.Opt(K),airdrop_distribution:e.Opt(se),swap_distribution:e.Opt(U)}),ae=e.Variant({FractionalDeveloperVotingPower:W}),H=e.Record({iso_codes:e.Vec(e.Text)}),b=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(R),neurons_fund_participation_constraints:e.Opt(T),neurons_fund_participants:e.Opt(B),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(ae),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)}),ie=e.Record({sns_init_payload:e.Opt(b)}),j=e.Record({restored_dapp_canisters:e.Vec(d),nns_controlled_dapp_canisters:e.Vec(d),sns_controlled_dapp_canisters:e.Vec(d)}),ce=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)}),V=e.Record({dapp_canisters_transfer_result:e.Opt(j),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(ce)}),k=e.Record({allowed_principals:e.Vec(e.Principal)}),h=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)}),l=e.Variant({Error:r,DeployedSns:f}),_e=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(l)}),y=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),z=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(y)}),de=e.Record({next_version:e.Opt(y)}),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)}),me=e.Record({next_version:e.Opt(y),current_version:e.Opt(y)}),Ne=e.Record({upgrade_path:e.Vec(me),sns_governance_canister_id:e.Opt(e.Principal)}),$=e.Record({error:e.Opt(r)}),fe=e.Record({instances:e.Vec(f)}),Re=e.Record({limit:e.Nat32,starting_at:e.Opt(y),sns_governance_canister_id:e.Opt(e.Principal)}),i=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),Oe=e.Record({pretty_version:e.Opt(i),version:e.Opt(y)}),we=e.Record({steps:e.Vec(Oe)}),O=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),ge=e.Variant({Error:r,AllowedPrincipals:k}),ye=e.Record({update_allowed_principals_result:e.Opt(ge)}),ve=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),C=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[a],[]),deploy_new_sns:e.Func([ie],[V],[]),get_allowed_principals:e.Func([e.Record({})],[k],["query"]),get_deployed_sns_by_proposal_id:e.Func([h],[_e],["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],[de],["query"]),get_sns_subnet_ids:e.Func([e.Record({})],[pe],["query"]),get_wasm:e.Func([ue],[le],["query"]),insert_upgrade_path_entries:e.Func([Ne],[$],[]),list_deployed_snses:e.Func([e.Record({})],[fe],["query"]),list_upgrade_steps:e.Func([Re],[we],["query"]),update_allowed_principals:e.Func([O],[ye],[]),update_sns_subnet_list:e.Func([ve],[C],[])})};var vo=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,rr.createServices)({options:{...t,canisterId:t.canisterId??Xo},idlFactory:nr,certifiedIdlFactory:or});return new e(o,n)}};var sr=({recentBallots:e,proposalId:t})=>{if(!t)return;let o=e.find(({proposalId:n})=>n===t);return o==null?void 0:o.vote},ar=({neurons:e,proposal:t})=>{let{ballots:o,proposalTimestampSeconds:n}=t;return e.filter(({createdTimestampSeconds:r,neuronId:s})=>{let a=r>n,_=o.find(({neuronId:d})=>d===s)===void 0;return a||_})},Ns=({neurons:e,proposal:t})=>{let{id:o}=t;return e.filter(({recentBallots:n,neuronId:r})=>sr({recentBallots:n,proposalId:o})===void 0&&ar({neurons:e,proposal:t}).find(({neuronId:s})=>s===r)===void 0)},fs=({neurons:e,proposal:{id:t}})=>e.filter(({recentBallots:o})=>sr({recentBallots:o,proposalId:t})!==void 0);0&&(module.exports={CouldNotClaimNeuronError,FeatureNotSupportedError,GenesisTokenCanister,GovernanceCanister,GovernanceError,GovernanceTestCanister,InsufficientAmountError,NeuronState,NeuronType,NnsFunction,ProposalRewardStatus,ProposalStatus,SnsWasmCanister,StakeNeuronError,Topic,UnrecognizedTypeError,UnsupportedValueError,Vote,ineligibleNeurons,votableNeurons,votedNeurons});
|
|
1
|
+
"use strict";var Yn=Object.create;var io=Object.defineProperty;var Zn=Object.getOwnPropertyDescriptor;var In=Object.getOwnPropertyNames;var Dn=Object.getPrototypeOf,Ln=Object.prototype.hasOwnProperty;var er=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),tr=(e,t)=>{for(var o in t)io(e,o,{get:t[o],enumerable:!0})},Eo=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of In(t))!Ln.call(e,r)&&r!==o&&io(e,r,{get:()=>t[r],enumerable:!(n=Zn(t,r))||n.enumerable});return e};var or=(e,t,o)=>(o=e!=null?Yn(Dn(e)):{},Eo(t||!e||!e.__esModule?io(o,"default",{value:e,enumerable:!0}):o,e)),nr=e=>Eo(io({},"__esModule",{value:!0}),e);var tn=er((ys,en)=>{en.exports=require("crypto").randomBytes});var Lr={};tr(Lr,{CouldNotClaimNeuronError:()=>He,GenesisTokenCanister:()=>_o,GovernanceCanister:()=>wo,GovernanceError:()=>ye,GovernanceTestCanister:()=>vo,InsufficientAmountError:()=>je,NeuronState:()=>Bo,NeuronType:()=>jo,NnsFunction:()=>Ho,ProposalRewardStatus:()=>Ko,ProposalStatus:()=>Uo,SnsWasmCanister:()=>go,StakeNeuronError:()=>ro,Topic:()=>Go,UnrecognizedTypeError:()=>ge,UnsupportedValueError:()=>x,Vote:()=>Wo,ineligibleNeurons:()=>Qn,votableNeurons:()=>Ir,votedNeurons:()=>Dr});module.exports=nr(Lr);var Bo=(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))(Bo||{}),Go=(l=>(l[l.Unspecified=0]="Unspecified",l[l.ManageNeuron=1]="ManageNeuron",l[l.ExchangeRate=2]="ExchangeRate",l[l.NetworkEconomics=3]="NetworkEconomics",l[l.Governance=4]="Governance",l[l.NodeAdmin=5]="NodeAdmin",l[l.ParticipantManagement=6]="ParticipantManagement",l[l.SubnetManagement=7]="SubnetManagement",l[l.NetworkCanisterManagement=8]="NetworkCanisterManagement",l[l.Kyc=9]="Kyc",l[l.NodeProviderRewards=10]="NodeProviderRewards",l[l.SnsDecentralizationSale=11]="SnsDecentralizationSale",l[l.SubnetReplicaVersionManagement=12]="SubnetReplicaVersionManagement",l[l.ReplicaVersionManagement=13]="ReplicaVersionManagement",l[l.SnsAndCommunityFund=14]="SnsAndCommunityFund",l[l.ApiBoundaryNodeManagement=15]="ApiBoundaryNodeManagement",l))(Go||{}),Ko=(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))(Ko||{}),Uo=(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))(Uo||{}),Wo=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(Wo||{}),Ho=(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))(Ho||{}),jo=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Seed=1]="Seed",n[n.Ect=2]="Ect",n))(jo||{});var ro=class extends Error{},He=class extends ro{},je=class extends ro{constructor(o){super();this.minimumAmount=o}},ge=class extends Error{},ye=class extends Error{constructor(o){super();this.detail=o}},x=class extends Error{constructor(t){super("Unsupported value: "+t)}};var Qo=require("@dfinity/utils");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)}),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 Xo=({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 so=require("@dfinity/principal"),ss=so.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),co=so.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),Jo=so.Principal.fromText("renrk-eyaaa-aaaaa-aaada-cai"),$o=so.Principal.fromText("r7inp-6aaaa-aaaaa-aaabq-cai");var _o=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,Qo.createServices)({options:{...t,canisterId:t.canisterId??Jo},idlFactory:Xo,certifiedIdlFactory:zo});return new e(o)}};var he=require("@dfinity/ledger-icp"),u=require("@dfinity/utils");function rr(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function yo(e,...t){if(!rr(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 bo(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 Yo(e,t){yo(e);let o=t.outputLen;if(e.length<o)throw new Error(`digestInto() expects output buffer of length at least ${o}`)}var uo=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),L=(e,t)=>e<<32-t|e>>>t;var ls=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function sr(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ho(e){return typeof e=="string"&&(e=sr(e)),yo(e),e}var po=class{clone(){return this._cloneInto()}},ms={}.toString;function Zo(e){let t=n=>e().update(ho(n)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function ar(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 Io=(e,t,o)=>e&t^~e&o,Do=(e,t,o)=>e&t^e&o^t&o,lo=class extends po{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=uo(this.buffer)}update(t){bo(this);let{view:o,buffer:n,blockLen:r}=this;t=ho(t);let a=t.length;for(let c=0;c<a;){let _=Math.min(r-this.pos,a-c);if(_===r){let d=uo(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){bo(this),Yo(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;ar(n,r-8,BigInt(this.length*8),a),this.process(n,0);let _=uo(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 ir=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]),Ge=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ke=new Uint32Array(64),xo=class extends lo{constructor(){super(64,32,8,!1),this.A=Ge[0]|0,this.B=Ge[1]|0,this.C=Ge[2]|0,this.D=Ge[3]|0,this.E=Ge[4]|0,this.F=Ge[5]|0,this.G=Ge[6]|0,this.H=Ge[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)Ke[p]=t.getUint32(o,!1);for(let p=16;p<64;p++){let g=Ke[p-15],k=Ke[p-2],G=L(g,7)^L(g,18)^g>>>3,B=L(k,17)^L(k,19)^k>>>10;Ke[p]=B+Ke[p-7]+G+Ke[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 g=L(_,6)^L(_,11)^L(_,25),k=R+g+Io(_,d,O)+ir[p]+Ke[p]|0,B=(L(n,2)^L(n,13)^L(n,22))+Do(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(){Ke.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Lo=Zo(()=>new xo);var Ao=or(tn());var on=({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)}),g=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}),l=e.Record({dissolve_timestamp_seconds:e.Nat64}),Q=e.Variant({RemoveHotKey:g,AddHotKey:k,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:l}),K=e.Record({operation:e.Opt(Q)}),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)}),w=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(w),final_reward_rate:e.Opt(w)}),h=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(w),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(w),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)}),v=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(S)}),we=e.Record({dissolve_delay_seconds:e.Nat64}),s=e.Record({to_account:e.Opt(S)}),ve=e.Variant({RewardToNeuron:we,RewardToAccount:s}),M=e.Record({node_provider:e.Opt(v),reward_mode:e.Opt(ve),amount_e8s:e.Nat64}),Xe=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),Je=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(Xe),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)}),$e=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(Je)}),Qe=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Ye=e.Record({open_time_window:e.Opt(Qe)}),Ze=e.Record({request:e.Opt(Ye),swap_canister_id:e.Opt(e.Principal)}),Ie=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),xe=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(M)}),F=e.Record({human_readable:e.Opt(e.Text)}),De=e.Record({contribution_threshold_xdr:e.Opt(F),one_third_participation_milestone_xdr:e.Opt(F),full_participation_milestone_xdr:e.Opt(F)}),Le=e.Record({maximum_icp_xdr_rate:e.Opt(w),neurons_fund_matched_funding_curve_coefficients:e.Opt(De),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(F),minimum_icp_xdr_rate:e.Opt(w)}),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(Le)}),et=e.Record({principals:e.Vec(e.Principal)}),tt=e.Variant({ToRemove:v,ToAdd:v}),ot=e.Record({change:e.Opt(tt)}),nt=e.Record({motion_text:e.Text}),rt=e.Variant({RegisterKnownNeuron:a,ManageNeuron:P,CreateServiceNervousSystem:Oe,ExecuteNnsFunction:Re,RewardNodeProvider:M,OpenSnsTokenSwap:$e,SetSnsTokenSwapOpenTimeWindow:Ze,SetDefaultFollowees:Ie,RewardNodeProviders:xe,ManageNetworkEconomics:Y,ApproveGenesisKyc:et,AddOrRemoveNodeProvider:ot,Motion:nt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(rt),summary:e.Text}));let st=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),ke=e.Record({timestamp:e.Nat64,rewards:e.Vec(M)}),Se=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}),Te=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)}),Pe=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}),at=e.Record({followers:e.Vec(o)}),it=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,at))}),ct=e.Variant({LastNeuronId:o}),Ve=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(ct)}),_t=e.Record({neuron_indexes_migration:e.Opt(Ve),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ve)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),dt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),pt=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(dt)}),Ce=e.Record({vote:e.Int32,voting_power:e.Nat64}),ut=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)}),lt=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(lt)}),mt=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(ut),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(Z),ideal_matched_participation_function:e.Opt(mt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Nt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),ft=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(ft),canister_id:e.Opt(e.Principal)}),Ot=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)}),Me=e.Record({swap_background_information:e.Opt(Ot)}),Fe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Rt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),wt=e.Record({id:e.Opt(o),failure_reason:e.Opt(N),cf_participants:e.Vec(pt),ballots:e.Vec(e.Tuple(e.Nat64,Ce)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Nt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Me),latest_tally:e.Opt(Fe),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(Rt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),vt=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),gt=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:p,MergeMaturity:H,Disburse:j}),yt=e.Record({command:e.Opt(gt),timestamp:e.Nat64}),Ae=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),bt=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(Ae),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(bt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Pe),known_neuron_data:e.Opt(r),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),qo=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(ke),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Se),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),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Te),to_claim_transfers:e.Vec(Pe),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,it)),migrations:e.Opt(_t),proposals:e.Vec(e.Tuple(e.Nat64,wt)),xdr_conversion_rate:e.Opt(vt),in_flight_commands:e.Vec(e.Tuple(e.Nat64,yt)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),q=e.Variant({Ok:e.Null,Err:N}),ht=e.Variant({Error:N,NeuronId:o}),xt=e.Record({result:e.Opt(ht)}),qe=e.Variant({Ok:T,Err:N}),kt=e.Variant({Ok:Se,Err:N}),St=e.Variant({Ok:xe,Err:N}),E=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Ae),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}),Ee=e.Variant({Ok:E,Err:N}),Tt=e.Record({nns_proposal_id:e.Opt(o)}),Pt=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({neurons_fund_audit_info:e.Opt(Pt)}),Ct=e.Variant({Ok:Vt,Err:N}),Mt=e.Record({result:e.Opt(Ct)}),Ft=e.Variant({Ok:v,Err:N}),I=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Nat64,Ce)),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(Me),latest_tally:e.Opt(Fe),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),At=e.Record({known_neurons:e.Vec(a)}),qt=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),Et=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,E)),full_neurons:e.Vec(T)}),Bt=e.Record({node_providers:e.Vec(v)}),Gt=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)}),Kt=e.Record({proposal_info:e.Vec(I)}),D=e.Record({created_neuron_id:e.Opt(o)}),Ut=e.Record({refreshed_neuron_id:e.Opt(o)}),Wt=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(E),source_neuron_info:e.Opt(E)}),Ht=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(o)}),jt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),zt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Xt=e.Record({transfer_block_height:e.Nat64}),Jt=e.Variant({Error:N,Spawn:D,Split:D,Follow:e.Record({}),ClaimOrRefresh:Ut,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:Wt,DisburseToNeuron:D,MakeProposal:Ht,StakeMaturity:jt,MergeMaturity:zt,Disburse:Xt}),Be=e.Record({command:e.Opt(Jt)}),$t=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)}),Qt=e.Variant({Committed:$t,Aborted:e.Record({})}),Yt=e.Record({result:e.Opt(Qt),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Zt=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)}),It=e.Variant({Committed:Zt,Aborted:e.Record({})}),Dt=e.Record({result:e.Opt(It),nns_proposal_id:e.Opt(e.Nat64)}),Lt=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)}),eo=e.Record({neurons_fund_neuron_portions:e.Vec(Lt)}),to=e.Variant({Ok:eo,Err:N}),oo=e.Record({result:e.Opt(to)}),no=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],[xt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[qe],[]),get_full_neuron_by_id_or_subaccount:e.Func([C],[qe],[]),get_latest_reward_event:e.Func([],[Te],[]),get_metrics:e.Func([],[kt],[]),get_monthly_node_provider_rewards:e.Func([],[St],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(ke)],[]),get_network_economics_parameters:e.Func([],[Y],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Ee],[]),get_neuron_info_by_id_or_subaccount:e.Func([C],[Ee],[]),get_neurons_fund_audit_info:e.Func([Tt],[Mt],[]),get_node_provider_by_caller:e.Func([e.Null],[Ft],[]),get_pending_proposals:e.Func([],[e.Vec(I)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(I)],[]),list_known_neurons:e.Func([],[At],[]),list_neurons:e.Func([qt],[Et],[]),list_node_providers:e.Func([],[Bt],[]),list_proposals:e.Func([Gt],[Kt],[]),manage_neuron:e.Func([P],[Be],[]),settle_community_fund_participation:e.Func([Yt],[q],[]),settle_neurons_fund_participation:e.Func([Dt],[oo],[]),simulate_manage_neuron:e.Func([P],[Be],[]),transfer_gtc_neuron:e.Func([o,o],[q],[]),update_node_provider:e.Func([no],[q],[])})};var mo=({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)}),g=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}),l=e.Record({dissolve_timestamp_seconds:e.Nat64}),Q=e.Variant({RemoveHotKey:g,AddHotKey:k,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:l}),K=e.Record({operation:e.Opt(Q)}),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)}),w=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(w),final_reward_rate:e.Opt(w)}),h=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(w),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(w),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)}),v=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(S)}),we=e.Record({dissolve_delay_seconds:e.Nat64}),s=e.Record({to_account:e.Opt(S)}),ve=e.Variant({RewardToNeuron:we,RewardToAccount:s}),M=e.Record({node_provider:e.Opt(v),reward_mode:e.Opt(ve),amount_e8s:e.Nat64}),Xe=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),Je=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(Xe),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)}),$e=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(Je)}),Qe=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Ye=e.Record({open_time_window:e.Opt(Qe)}),Ze=e.Record({request:e.Opt(Ye),swap_canister_id:e.Opt(e.Principal)}),Ie=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),xe=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(M)}),F=e.Record({human_readable:e.Opt(e.Text)}),De=e.Record({contribution_threshold_xdr:e.Opt(F),one_third_participation_milestone_xdr:e.Opt(F),full_participation_milestone_xdr:e.Opt(F)}),Le=e.Record({maximum_icp_xdr_rate:e.Opt(w),neurons_fund_matched_funding_curve_coefficients:e.Opt(De),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(F),minimum_icp_xdr_rate:e.Opt(w)}),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(Le)}),et=e.Record({principals:e.Vec(e.Principal)}),tt=e.Variant({ToRemove:v,ToAdd:v}),ot=e.Record({change:e.Opt(tt)}),nt=e.Record({motion_text:e.Text}),rt=e.Variant({RegisterKnownNeuron:a,ManageNeuron:P,CreateServiceNervousSystem:Oe,ExecuteNnsFunction:Re,RewardNodeProvider:M,OpenSnsTokenSwap:$e,SetSnsTokenSwapOpenTimeWindow:Ze,SetDefaultFollowees:Ie,RewardNodeProviders:xe,ManageNetworkEconomics:Y,ApproveGenesisKyc:et,AddOrRemoveNodeProvider:ot,Motion:nt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(rt),summary:e.Text}));let st=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),ke=e.Record({timestamp:e.Nat64,rewards:e.Vec(M)}),Se=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}),Te=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)}),Pe=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}),at=e.Record({followers:e.Vec(o)}),it=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,at))}),ct=e.Variant({LastNeuronId:o}),Ve=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(ct)}),_t=e.Record({neuron_indexes_migration:e.Opt(Ve),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ve)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),dt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),pt=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(dt)}),Ce=e.Record({vote:e.Int32,voting_power:e.Nat64}),ut=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)}),lt=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(lt)}),mt=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(ut),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(Z),ideal_matched_participation_function:e.Opt(mt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Nt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),ft=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(ft),canister_id:e.Opt(e.Principal)}),Ot=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)}),Me=e.Record({swap_background_information:e.Opt(Ot)}),Fe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Rt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),wt=e.Record({id:e.Opt(o),failure_reason:e.Opt(N),cf_participants:e.Vec(pt),ballots:e.Vec(e.Tuple(e.Nat64,Ce)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Nt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Me),latest_tally:e.Opt(Fe),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(Rt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),vt=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),gt=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:p,MergeMaturity:H,Disburse:j}),yt=e.Record({command:e.Opt(gt),timestamp:e.Nat64}),Ae=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),bt=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(Ae),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(bt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Pe),known_neuron_data:e.Opt(r),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),qo=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(ke),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Se),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),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Te),to_claim_transfers:e.Vec(Pe),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,it)),migrations:e.Opt(_t),proposals:e.Vec(e.Tuple(e.Nat64,wt)),xdr_conversion_rate:e.Opt(vt),in_flight_commands:e.Vec(e.Tuple(e.Nat64,yt)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),q=e.Variant({Ok:e.Null,Err:N}),ht=e.Variant({Error:N,NeuronId:o}),xt=e.Record({result:e.Opt(ht)}),qe=e.Variant({Ok:T,Err:N}),kt=e.Variant({Ok:Se,Err:N}),St=e.Variant({Ok:xe,Err:N}),E=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Ae),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}),Ee=e.Variant({Ok:E,Err:N}),Tt=e.Record({nns_proposal_id:e.Opt(o)}),Pt=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({neurons_fund_audit_info:e.Opt(Pt)}),Ct=e.Variant({Ok:Vt,Err:N}),Mt=e.Record({result:e.Opt(Ct)}),Ft=e.Variant({Ok:v,Err:N}),I=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Nat64,Ce)),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(Me),latest_tally:e.Opt(Fe),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),At=e.Record({known_neurons:e.Vec(a)}),qt=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),Et=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,E)),full_neurons:e.Vec(T)}),Bt=e.Record({node_providers:e.Vec(v)}),Gt=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)}),Kt=e.Record({proposal_info:e.Vec(I)}),D=e.Record({created_neuron_id:e.Opt(o)}),Ut=e.Record({refreshed_neuron_id:e.Opt(o)}),Wt=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(E),source_neuron_info:e.Opt(E)}),Ht=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(o)}),jt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),zt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Xt=e.Record({transfer_block_height:e.Nat64}),Jt=e.Variant({Error:N,Spawn:D,Split:D,Follow:e.Record({}),ClaimOrRefresh:Ut,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:Wt,DisburseToNeuron:D,MakeProposal:Ht,StakeMaturity:jt,MergeMaturity:zt,Disburse:Xt}),Be=e.Record({command:e.Opt(Jt)}),$t=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)}),Qt=e.Variant({Committed:$t,Aborted:e.Record({})}),Yt=e.Record({result:e.Opt(Qt),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Zt=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)}),It=e.Variant({Committed:Zt,Aborted:e.Record({})}),Dt=e.Record({result:e.Opt(It),nns_proposal_id:e.Opt(e.Nat64)}),Lt=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)}),eo=e.Record({neurons_fund_neuron_portions:e.Vec(Lt)}),to=e.Variant({Ok:eo,Err:N}),oo=e.Record({result:e.Opt(to)}),no=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],[xt],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_full_neuron:e.Func([e.Nat64],[qe],["query"]),get_full_neuron_by_id_or_subaccount:e.Func([C],[qe],["query"]),get_latest_reward_event:e.Func([],[Te],["query"]),get_metrics:e.Func([],[kt],["query"]),get_monthly_node_provider_rewards:e.Func([],[St],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(ke)],["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],[Ee],["query"]),get_neuron_info_by_id_or_subaccount:e.Func([C],[Ee],["query"]),get_neurons_fund_audit_info:e.Func([Tt],[Mt],["query"]),get_node_provider_by_caller:e.Func([e.Null],[Ft],["query"]),get_pending_proposals:e.Func([],[e.Vec(I)],["query"]),get_proposal_info:e.Func([e.Nat64],[e.Opt(I)],["query"]),list_known_neurons:e.Func([],[At],["query"]),list_neurons:e.Func([qt],[Et],["query"]),list_node_providers:e.Func([],[Bt],["query"]),list_proposals:e.Func([Gt],[Kt],["query"]),manage_neuron:e.Func([P],[Be],[]),settle_community_fund_participation:e.Func([Yt],[q],[]),settle_neurons_fund_participation:e.Func([Dt],[oo],[]),simulate_manage_neuron:e.Func([P],[Be],[]),transfer_gtc_neuron:e.Func([o,o],[q],[]),update_node_provider:e.Func([no],[q],[])})};var sn=require("@dfinity/ledger-icp"),ee=require("@dfinity/principal"),b=require("@dfinity/utils");var an=e=>({id:e}),ko=e=>({id:e}),cr=e=>({followees:e.map(ko)}),_r=e=>{if("NeuronId"in e)return{NeuronId:{id:e.NeuronId}};if("Subaccount"in e)return{Subaccount:Uint8Array.from(e.Subaccount)};throw new x(e)},No=e=>e.basisPoints!==void 0?{basis_points:[e.basisPoints]}:{basis_points:[]},te=e=>e.seconds!==void 0?{seconds:[e.seconds]}:{seconds:[]},dr=e=>e.secondsAfterUtcMidnight!==void 0?{seconds_after_utc_midnight:[e.secondsAfterUtcMidnight]}:{seconds_after_utc_midnight:[]},pr=e=>({iso_codes:e.isoCodes}),J=e=>e.e8s!==void 0?{e8s:[e.e8s]}:{e8s:[]},cn=e=>e.base64Encoding!==void 0?{base64_encoding:[e.base64Encoding]}:{base64_encoding:[]},ur=e=>({reward_rate_transition_duration:e.rewardRateTransitionDuration!==void 0?[te(e.rewardRateTransitionDuration)]:[],initial_reward_rate:e.initialRewardRate!==void 0?[No(e.initialRewardRate)]:[],final_reward_rate:e.finalRewardRate!==void 0?[No(e.finalRewardRate)]:[]}),lr=e=>({transaction_fee:e.transactionFee!==void 0?[J(e.transactionFee)]:[],token_symbol:e.tokenSymbol!==void 0?[e.tokenSymbol]:[],token_logo:e.tokenLogo!==void 0?[cn(e.tokenLogo)]:[],token_name:e.tokenName!==void 0?[e.tokenName]:[]}),mr=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?[Nr(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?[dr(e.startTime)]:[],maximum_icp:e.maximumIcp!==void 0?[J(e.maximumIcp)]:[],restricted_countries:e.restrictedCountries!==void 0?[pr(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)}),Nr=e=>({dissolve_delay_interval:e.dissolveDelayInterval!==void 0?[te(e.dissolveDelayInterval)]:[],count:e.count!==void 0?[e.count]:[]}),fr=e=>({neuron_maximum_dissolve_delay_bonus:e.neuronMaximumDissolveDelayBonus!==void 0?[No(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?[No(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?[ur(e.votingRewardParameters)]:[]}),nn=e=>({total:e.total!==void 0?[J(e.total)]:[]}),Or=e=>({treasury_distribution:e.treasuryDistribution!==void 0?[nn(e.treasuryDistribution)]:[],developer_distribution:e.developerDistribution!==void 0?[wr(e.developerDistribution)]:[],swap_distribution:e.swapDistribution!==void 0?[nn(e.swapDistribution)]:[]}),Rr=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)]:[]}),wr=e=>({developer_neurons:e.developerNeurons.map(Rr)}),vr=e=>({url:e.url!==void 0?[e.url]:[],governance_parameters:e.governanceParameters!==void 0?[fr(e.governanceParameters)]:[],fallback_controller_principal_ids:e.fallbackControllerPrincipalIds.map(ee.Principal.fromText),logo:e.logo!==void 0?[cn(e.logo)]:[],name:e.name!==void 0?[e.name]:[],ledger_parameters:e.ledgerParameters!==void 0?[lr(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?[mr(e.swapParameters)]:[],initial_token_distribution:e.initialTokenDistribution!==void 0?[Or(e.initialTokenDistribution)]:[]}),_n=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:kr(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:hr(t.neuronsFundEconomics)}}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{node_provider:t.nodeProvider?[fo(t.nodeProvider)]:[],amount_e8s:t.amountE8s,reward_mode:t.rewardMode!=null?[rn(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?[fo(o.nodeProvider)]:[],amount_e8s:o.amountE8s,reward_mode:o.rewardMode!=null?[rn(o.rewardMode)]:[]}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change?[br(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,cr(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:vr(e.CreateServiceNervousSystem)};throw new x(e)},gr=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(ko)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by?[xr(t.by)]:[]}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation?[yr(t.operation)]:[]}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal?[an(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?[_n(t.action)]:[],summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{to_account:t.toAccountId?[So(t.toAccountId)]:[],amount:t.amount?[dn(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 x(e)},yr=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 x(e)},br=e=>{if("ToRemove"in e)return{ToRemove:fo(e.ToRemove)};if("ToAdd"in e)return{ToAdd:fo(e.ToAdd)};throw new x(e)},fo=e=>({id:e.id!=null?[ee.Principal.fromText(e.id)]:[],reward_account:e.rewardAccount!=null?[So(e.rewardAccount)]:[]}),dn=e=>({e8s:e}),So=e=>({hash:(0,sn.accountIdentifierToBytes)(e)}),hr=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)}]},rn=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?[So(e.RewardToAccount.toAccount)]:[]}};throw new x(e)},xr=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)},pn=e=>({neuron_ids:BigUint64Array.from(e??[]),include_neurons_readable_by_caller:!e}),kr=({id:e,command:t,neuronIdOrSubaccount:o})=>({id:e?[ko(e)]:[],command:t?[gr(t)]:[],neuron_id_or_subaccount:o?[_r(o)]:[]}),un=({includeRewardStatus:e,beforeProposal:t,excludeTopic:o,includeStatus:n,limit:r,includeAllManageNeuronProposals:a,omitLargeFields:c})=>({include_reward_status:Int32Array.from(e),before_proposal:t?[an(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)}),ln=e=>({id:[],command:[{ClaimOrRefresh:{by:[{NeuronIdOrSubaccount:{}}]}}],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}),mn=({memo:e,controller:t})=>{let o={ClaimOrRefresh:{by:[{MemoAndController:{controller:t==null?[]:[t],memo:e}}]}};return{id:[],command:[o],neuron_id_or_subaccount:[]}},Nn=({neuronId:e,amount:t})=>({id:[],command:[{Split:{amount_e8s:t}}],neuron_id_or_subaccount:[{NeuronId:{id:e}}]});var fn=({neuronId:e,vote:t,proposalId:o})=>Ue({neuronId:e,command:{RegisterVote:{vote:t,proposal:[{id:o}]}}}),On=e=>{let t={MakeProposal:{url:e.url,title:e.title!=null?[e.title]:[],summary:e.summary,action:[_n(e.action)]}};return{id:[],command:[t],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}},Rn=({neuronId:e,topic:t,followees:o})=>Ue({neuronId:e,command:{Follow:{topic:t,followees:o.map(n=>({id:n}))}}}),wn=({neuronId:e,toAccountIdentifier:t,amount:o})=>Ue({neuronId:e,command:{Disburse:{to_account:t!==void 0?[t.toAccountIdentifierHash()]:[],amount:o!==void 0?[dn(o)]:[]}}}),vn=({neuronId:e,percentageToMerge:t})=>Ue({neuronId:e,command:{MergeMaturity:{percentage_to_merge:t}}}),gn=({neuronId:e,percentageToStake:t})=>Ue({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,b.toNullable)(t)}}}),yn=({neuronId:e,percentageToSpawn:t,newController:o,nonce:n})=>Ue({neuronId:e,command:{Spawn:{percentage_to_spawn:t===void 0?[]:[t],new_controller:o===void 0?[]:[o],nonce:n===void 0?[]:[n]}}}),bn=({neuronId:e,principal:t})=>be({neuronId:e,operation:{AddHotKey:{new_hot_key:[t]}}}),hn=({neuronId:e,principal:t})=>be({neuronId:e,operation:{RemoveHotKey:{hot_key_to_remove:[t]}}}),xn=({neuronId:e,additionalDissolveDelaySeconds:t})=>be({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),kn=({neuronId:e,dissolveDelaySeconds:t})=>be({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:BigInt(t)}}}),Sn=e=>be({neuronId:e,operation:{JoinCommunityFund:{}}}),Tn=({neuronId:e,autoStake:t})=>be({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),Pn=e=>be({neuronId:e,operation:{LeaveCommunityFund:{}}}),To=({sourceNeuronId:e,targetNeuronId:t})=>Ue({neuronId:t,command:{Merge:{source_neuron_id:[{id:e}]}}}),Vn=e=>be({neuronId:e,operation:{StartDissolving:{}}}),Cn=e=>be({neuronId:e,operation:{StopDissolving:{}}}),Ue=({neuronId:e,command:t})=>({id:[{id:e}],command:[t],neuron_id_or_subaccount:[]}),be=({neuronId:e,operation:t})=>Ue({neuronId:e,command:{Configure:{operation:[t]}}});var ze=require("@dfinity/ledger-icp"),Po=require("@dfinity/principal"),i=require("@dfinity/utils");var Vo=({neuronId:e,neuronInfo:t,rawNeuron:o,canisterId:n})=>{let r=o?Sr({neuron:o,canisterId:n}):void 0;return{neuronId:e,dissolveDelaySeconds:t.dissolve_delay_seconds,recentBallots:t.recent_ballots.map(qn),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}},Sr=({neuron:e,canisterId:t})=>({id:e.id.length?We(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(qn),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,ze.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?Tr(e.dissolve_state[0]):void 0,spawnAtTimesSeconds:e.spawn_at_timestamp_seconds[0],followees:e.followees.map(([o,n])=>En({topic:o,followees:n}))}),An=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)(Po.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=>Po.Principal.from(t)),account:ze.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:[]}),qn=({vote:e,proposal_id:t})=>({vote:e,proposalId:t.length?We(t[0]):void 0}),Tr=e=>"DissolveDelaySeconds"in e?{DissolveDelaySeconds:e.DissolveDelaySeconds}:{WhenDissolvedTimestampSeconds:e.WhenDissolvedTimestampSeconds},En=({topic:e,followees:t})=>({topic:e,followees:t.followees.map(We)}),We=({id:e})=>e,Pr=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)},Vr=({neuronId:e,ballot:t})=>{let{vote:o,voting_power:n}=t;return{neuronId:e,vote:o,votingPower:n}},Cr=({title:e,url:t,action:o,summary:n})=>({title:e.length?e[0]:void 0,url:t,action:o.length?Bn(o[0]):void 0,summary:n}),Bn=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?We(o.id[0]):void 0,command:o.command.length?Fr(o.command[0]):void 0,neuronIdOrSubaccount:o.neuron_id_or_subaccount.length?Pr(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:Er(o.neurons_fund_economics)}}}if("RewardNodeProvider"in e){let o=e.RewardNodeProvider;return{RewardNodeProvider:{nodeProvider:o.node_provider.length?Oo(o.node_provider[0]):void 0,amountE8s:o.amount_e8s,rewardMode:o.reward_mode.length?Mn(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?Oo(n.node_provider[0]):void 0,amountE8s:n.amount_e8s,rewardMode:n.reward_mode.length?Mn(n.reward_mode[0]):void 0}))}}}if("AddOrRemoveNodeProvider"in e){let o=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:o.change.length?qr(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])=>En({topic:n,followees:r}))}};if("RegisterKnownNeuron"in e){let o=e.RegisterKnownNeuron;return{RegisterKnownNeuron:Kr(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:Xr((0,i.fromNullable)(o.governance_parameters)),fallbackControllerPrincipalIds:o.fallback_controller_principal_ids.map(n=>n.toString()),logo:Un((0,i.fromNullable)(o.logo)),name:(0,i.fromNullable)(o.name),ledgerParameters:jr((0,i.fromNullable)(o.ledger_parameters)),description:(0,i.fromNullable)(o.description),dappCanisters:o.dapp_canisters.map(Hr)??[],swapParameters:$r((0,i.fromNullable)(o.swap_parameters)),initialTokenDistribution:Zr((0,i.fromNullable)(o.initial_token_distribution))}}}throw new x(e)},Mr=e=>({no:e.no,yes:e.yes,total:e.total,timestampSeconds:e.timestamp_seconds}),Fr=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(We)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by.length?Gr(t.by[0]):void 0}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation.length?Ar(t.operation[0]):void 0}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal.length?We(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?Bn(t.action[0]):void 0,summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{toAccountId:t.to_account.length?Co(t.to_account[0]):void 0,amount:t.amount.length?Br(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)},Ar=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)},qr=e=>{if("ToRemove"in e)return{ToRemove:Oo(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Oo(e.ToAdd)};throw new x(e)},Er=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,g=(0,i.fromNullable)(p);return(0,i.nonNullish)(g)?{basisPoints:g}:void 0},_=O=>{let R=(0,i.fromNullable)(O);if((0,i.isNullish)(R))return;let{human_readable:p}=R,g=(0,i.fromNullable)(p);return(0,i.nonNullish)(g)?{humanReadable:g}: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:g,contribution_threshold_xdr:k}=R;return{fullParticipationMilestoneXdr:_(p),oneThirdParticipationMilestoneXdr:_(g),contributionThresholdXdr:_(k)}};return{maximumIcpXdrRate:c(o),neuronsFundMatchedFundingCurveCoefficients:d(n),maxTheoreticalNeuronsFundParticipationAmountXdr:_(r),minimumIcpXdrRate:c(a)}},Oo=e=>({id:e.id.length?e.id[0].toString():void 0,rewardAccount:e.reward_account.length?Co(e.reward_account[0]):void 0}),Br=e=>e.e8s,Co=e=>(0,ze.accountIdentifierFromBytes)(new Uint8Array(e.hash)),Mn=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?Co(e.RewardToAccount.to_account[0]):void 0}};throw new x(e)},Gr=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)},Mo=e=>({id:e.id.length?We(e.id[0]):void 0,ballots:e.ballots.map(t=>Vr({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?Cr(e.proposal[0]):void 0,proposer:e.proposer.length?We(e.proposer[0]):void 0,latestTally:e.latest_tally.length?Mr(e.latest_tally[0]):void 0,executedTimestampSeconds:e.executed_timestamp_seconds,topic:e.topic,status:e.status,rewardStatus:e.reward_status}),Gn=({response:{neuron_infos:e,full_neurons:t},canisterId:o})=>e.map(([n,r])=>Vo({neuronId:n,neuronInfo:r,rawNeuron:t.find(a=>a.id.length&&a.id[0].id===n),canisterId:o})),Kn=({proposal_info:e})=>({proposals:e.map(Mo)}),Kr=({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])??""}},Ro=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)},Ur=e=>e===void 0?void 0:{secondsAfterUtcMidnight:(0,i.fromNullable)(e.seconds_after_utc_midnight)},Wr=e=>e===void 0?void 0:{isoCodes:e.iso_codes},$=e=>e===void 0?void 0:{e8s:(0,i.fromNullable)(e.e8s)},Hr=e=>e===void 0||e.id.length===0?void 0:(0,i.fromDefinedNullable)(e.id).toString(),Un=e=>e===void 0?void 0:{base64Encoding:(0,i.fromNullable)(e.base64_encoding)},jr=e=>e===void 0?void 0:{transactionFee:$((0,i.fromNullable)(e.transaction_fee)),tokenSymbol:(0,i.fromNullable)(e.token_symbol),tokenLogo:Un((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:Ro((0,i.fromNullable)(e.initial_reward_rate)),finalRewardRate:Ro((0,i.fromNullable)(e.final_reward_rate))},Xr=e=>e===void 0?void 0:{neuronMaximumDissolveDelayBonus:Ro((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:Ro((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))},Jr=e=>e===void 0?void 0:{dissolveDelayInterval:oe((0,i.fromNullable)(e.dissolve_delay_interval)),count:(0,i.fromNullable)(e.count)},$r=e=>e===void 0?void 0:{minimumParticipants:(0,i.fromNullable)(e.minimum_participants),duration:oe((0,i.fromNullable)(e.duration)),neuronBasketConstructionParameters:Jr((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:Ur((0,i.fromNullable)(e.start_time)),maximumIcp:$((0,i.fromNullable)(e.maximum_icp)),restrictedCountries:Wr((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)},Fn=e=>e===void 0?void 0:{total:$((0,i.fromNullable)(e.total))},Qr=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))},Yr=e=>e===void 0?void 0:{developerNeurons:e.developer_neurons.map(Qr)},Zr=e=>e===void 0?void 0:{treasuryDistribution:Fn((0,i.fromNullable)(e.treasury_distribution)),developerDistribution:Yr((0,i.fromNullable)(e.developer_distribution)),swapDistribution:Fn((0,i.fromNullable)(e.swap_distribution))};var ao=e=>{let{command:t}=e,o=t[0];if(!o)throw new ye({error_message:"Error updating neuron",error_type:0});if("Error"in o)throw new ye(o.Error);return o},V=async({request:e,service:t})=>{let o=await t.manage_neuron(e);return ao(o)},Wn=async({request:e,service:t})=>{let o=await t.simulate_manage_neuron(e);return ao(o)};var Fo=BigInt(1e8);var wo=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=pn(o),r=await this.getGovernanceService(t).list_neurons(n);return Gn({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,u.fromNullable)(n.id))==null?void 0:r.id)??BigInt(0),name:((a=(0,u.fromNullable)(n.known_neuron_data))==null?void 0:a.name)??"",description:(0,u.fromNullable)(((c=(0,u.fromNullable)(n.known_neuron_data))==null?void 0:c.description)??[])}});this.getLastestRewardEvent=async(t=!0)=>this.getGovernanceService(t).get_latest_reward_event();this.listProposals=async({request:t,certified:o=!0})=>{let n=un(t),r=await this.getGovernanceService(o).list_proposals(n);return Kn(r)};this.stakeNeuron=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:a,fee:c})=>{if(t<Fo)throw new je(t);let _=new Uint8Array((0,Ao.default)(8)),d=(0,u.uint8ArrayToBigInt)(_),O=this.buildNeuronStakeSubAccount(_,o),R=he.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,u.isNullish)(p))throw new He;return p};this.stakeNeuronIcrc1=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:a,fee:c})=>{if(t<Fo)throw new je(t);let _=new Uint8Array((0,Ao.default)(8)),d=(0,u.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,u.isNullish)(R))throw new He;return R};this.increaseDissolveDelay=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{let n=xn({neuronId:t,additionalDissolveDelaySeconds:o});await V({request:n,service:this.certifiedService})};this.setDissolveDelay=async({neuronId:t,dissolveDelaySeconds:o})=>{let n=kn({neuronId:t,dissolveDelaySeconds:o});await V({request:n,service:this.certifiedService})};this.startDissolving=async t=>{let o=Vn(t);await V({request:o,service:this.certifiedService})};this.stopDissolving=async t=>{let o=Cn(t);await V({request:o,service:this.certifiedService})};this.joinCommunityFund=async t=>{let o=Sn(t);await V({request:o,service:this.certifiedService})};this.autoStakeMaturity=async t=>{await V({request:Tn(t),service:this.certifiedService})};this.leaveCommunityFund=async t=>{let o=Pn(t);await V({request:o,service:this.certifiedService})};this.setNodeProviderAccount=async t=>{(0,he.checkAccountId)(t);let o=he.AccountIdentifier.fromHex(t),n=await this.certifiedService.update_node_provider({reward_account:[o.toAccountIdentifierHash()]});if("Err"in n)throw new ye(n.Err)};this.mergeNeurons=async t=>{let o=To(t);await V({request:o,service:this.certifiedService})};this.simulateMergeNeurons=async t=>{var d;let o=To(t),n=await Wn({request:o,service:this.certifiedService}),r,a,c,_;if("Merge"in n&&(0,u.nonNullish)(r=n.Merge)&&(0,u.nonNullish)(a=(0,u.fromNullable)(r.target_neuron_info))&&(0,u.nonNullish)(c=(0,u.fromNullable)(r.target_neuron))&&(0,u.nonNullish)(_=(d=(0,u.fromNullable)(c.id))==null?void 0:d.id))return Vo({neuronId:_,neuronInfo:a,rawNeuron:c,canisterId:this.canisterId});throw new ge(`simulateMergeNeurons: Unrecognized Merge error in ${JSON.stringify(n)}`)};this.splitNeuron=async({neuronId:t,amount:o})=>{let n=Nn({neuronId:t,amount:o}),r=await this.certifiedService.manage_neuron(n),a=ao(r);if("Split"in a){let c=(0,u.fromNullable)(a.Split.created_neuron_id);if((0,u.isNullish)(c))throw new ye({error_message:"Unexpected error splitting neuron. No neuronId in Split response.",error_type:0});return c.id}throw new ge(`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?Mo(n):void 0};this.makeProposal=async t=>{var r;let o=On(t),n=await V({request:o,service:this.certifiedService});return"MakeProposal"in n?(r=(0,u.fromNullable)(n.MakeProposal.proposal_id))==null?void 0:r.id:void 0};this.registerVote=async({neuronId:t,vote:o,proposalId:n})=>{let r=fn({neuronId:t,vote:o,proposalId:n});await V({request:r,service:this.certifiedService})};this.setFollowees=async t=>{let o=Rn(t);await V({request:o,service:this.certifiedService})};this.disburse=async({neuronId:t,toAccountId:o,amount:n})=>{(0,u.nonNullish)(o)&&(0,he.checkAccountId)(o);let r=(0,u.nonNullish)(o)?he.AccountIdentifier.fromHex(o):void 0,a=wn({neuronId:t,toAccountIdentifier:r,amount:n});await V({request:a,service:this.certifiedService})};this.mergeMaturity=async({neuronId:t,percentageToMerge:o})=>{(0,u.assertPercentageNumber)(o);let n=vn({neuronId:t,percentageToMerge:o});await V({request:n,service:this.certifiedService})};this.stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,u.assertPercentageNumber)(o??100),await V({request:gn({neuronId:t,percentageToStake:o}),service:this.certifiedService})};this.spawnNeuron=async({neuronId:t,percentageToSpawn:o,newController:n,nonce:r})=>{var O;(0,u.nonNullish)(o)&&(0,u.assertPercentageNumber)(o);let a=yn({neuronId:t,percentageToSpawn:o,newController:n,nonce:r}),c=await this.certifiedService.manage_neuron(a),_=ao(c),d;if("Spawn"in _&&(0,u.nonNullish)(d=(O=(0,u.fromNullable)(_.Spawn.created_neuron_id))==null?void 0:O.id))return d;throw new ge(`Unrecognized Spawn error in ${JSON.stringify(c)}`)};this.addHotkey=async({neuronId:t,principal:o})=>{let n=bn({neuronId:t,principal:o});await V({request:n,service:this.certifiedService})};this.removeHotkey=async({neuronId:t,principal:o})=>{let n=hn({neuronId:t,principal:o});await V({request:n,service:this.certifiedService})};this.claimOrRefreshNeuronFromAccount=async({memo:t,controller:o})=>{var c;let n=mn({memo:t,controller:o}),r=await this.certifiedService.manage_neuron(n),a;if((0,u.nonNullish)(a=(0,u.fromNullable)(r.command))&&"ClaimOrRefresh"in a)return(c=(0,u.fromNullable)(a.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:c.id;throw new ge(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(r)}`)};this.claimOrRefreshNeuron=async t=>{var a;let o=ln(t),n=await this.service.manage_neuron(o),r;if((0,u.nonNullish)(r=(0,u.fromNullable)(n.command))&&"ClaimOrRefresh"in r)return(a=(0,u.fromNullable)(r.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:a.id;throw new ge(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(n)}`)};this.buildNeuronStakeSubAccount=(t,o)=>he.SubAccount.fromBytes(this.getNeuronStakeSubAccountBytes(t,o));this.getNeuronStakeSubAccountBytes=(t,o)=>{let n=(0,u.asciiStringToByteArray)("neuron-stake"),r=Lo.create();return r.update((0,u.arrayOfNumberToUint8Array)([12,...n,...o.toUint8Array(),...t])),r.digest()};this.getNeuron=async({certified:t=!0,neuronId:o})=>{let[n]=await this.listNeurons({certified:t,neuronIds:[o]});return n};this.canisterId=t,this.service=o,this.certifiedService=n,this.agent=r}static create(t={}){let o=t.canisterId??co,{service:n,certifiedService:r,agent:a}=(0,u.createServices)({options:{...t,canisterId:o},idlFactory:mo,certifiedIdlFactory:on});return new e(o,n,r,a)}getGovernanceService(t){return t?this.certifiedService:this.service}};var jn=require("@dfinity/utils");var Hn=({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)}),g=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}),l=e.Record({dissolve_timestamp_seconds:e.Nat64}),Q=e.Variant({RemoveHotKey:g,AddHotKey:k,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:l}),K=e.Record({operation:e.Opt(Q)}),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)}),w=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(w),final_reward_rate:e.Opt(w)}),h=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(w),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(w),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)}),v=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(S)}),we=e.Record({dissolve_delay_seconds:e.Nat64}),s=e.Record({to_account:e.Opt(S)}),ve=e.Variant({RewardToNeuron:we,RewardToAccount:s}),M=e.Record({node_provider:e.Opt(v),reward_mode:e.Opt(ve),amount_e8s:e.Nat64}),Xe=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),Je=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(Xe),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)}),$e=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(Je)}),Qe=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Ye=e.Record({open_time_window:e.Opt(Qe)}),Ze=e.Record({request:e.Opt(Ye),swap_canister_id:e.Opt(e.Principal)}),Ie=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),xe=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(M)}),F=e.Record({human_readable:e.Opt(e.Text)}),De=e.Record({contribution_threshold_xdr:e.Opt(F),one_third_participation_milestone_xdr:e.Opt(F),full_participation_milestone_xdr:e.Opt(F)}),Le=e.Record({maximum_icp_xdr_rate:e.Opt(w),neurons_fund_matched_funding_curve_coefficients:e.Opt(De),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(F),minimum_icp_xdr_rate:e.Opt(w)}),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(Le)}),et=e.Record({principals:e.Vec(e.Principal)}),tt=e.Variant({ToRemove:v,ToAdd:v}),ot=e.Record({change:e.Opt(tt)}),nt=e.Record({motion_text:e.Text}),rt=e.Variant({RegisterKnownNeuron:a,ManageNeuron:P,CreateServiceNervousSystem:Oe,ExecuteNnsFunction:Re,RewardNodeProvider:M,OpenSnsTokenSwap:$e,SetSnsTokenSwapOpenTimeWindow:Ze,SetDefaultFollowees:Ie,RewardNodeProviders:xe,ManageNetworkEconomics:Y,ApproveGenesisKyc:et,AddOrRemoveNodeProvider:ot,Motion:nt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(rt),summary:e.Text}));let st=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),ke=e.Record({timestamp:e.Nat64,rewards:e.Vec(M)}),Se=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}),Te=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)}),Pe=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}),at=e.Record({followers:e.Vec(o)}),it=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,at))}),ct=e.Variant({LastNeuronId:o}),Ve=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(ct)}),_t=e.Record({neuron_indexes_migration:e.Opt(Ve),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ve)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),dt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),pt=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(dt)}),Ce=e.Record({vote:e.Int32,voting_power:e.Nat64}),ut=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)}),lt=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(lt)}),mt=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(ut),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(Z),ideal_matched_participation_function:e.Opt(mt),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Nt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),ft=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(ft),canister_id:e.Opt(e.Principal)}),Ot=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)}),Me=e.Record({swap_background_information:e.Opt(Ot)}),Fe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Rt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),wt=e.Record({id:e.Opt(o),failure_reason:e.Opt(N),cf_participants:e.Vec(pt),ballots:e.Vec(e.Tuple(e.Nat64,Ce)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Nt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Me),latest_tally:e.Opt(Fe),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(Rt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),vt=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),gt=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:p,MergeMaturity:H,Disburse:j}),yt=e.Record({command:e.Opt(gt),timestamp:e.Nat64}),Ae=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),bt=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(Ae),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(bt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Pe),known_neuron_data:e.Opt(r),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),qo=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(ke),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Se),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),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Te),to_claim_transfers:e.Vec(Pe),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,it)),migrations:e.Opt(_t),proposals:e.Vec(e.Tuple(e.Nat64,wt)),xdr_conversion_rate:e.Opt(vt),in_flight_commands:e.Vec(e.Tuple(e.Nat64,yt)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),q=e.Variant({Ok:e.Null,Err:N}),ht=e.Variant({Error:N,NeuronId:o}),xt=e.Record({result:e.Opt(ht)}),qe=e.Variant({Ok:T,Err:N}),kt=e.Variant({Ok:Se,Err:N}),St=e.Variant({Ok:xe,Err:N}),E=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Ae),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}),Ee=e.Variant({Ok:E,Err:N}),Tt=e.Record({nns_proposal_id:e.Opt(o)}),Pt=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({neurons_fund_audit_info:e.Opt(Pt)}),Ct=e.Variant({Ok:Vt,Err:N}),Mt=e.Record({result:e.Opt(Ct)}),Ft=e.Variant({Ok:v,Err:N}),I=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Nat64,Ce)),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(Me),latest_tally:e.Opt(Fe),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),At=e.Record({known_neurons:e.Vec(a)}),qt=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),Et=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,E)),full_neurons:e.Vec(T)}),Bt=e.Record({node_providers:e.Vec(v)}),Gt=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)}),Kt=e.Record({proposal_info:e.Vec(I)}),D=e.Record({created_neuron_id:e.Opt(o)}),Ut=e.Record({refreshed_neuron_id:e.Opt(o)}),Wt=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(E),source_neuron_info:e.Opt(E)}),Ht=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(o)}),jt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),zt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Xt=e.Record({transfer_block_height:e.Nat64}),Jt=e.Variant({Error:N,Spawn:D,Split:D,Follow:e.Record({}),ClaimOrRefresh:Ut,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:Wt,DisburseToNeuron:D,MakeProposal:Ht,StakeMaturity:jt,MergeMaturity:zt,Disburse:Xt}),Be=e.Record({command:e.Opt(Jt)}),$t=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)}),Qt=e.Variant({Committed:$t,Aborted:e.Record({})}),Yt=e.Record({result:e.Opt(Qt),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Zt=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)}),It=e.Variant({Committed:Zt,Aborted:e.Record({})}),Dt=e.Record({result:e.Opt(It),nns_proposal_id:e.Opt(e.Nat64)}),Lt=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)}),eo=e.Record({neurons_fund_neuron_portions:e.Vec(Lt)}),to=e.Variant({Ok:eo,Err:N}),oo=e.Record({result:e.Opt(to)}),no=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],[xt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[qe],[]),get_full_neuron_by_id_or_subaccount:e.Func([C],[qe],[]),get_latest_reward_event:e.Func([],[Te],[]),get_metrics:e.Func([],[kt],[]),get_monthly_node_provider_rewards:e.Func([],[St],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(ke)],[]),get_network_economics_parameters:e.Func([],[Y],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Ee],[]),get_neuron_info_by_id_or_subaccount:e.Func([C],[Ee],[]),get_neurons_fund_audit_info:e.Func([Tt],[Mt],[]),get_node_provider_by_caller:e.Func([e.Null],[Ft],[]),get_pending_proposals:e.Func([],[e.Vec(I)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(I)],[]),list_known_neurons:e.Func([],[At],[]),list_neurons:e.Func([qt],[Et],[]),list_node_providers:e.Func([],[Bt],[]),list_proposals:e.Func([Gt],[Kt],[]),manage_neuron:e.Func([P],[Be],[]),settle_community_fund_participation:e.Func([Yt],[q],[]),settle_neurons_fund_participation:e.Func([Dt],[oo],[]),simulate_manage_neuron:e.Func([P],[Be],[]),transfer_gtc_neuron:e.Func([o,o],[q],[]),update_neuron:e.Func([T],[e.Opt(N)],[]),update_node_provider:e.Func([no],[q],[])})};var vo=class e{constructor(t){this.certifiedService=t;this.certifiedService=t}static create(t={}){let o=t.canisterId??co,{certifiedService:n}=(0,jn.createServices)({options:{...t,canisterId:o},idlFactory:mo,certifiedIdlFactory:Hn});return new e(n)}updateNeuron(t){this.certifiedService.update_neuron(An(t))}};var Jn=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),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)}),g=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)}),l=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)}),ne=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(l),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(g),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)}),w=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({sns_subnet_ids:e.Vec(e.Principal)}),de=e.Record({hash:e.Vec(e.Nat8)}),pe=e.Record({wasm:e.Opt(o)}),ue=e.Record({next_version:e.Opt(h),current_version:e.Opt(h)}),le=e.Record({upgrade_path:e.Vec(ue),sns_governance_canister_id:e.Opt(e.Principal)}),X=e.Record({error:e.Opt(r)}),me=e.Record({instances:e.Vec(f)}),Ne=e.Record({limit:e.Nat32,starting_at:e.Opt(h),sns_governance_canister_id:e.Opt(e.Principal)}),fe=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}),Oe=e.Record({pretty_version:e.Opt(fe),version:e.Opt(h)}),Re=e.Record({steps:e.Vec(Oe)}),v=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),we=e.Variant({Error:r,AllowedPrincipals:P}),s=e.Record({update_allowed_principals_result:e.Opt(we)}),ve=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),M=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([w],[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_sns_subnet_ids:e.Func([e.Record({})],[_e],[]),get_wasm:e.Func([de],[pe],[]),insert_upgrade_path_entries:e.Func([le],[X],[]),list_deployed_snses:e.Func([e.Record({})],[me],[]),list_upgrade_steps:e.Func([Ne],[Re],[]),update_allowed_principals:e.Func([v],[s],[]),update_sns_subnet_list:e.Func([ve],[M],[])})};var Xn=({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),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)}),g=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)}),l=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)}),ne=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(l),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(g),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)}),w=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({sns_subnet_ids:e.Vec(e.Principal)}),de=e.Record({hash:e.Vec(e.Nat8)}),pe=e.Record({wasm:e.Opt(o)}),ue=e.Record({next_version:e.Opt(h),current_version:e.Opt(h)}),le=e.Record({upgrade_path:e.Vec(ue),sns_governance_canister_id:e.Opt(e.Principal)}),X=e.Record({error:e.Opt(r)}),me=e.Record({instances:e.Vec(f)}),Ne=e.Record({limit:e.Nat32,starting_at:e.Opt(h),sns_governance_canister_id:e.Opt(e.Principal)}),fe=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}),Oe=e.Record({pretty_version:e.Opt(fe),version:e.Opt(h)}),Re=e.Record({steps:e.Vec(Oe)}),v=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),we=e.Variant({Error:r,AllowedPrincipals:P}),s=e.Record({update_allowed_principals_result:e.Opt(we)}),ve=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),M=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([w],[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_sns_subnet_ids:e.Func([e.Record({})],[_e],["query"]),get_wasm:e.Func([de],[pe],["query"]),insert_upgrade_path_entries:e.Func([le],[X],[]),list_deployed_snses:e.Func([e.Record({})],[me],["query"]),list_upgrade_steps:e.Func([Ne],[Re],["query"]),update_allowed_principals:e.Func([v],[s],[]),update_sns_subnet_list:e.Func([ve],[M],[])})};var go=class e{constructor(t,o){this.service=t;this.certifiedService=o;this.listSnses=async({certified:t=!0})=>{let o=t?this.certifiedService:this.service,{instances:n}=await o.list_deployed_snses({});return n}}static create(t={}){let{service:o,certifiedService:n}=(0,Jn.createServices)({options:{...t,canisterId:t.canisterId??$o},idlFactory:Xn,certifiedIdlFactory:zn});return new e(o,n)}};var $n=({recentBallots:e,proposalId:t})=>{if(!t)return;let o=e.find(({proposalId:n})=>n===t);return o==null?void 0:o.vote},Qn=({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||_})},Ir=({neurons:e,proposal:t})=>{let{id:o}=t;return e.filter(({recentBallots:n,neuronId:r})=>$n({recentBallots:n,proposalId:o})===void 0&&Qn({neurons:e,proposal:t}).find(({neuronId:a})=>a===r)===void 0)},Dr=({neurons:e,proposal:{id:t}})=>e.filter(({recentBallots:o})=>$n({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});
|
|
3
2
|
/*! Bundled license information:
|
|
4
3
|
|
|
5
4
|
@noble/hashes/esm/utils.js:
|