@dfinity/nns 11.1.4 → 12.0.0-beta-2025-12-18

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.
Files changed (50) hide show
  1. package/README.md +4 -4
  2. package/dist/index.d.ts +10 -15
  3. package/dist/index.js +1 -7
  4. package/dist/index.js.map +4 -4
  5. package/dist/index.mjs +1 -7
  6. package/dist/index.mjs.map +4 -4
  7. package/package.json +4 -9
  8. package/dist/candid/genesis_token.certified.idl.d.ts +0 -2
  9. package/dist/candid/genesis_token.certified.idl.js +0 -49
  10. package/dist/candid/genesis_token.d.ts +0 -46
  11. package/dist/candid/genesis_token.did +0 -49
  12. package/dist/candid/genesis_token.idl.d.ts +0 -2
  13. package/dist/candid/genesis_token.idl.js +0 -49
  14. package/dist/candid/governance.certified.idl.d.ts +0 -2
  15. package/dist/candid/governance.certified.idl.js +0 -1788
  16. package/dist/candid/governance.d.ts +0 -1339
  17. package/dist/candid/governance.did +0 -1478
  18. package/dist/candid/governance.idl.d.ts +0 -2
  19. package/dist/candid/governance.idl.js +0 -1796
  20. package/dist/candid/governance_test.certified.idl.d.ts +0 -2
  21. package/dist/candid/governance_test.certified.idl.js +0 -1789
  22. package/dist/candid/governance_test.d.ts +0 -1343
  23. package/dist/candid/governance_test.did +0 -1481
  24. package/dist/candid/governance_test.idl.d.ts +0 -2
  25. package/dist/candid/governance_test.idl.js +0 -1797
  26. package/dist/candid/old_list_neurons_service.certified.idl.d.ts +0 -2
  27. package/dist/candid/old_list_neurons_service.certified.idl.js +0 -87
  28. package/dist/candid/sns_wasm.certified.idl.d.ts +0 -2
  29. package/dist/candid/sns_wasm.certified.idl.js +0 -331
  30. package/dist/candid/sns_wasm.d.ts +0 -315
  31. package/dist/candid/sns_wasm.did +0 -350
  32. package/dist/candid/sns_wasm.idl.d.ts +0 -2
  33. package/dist/candid/sns_wasm.idl.js +0 -331
  34. package/dist/canisters/governance/request.converters.d.ts +0 -108
  35. package/dist/canisters/governance/response.converters.d.ts +0 -26
  36. package/dist/canisters/governance/services.d.ts +0 -21
  37. package/dist/constants/canister_ids.d.ts +0 -5
  38. package/dist/constants/constants.d.ts +0 -1
  39. package/dist/enums/governance.enums.d.ts +0 -138
  40. package/dist/errors/governance.errors.d.ts +0 -21
  41. package/dist/genesis_token.canister.d.ts +0 -11
  42. package/dist/governance.canister.d.ts +0 -361
  43. package/dist/governance_test.canister.d.ts +0 -15
  44. package/dist/sns_wasm.canister.d.ts +0 -11
  45. package/dist/types/common.d.ts +0 -6
  46. package/dist/types/governance.options.d.ts +0 -7
  47. package/dist/types/governance_converters.d.ts +0 -821
  48. package/dist/types/sns_wasm.options.d.ts +0 -3
  49. package/dist/utils/account_identifier.utils.d.ts +0 -5
  50. package/dist/utils/neurons.utils.d.ts +0 -50
package/README.md CHANGED
@@ -32,7 +32,7 @@ npm i @icp-sdk/core @dfinity/utils
32
32
  Most features are provided through the use of classes. For example, querying the list of neurons controlled by the caller with the `governance` canister:
33
33
 
34
34
  ```ts
35
- import { GovernanceCanister } from "@dfinity/nns";
35
+ import { NnsGovernanceCanister } from "@dfinity/nns";
36
36
  import { createAgent } from "@dfinity/utils";
37
37
 
38
38
  const agent = await createAgent({
@@ -40,7 +40,7 @@ const agent = await createAgent({
40
40
  host: HOST,
41
41
  });
42
42
 
43
- const { listNeurons } = GovernanceCanister.create({
43
+ const { listNeurons } = NnsGovernanceCanister.create({
44
44
  agent,
45
45
  canisterId: MY_GOVERNANCE_CANISTER_ID,
46
46
  });
@@ -51,7 +51,7 @@ const myNeurons = await listNeurons({ certified: false });
51
51
  To execute this on a local environment, you will need to fetch the root key when initializing the agent. Additionally, you might need to adapt the port. The following snippet also demonstrates how you can inline a canister ID as well.
52
52
 
53
53
  ```typescript
54
- import { GovernanceCanister } from "@dfinity/nns";
54
+ import { NnsGovernanceCanister } from "@dfinity/nns";
55
55
  import { Principal } from "@icp-sdk/core/principal";
56
56
  import { createAgent } from "@dfinity/utils";
57
57
 
@@ -61,7 +61,7 @@ const agent = await createAgent({
61
61
  fetchRootKey: true,
62
62
  });
63
63
 
64
- const { listNeurons } = GovernanceCanister.create({
64
+ const { listNeurons } = NnsGovernanceCanister.create({
65
65
  agent,
66
66
  canisterId: Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),
67
67
  });
package/dist/index.d.ts CHANGED
@@ -1,17 +1,12 @@
1
+ import type { NnsGovernanceDid, SnsWasmDid } from "@icp-sdk/canisters/nns";
2
+ export type RewardEvent = NnsGovernanceDid.RewardEvent;
3
+ export type DeployedSns = SnsWasmDid.DeployedSns;
1
4
  /**
2
- * @module api/nns
5
+ * @deprecated Use "@icp-sdk/canisters/nns" directly instead
3
6
  */
4
- export type { RewardEvent } from "./candid/governance";
5
- export type { DeployedSns } from "./candid/sns_wasm";
6
- export * from "./enums/governance.enums";
7
- export * from "./errors/governance.errors";
8
- export { GenesisTokenCanister } from "./genesis_token.canister";
9
- export { GovernanceCanister } from "./governance.canister";
10
- export { GovernanceTestCanister } from "./governance_test.canister";
11
- export { SnsWasmCanister } from "./sns_wasm.canister";
12
- export * from "./types/common";
13
- export * from "./types/governance.options";
14
- export * from "./types/governance_converters";
15
- export type { SnsWasmCanisterOptions } from "./types/sns_wasm.options";
16
- export * from "./utils/account_identifier.utils";
17
- export * from "./utils/neurons.utils";
7
+ export * from "@icp-sdk/canisters/nns";
8
+ /**
9
+ * Legacy re-export for backward compatibility.
10
+ * @deprecated Use "@icp-sdk/canisters/nns" directly instead
11
+ */
12
+ export { NnsGenesisTokenCanister as GenesisTokenCanister, NnsGovernanceCanister as GovernanceCanister, NnsGovernanceTestCanister as GovernanceTestCanister, type NnsGovernanceCanisterOptions as GovernanceCanisterOptions, } from "@icp-sdk/canisters/nns";
package/dist/index.js CHANGED
@@ -1,8 +1,2 @@
1
- var Wr=(i=>(i[i.Unspecified=0]="Unspecified",i[i.Locked=1]="Locked",i[i.Dissolving=2]="Dissolving",i[i.Dissolved=3]="Dissolved",i[i.Spawning=4]="Spawning",i))(Wr||{}),jr=(l=>(l[l.Unspecified=0]="Unspecified",l[l.NeuronManagement=1]="NeuronManagement",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.IcOsVersionDeployment=12]="IcOsVersionDeployment",l[l.IcOsVersionElection=13]="IcOsVersionElection",l[l.SnsAndCommunityFund=14]="SnsAndCommunityFund",l[l.ApiBoundaryNodeManagement=15]="ApiBoundaryNodeManagement",l[l.SubnetRental=16]="SubnetRental",l[l.ProtocolCanisterManagement=17]="ProtocolCanisterManagement",l[l.ServiceNervousSystemManagement=18]="ServiceNervousSystemManagement",l))(jr||{}),zr=(i=>(i[i.Unknown=0]="Unknown",i[i.AcceptVotes=1]="AcceptVotes",i[i.ReadyToSettle=2]="ReadyToSettle",i[i.Settled=3]="Settled",i[i.Ineligible=4]="Ineligible",i))(zr||{}),Xr=(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))(Xr||{}),Vn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(Vn||{}),Jr=(a=>(a[a.Unspecified=0]="Unspecified",a[a.CreateSubnet=1]="CreateSubnet",a[a.AddNodeToSubnet=2]="AddNodeToSubnet",a[a.NnsCanisterInstall=3]="NnsCanisterInstall",a[a.NnsCanisterUpgrade=4]="NnsCanisterUpgrade",a[a.BlessReplicaVersion=5]="BlessReplicaVersion",a[a.RecoverSubnet=6]="RecoverSubnet",a[a.UpdateConfigOfSubnet=7]="UpdateConfigOfSubnet",a[a.AssignNoid=8]="AssignNoid",a[a.NnsRootUpgrade=9]="NnsRootUpgrade",a[a.IcpXdrConversionRate=10]="IcpXdrConversionRate",a[a.DeployGuestosToAllSubnetNodes=11]="DeployGuestosToAllSubnetNodes",a[a.ClearProvisionalWhitelist=12]="ClearProvisionalWhitelist",a[a.RemoveNodesFromSubnet=13]="RemoveNodesFromSubnet",a[a.SetAuthorizedSubnetworks=14]="SetAuthorizedSubnetworks",a[a.SetFirewallConfig=15]="SetFirewallConfig",a[a.UpdateNodeOperatorConfig=16]="UpdateNodeOperatorConfig",a[a.StopOrStartNnsCanister=17]="StopOrStartNnsCanister",a[a.RemoveNodes=18]="RemoveNodes",a[a.UninstallCode=19]="UninstallCode",a[a.UpdateNodeRewardsTable=20]="UpdateNodeRewardsTable",a[a.AddOrRemoveDataCenters=21]="AddOrRemoveDataCenters",a[a.UpdateUnassignedNodesConfig=22]="UpdateUnassignedNodesConfig",a[a.RemoveNodeOperators=23]="RemoveNodeOperators",a[a.RerouteCanisterRanges=24]="RerouteCanisterRanges",a[a.AddFirewallRules=25]="AddFirewallRules",a[a.RemoveFirewallRules=26]="RemoveFirewallRules",a[a.UpdateFirewallRules=27]="UpdateFirewallRules",a[a.PrepareCanisterMigration=28]="PrepareCanisterMigration",a[a.CompleteCanisterMigration=29]="CompleteCanisterMigration",a[a.AddSnsWasm=30]="AddSnsWasm",a[a.ChangeSubnetMembership=31]="ChangeSubnetMembership",a[a.UpdateSubnetType=32]="UpdateSubnetType",a[a.ChangeSubnetTypeAssignment=33]="ChangeSubnetTypeAssignment",a[a.UpdateSnsWasmSnsSubnetIds=34]="UpdateSnsWasmSnsSubnetIds",a[a.UpdateAllowedPrincipals=35]="UpdateAllowedPrincipals",a[a.RetireReplicaVersion=36]="RetireReplicaVersion",a[a.InsertSnsWasmUpgradePathEntries=37]="InsertSnsWasmUpgradePathEntries",a[a.ReviseElectedGuestosVersions=38]="ReviseElectedGuestosVersions",a[a.BitcoinSetConfig=39]="BitcoinSetConfig",a[a.UpdateElectedHostosVersions=40]="UpdateElectedHostosVersions",a[a.UpdateNodesHostosVersion=41]="UpdateNodesHostosVersion",a[a.HardResetNnsRootToVersion=42]="HardResetNnsRootToVersion",a[a.AddApiBoundaryNodes=43]="AddApiBoundaryNodes",a[a.RemoveApiBoundaryNodes=44]="RemoveApiBoundaryNodes",a[a.UpdateApiBoundaryNodeDomain=45]="UpdateApiBoundaryNodeDomain",a[a.UpdateApiBoundaryNodesVersion=46]="UpdateApiBoundaryNodesVersion",a[a.DeployGuestosToSomeApiBoundaryNodes=47]="DeployGuestosToSomeApiBoundaryNodes",a[a.DeployGuestosToAllUnassignedNodes=48]="DeployGuestosToAllUnassignedNodes",a[a.UpdateSshReadOnlyAccessForAllUnassignedNodes=49]="UpdateSshReadOnlyAccessForAllUnassignedNodes",a[a.ReviseElectedHostosVersions=50]="ReviseElectedHostosVersions",a[a.DeployHostosToSomeNodes=51]="DeployHostosToSomeNodes",a[a.SubnetRentalRequest=52]="SubnetRentalRequest",a[a.PauseCanisterMigrations=53]="PauseCanisterMigrations",a[a.UnpauseCanisterMigrations=54]="UnpauseCanisterMigrations",a[a.SetSubnetOperationalLevel=55]="SetSubnetOperationalLevel",a))(Jr||{}),Qr=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Seed=1]="Seed",n[n.Ect=2]="Ect",n))(Qr||{}),$r=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Controllers=1]="Controllers",n[n.Public=2]="Public",n))($r||{}),Yr=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Stop=1]="Stop",n[n.Start=2]="Start",n))(Yr||{}),Zr=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Private=1]="Private",n[n.Public=2]="Public",n))(Zr||{}),Ir=(r=>(r[r.Unspecified=0]="Unspecified",r[r.Install=1]="Install",r[r.Reinstall=2]="Reinstall",r[r.Upgrade=3]="Upgrade",r))(Ir||{});var Jo=class extends Error{},Qo=class extends Jo{},$o=class extends Jo{constructor(o){super();this.minimumAmount=o}},Le=class extends Error{},Ae=class extends Error{constructor(o){super();this.detail=o}},M=class extends Error{constructor(t){super(`Unsupported value: ${t}`)}};import{createServices as Dr}from"@dfinity/utils";var Pn=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Variant({Ok:e.Vec(t),Err:e.Text}),n=e.Variant({Ok:e.Null,Err:e.Text}),r=e.Record({error:e.Opt(e.Text),timestamp_seconds:e.Nat64,neuron_id:e.Opt(t)}),i=e.Record({authenticated_principal_id:e.Opt(e.Principal),successfully_transferred_neurons:e.Vec(r),is_whitelisted_for_forwarding:e.Bool,has_donated:e.Bool,failed_transferred_neurons:e.Vec(r),neuron_ids:e.Vec(t),has_claimed:e.Bool,has_forwarded:e.Bool,icpts:e.Nat32}),c=e.Variant({Ok:i,Err:e.Text});return e.Service({balance:e.Func([e.Text],[e.Nat32],[]),claim_neurons:e.Func([e.Text],[o],[]),donate_account:e.Func([e.Text],[n],[]),forward_whitelisted_unclaimed_accounts:e.Func([e.Null],[n],[]),get_account:e.Func([e.Text],[c],[]),get_build_metadata:e.Func([],[e.Text],[]),len:e.Func([],[e.Nat16],[]),total:e.Func([],[e.Nat32],[])})};var Tn=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Variant({Ok:e.Vec(t),Err:e.Text}),n=e.Variant({Ok:e.Null,Err:e.Text}),r=e.Record({error:e.Opt(e.Text),timestamp_seconds:e.Nat64,neuron_id:e.Opt(t)}),i=e.Record({authenticated_principal_id:e.Opt(e.Principal),successfully_transferred_neurons:e.Vec(r),is_whitelisted_for_forwarding:e.Bool,has_donated:e.Bool,failed_transferred_neurons:e.Vec(r),neuron_ids:e.Vec(t),has_claimed:e.Bool,has_forwarded:e.Bool,icpts:e.Nat32}),c=e.Variant({Ok:i,Err:e.Text});return e.Service({balance:e.Func([e.Text],[e.Nat32],["query"]),claim_neurons:e.Func([e.Text],[o],[]),donate_account:e.Func([e.Text],[n],[]),forward_whitelisted_unclaimed_accounts:e.Func([e.Null],[n],[]),get_account:e.Func([e.Text],[c],["query"]),get_build_metadata:e.Func([],[e.Text],["query"]),len:e.Func([],[e.Nat16],["query"]),total:e.Func([],[e.Nat32],["query"])})};import{Principal as Yo}from"@icp-sdk/core/principal";var ba=Yo.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),Zo=Yo.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),Cn=Yo.fromText("renrk-eyaaa-aaaaa-aaada-cai"),Mn=Yo.fromText("r7inp-6aaaa-aaaaa-aaabq-cai");var pn=class e{constructor(t){this.service=t}static create(t={}){let{service:o}=Dr({options:{...t,canisterId:t.canisterId??Cn},idlFactory:Tn,certifiedIdlFactory:Pn});return new e(o)}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)}};import{AccountIdentifier as Br,checkAccountId as Gr}from"@dfinity/ledger-icp";import{assertPercentageNumber as bn,createServices as pa,fromNullable as q,isNullish as un,nonNullish as ge,uint8ArrayToBigInt as la}from"@dfinity/utils";import{Actor as ma}from"@icp-sdk/core/agent";var An=({IDL:e})=>{let t=e.Rec(),o=e.Rec(),n=e.Record({id:e.Nat64}),r=e.Record({followees:e.Vec(n)}),i=e.Record({day:e.Nat32,month:e.Nat32,year:e.Nat32}),c=e.Record({hash:e.Vec(e.Nat8)}),_=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(c)}),d=e.Record({dissolve_delay_seconds:e.Nat64}),R=e.Record({to_account:e.Opt(c)}),N=e.Variant({RewardToNeuron:d,RewardToAccount:R}),u=e.Record({node_provider:e.Opt(_),reward_mode:e.Opt(N),amount_e8s:e.Nat64}),w=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),g=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),end_date:e.Opt(i),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(_),start_date:e.Opt(i),timestamp:e.Nat64,rewards:e.Vec(u),xdr_conversion_rate:e.Opt(w),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),h=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),deciding_voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),total_potential_voting_power:e.Opt(e.Nat64),total_deciding_voting_power:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),potential_voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),F=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,fully_lost_voting_power_neuron_subset_metrics:e.Opt(h),not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),spawning_neurons_count:e.Nat64,declining_voting_power_neuron_subset_metrics:e.Opt(h),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(h),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),public_neuron_subset_metrics:e.Opt(h),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),ve=e.Record({start_reducing_voting_power_after_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),clear_following_after_seconds:e.Opt(e.Nat64)}),b=e.Record({basis_points:e.Opt(e.Nat64)}),V=e.Record({human_readable:e.Opt(e.Text)}),l=e.Record({contribution_threshold_xdr:e.Opt(V),one_third_participation_milestone_xdr:e.Opt(V),full_participation_milestone_xdr:e.Opt(V)}),we=e.Record({maximum_icp_xdr_rate:e.Opt(b),neurons_fund_matched_funding_curve_coefficients:e.Opt(l),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(V),minimum_icp_xdr_rate:e.Opt(b)}),P=e.Record({neuron_minimum_stake_e8s:e.Nat64,voting_power_economics:e.Opt(ve),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(we)}),ye=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),X=e.Record({groups:e.Vec(ye),timestamp_seconds:e.Opt(e.Nat64)}),m=e.Record({id:e.Nat64}),H=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(m)}),J=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}),p=e.Record({error_message:e.Text,error_type:e.Int32}),Q=e.Record({vote:e.Int32,voting_power:e.Nat64}),be=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)}),x=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Vec(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(n),amount_icp_e8s:e.Opt(e.Nat64)}),E=e.Record({neurons_fund_neuron_portions:e.Vec(x)}),he=e.Record({serialized_representation:e.Opt(e.Text)}),T=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(be),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(E),ideal_matched_participation_function:e.Opt(he),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Se=e.Record({final_neurons_fund_participation:e.Opt(T),initial_neurons_fund_participation:e.Opt(T),neurons_fund_refunds:e.Opt(E)}),xe=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(xe),canister_id:e.Opt(e.Principal)}),ke=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)}),$=e.Record({swap_background_information:e.Opt(ke)}),Y=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Ve=e.Variant({Kyc:e.Null,ServiceNervousSystemManagement:e.Null,ApiBoundaryNodeManagement:e.Null,ApplicationCanisterManagement:e.Null,SubnetRental:e.Null,NeuronManagement:e.Null,NodeProviderRewards:e.Null,SubnetManagement:e.Null,ExchangeRate:e.Null,CatchAll:e.Null,NodeAdmin:e.Null,IcOsVersionElection:e.Null,ProtocolCanisterManagement:e.Null,NetworkEconomics:e.Null,IcOsVersionDeployment:e.Null,ParticipantManagement:e.Null,Governance:e.Null,SnsAndCommunityFund:e.Null}),B=e.Record({name:e.Text,committed_topics:e.Opt(e.Vec(e.Opt(Ve))),description:e.Opt(e.Text),links:e.Opt(e.Vec(e.Text))}),G=e.Record({id:e.Opt(n),known_neuron_data:e.Opt(B)}),Z=e.Record({user:e.Opt(e.Principal),replica_version_id:e.Opt(e.Text),node_ids:e.Opt(e.Vec(e.Principal))}),I=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),U=e.Record({memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),D=e.Record({topic:e.Int32,followees:e.Vec(n)}),L=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),ee=e.Record({to_account_identifier:e.Opt(c),to_account:e.Opt(L),percentage_to_disburse:e.Nat32}),te=e.Record({}),oe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Pe=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:oe,Memo:e.Nat64}),K=e.Record({by:e.Opt(Pe)}),Te=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),Ce=e.Record({new_hot_key:e.Opt(e.Principal)}),Me=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),a=e.Record({additional_dissolve_delay_seconds:e.Nat32}),st=e.Record({visibility:e.Opt(e.Int32)}),at=e.Record({dissolve_timestamp_seconds:e.Nat64}),it=e.Variant({RemoveHotKey:Te,AddHotKey:Ce,ChangeAutoStakeMaturity:Me,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:a,SetVisibility:st,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:at}),se=e.Record({operation:e.Opt(it)}),Ee=e.Record({vote:e.Int32,proposal:e.Opt(m)}),ae=e.Record({source_neuron_id:e.Opt(n)}),ie=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),ct=e.Record({topic:e.Opt(e.Int32),followees:e.Opt(e.Vec(n))}),Be=e.Record({topic_following:e.Opt(e.Vec(ct))}),Ge=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),ce=e.Record({percentage_to_merge:e.Nat32}),_t=e.Record({e8s:e.Nat64}),_e=e.Record({to_account:e.Opt(c),amount:e.Opt(_t)}),dt=e.Variant({Spawn:I,Split:U,Follow:D,DisburseMaturity:ee,RefreshVotingPower:te,ClaimOrRefresh:K,Configure:se,RegisterVote:Ee,Merge:ae,DisburseToNeuron:ie,SetFollowing:Be,MakeProposal:o,StakeMaturity:Ge,MergeMaturity:ce,Disburse:_e}),W=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),ut=e.Record({id:e.Opt(n),command:e.Opt(dt),neuron_id_or_subaccount:e.Opt(W)}),pt=e.Record({controllers:e.Vec(e.Principal)}),lt=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),controllers:e.Opt(pt),log_visibility:e.Opt(e.Int32),wasm_memory_limit:e.Opt(e.Nat64),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),Ue=e.Record({canister_id:e.Opt(e.Principal),settings:e.Opt(lt)}),mt=e.Record({skip_stopping_before_installing:e.Opt(e.Bool),wasm_module_hash:e.Opt(e.Vec(e.Nat8)),canister_id:e.Opt(e.Principal),arg_hash:e.Opt(e.Vec(e.Nat8)),install_mode:e.Opt(e.Int32)}),Ke=e.Record({id:e.Opt(n)}),He=e.Record({action:e.Opt(e.Int32),canister_id:e.Opt(e.Principal)}),v=e.Record({seconds:e.Opt(e.Nat64)}),O=e.Record({e8s:e.Opt(e.Nat64)}),Nt=e.Record({reward_rate_transition_duration:e.Opt(v),initial_reward_rate:e.Opt(b),final_reward_rate:e.Opt(b)}),Ot=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(b),neuron_maximum_age_for_age_bonus:e.Opt(v),neuron_maximum_dissolve_delay:e.Opt(v),neuron_minimum_dissolve_delay_to_vote:e.Opt(v),neuron_maximum_age_bonus:e.Opt(b),neuron_minimum_stake:e.Opt(O),proposal_wait_for_quiet_deadline_increase:e.Opt(v),proposal_initial_voting_period:e.Opt(v),proposal_rejection_fee:e.Opt(O),voting_reward_parameters:e.Opt(Nt)}),We=e.Record({base64_encoding:e.Opt(e.Text)}),ft=e.Record({transaction_fee:e.Opt(O),token_symbol:e.Opt(e.Text),token_logo:e.Opt(We),token_name:e.Opt(e.Text)}),Rt=e.Record({id:e.Opt(e.Principal)}),gt=e.Record({dissolve_delay_interval:e.Opt(v),count:e.Opt(e.Nat64)}),vt=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),wt=e.Record({iso_codes:e.Vec(e.Text)}),yt=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(v),neuron_basket_construction_parameters:e.Opt(gt),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(O),minimum_icp:e.Opt(O),minimum_direct_participation_icp:e.Opt(O),minimum_participant_icp:e.Opt(O),start_time:e.Opt(vt),maximum_direct_participation_icp:e.Opt(O),maximum_icp:e.Opt(O),neurons_fund_investment_icp:e.Opt(O),restricted_countries:e.Opt(wt)}),je=e.Record({total:e.Opt(O)}),bt=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(v),memo:e.Opt(e.Nat64),vesting_period:e.Opt(v),stake:e.Opt(O)}),ht=e.Record({developer_neurons:e.Vec(bt)}),St=e.Record({treasury_distribution:e.Opt(je),developer_distribution:e.Opt(ht),swap_distribution:e.Opt(je)}),ze=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(Ot),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(We),name:e.Opt(e.Text),ledger_parameters:e.Opt(ft),description:e.Opt(e.Text),dapp_canisters:e.Vec(Rt),swap_parameters:e.Opt(yt),initial_token_distribution:e.Opt(St)}),Xe=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),xt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),kt=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(xt),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)}),Vt=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(kt)}),Pt=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Tt=e.Record({open_time_window:e.Opt(Pt)}),Ct=e.Record({request:e.Opt(Tt),swap_canister_id:e.Opt(e.Principal)}),Mt=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Je=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(u)}),de=e.Record({principals:e.Vec(e.Principal)}),At=e.Variant({ToRemove:_,ToAdd:_}),Qe=e.Record({change:e.Opt(At)}),$e=e.Record({motion_text:e.Text}),Ft=e.Variant({RegisterKnownNeuron:G,FulfillSubnetRentalRequest:Z,ManageNeuron:ut,UpdateCanisterSettings:Ue,InstallCode:mt,DeregisterKnownNeuron:Ke,StopOrStartCanister:He,CreateServiceNervousSystem:ze,ExecuteNnsFunction:Xe,RewardNodeProvider:u,OpenSnsTokenSwap:Vt,SetSnsTokenSwapOpenTimeWindow:Ct,SetDefaultFollowees:Mt,RewardNodeProviders:Je,ManageNetworkEconomics:P,ApproveGenesisKyc:de,AddOrRemoveNodeProvider:Qe,Motion:$e});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Ft),summary:e.Text}));let qt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Et=e.Record({id:e.Opt(m),topic:e.Opt(e.Int32),failure_reason:e.Opt(p),ballots:e.Vec(e.Tuple(e.Nat64,Q)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Se),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt($),latest_tally:e.Opt(Y),total_potential_voting_power:e.Opt(e.Nat64),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),wait_for_quiet_state:e.Opt(qt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Bt=e.Variant({Spawn:n,Split:U,Configure:se,Merge:ae,DisburseToNeuron:ie,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:K,MergeMaturity:ce,Disburse:_e}),Gt=e.Record({command:e.Opt(Bt),timestamp:e.Nat64}),Ye=e.Record({vote:e.Int32,proposal_id:e.Opt(m)}),Ut=e.Record({account_identifier_to_disburse_to:e.Opt(c),timestamp_of_disbursement_seconds:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account_to_disburse_to:e.Opt(L),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),Kt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),C=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Ye),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),kyc_verified:e.Bool,potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,deciding_voting_power:e.Opt(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),maturity_disbursements_in_progress:e.Opt(e.Vec(Ut)),dissolve_state:e.Opt(Kt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(J),known_neuron_data:e.Opt(B),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),kn=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),most_recent_monthly_node_provider_rewards:e.Opt(g),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(F),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(_),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(P),restore_aging_summary:e.Opt(X),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(H),to_claim_transfers:e.Vec(J),short_voting_period_seconds:e.Nat64,proposals:e.Vec(e.Tuple(e.Nat64,Et)),xdr_conversion_rate:e.Opt(w),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Gt)),neurons:e.Vec(e.Tuple(e.Nat64,C)),genesis_timestamp_seconds:e.Nat64}),j=e.Variant({Ok:e.Null,Err:p}),Ht=e.Variant({Error:p,NeuronId:n}),Wt=e.Record({result:e.Opt(Ht)}),Ze=e.Variant({Ok:C,Err:p}),jt=e.Variant({Ok:F,Err:p}),zt=e.Variant({Ok:g,Err:p}),Xt=e.Record({page_size:e.Opt(e.Nat32),exclusive_start_neuron_id:e.Opt(n)}),A=e.Record({id:e.Opt(n),dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Ye),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),deciding_voting_power:e.Opt(e.Nat64),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,visibility:e.Opt(e.Int32),known_neuron_data:e.Opt(B),voting_power:e.Nat64,age_seconds:e.Nat64}),Jt=e.Record({neurons:e.Vec(A)}),Qt=e.Variant({Ok:Jt,Err:p}),Ie=e.Variant({Ok:A,Err:p}),$t=e.Record({nns_proposal_id:e.Opt(m)}),Yt=e.Record({final_neurons_fund_participation:e.Opt(T),initial_neurons_fund_participation:e.Opt(T),neurons_fund_refunds:e.Opt(E)}),Zt=e.Record({neurons_fund_audit_info:e.Opt(Yt)}),It=e.Variant({Ok:Zt,Err:p}),Dt=e.Record({result:e.Opt(It)}),Lt=e.Variant({Ok:_,Err:p}),ue=e.Record({id:e.Opt(m),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(p),ballots:e.Vec(e.Tuple(e.Nat64,Q)),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($),latest_tally:e.Opt(Y),total_potential_voting_power:e.Opt(e.Nat64),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),eo=e.Record({known_neurons:e.Vec(G)}),to=e.Record({before_proposal:e.Opt(m),limit:e.Opt(e.Nat64),neuron_id:e.Opt(n)}),oo=e.Variant({No:e.Null,Yes:e.Null,Unspecified:e.Null}),no=e.Record({vote:e.Opt(oo),proposal_id:e.Opt(m)}),ro=e.Variant({Ok:e.Record({votes:e.Opt(e.Vec(no)),all_finalized_before_proposal:e.Opt(m)}),Err:p}),so=e.Record({subaccount:e.Vec(e.Nat8)}),ao=e.Record({page_size:e.Opt(e.Nat64),include_public_neurons_in_full_neurons:e.Opt(e.Bool),neuron_ids:e.Vec(e.Nat64),page_number:e.Opt(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),neuron_subaccounts:e.Opt(e.Vec(so)),include_neurons_readable_by_caller:e.Bool}),io=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,A)),full_neurons:e.Vec(C),total_pages_available:e.Opt(e.Nat64)}),co=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),_o=e.Record({date_filter:e.Opt(co)}),uo=e.Record({rewards:e.Vec(g)}),po=e.Record({node_providers:e.Vec(_)}),lo=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(m),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),mo=e.Record({proposal_info:e.Vec(ue)}),No=e.Record({arg:e.Opt(e.Vec(e.Nat8)),wasm_module:e.Opt(e.Vec(e.Nat8)),skip_stopping_before_installing:e.Opt(e.Bool),canister_id:e.Opt(e.Principal),install_mode:e.Opt(e.Int32)}),Oo=e.Variant({RegisterKnownNeuron:G,FulfillSubnetRentalRequest:Z,ManageNeuron:t,UpdateCanisterSettings:Ue,InstallCode:No,DeregisterKnownNeuron:Ke,StopOrStartCanister:He,CreateServiceNervousSystem:ze,ExecuteNnsFunction:Xe,RewardNodeProvider:u,RewardNodeProviders:Je,ManageNetworkEconomics:P,ApproveGenesisKyc:de,AddOrRemoveNodeProvider:Qe,Motion:$e}),fo=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Oo),summary:e.Text}),Ro=e.Variant({Spawn:I,Split:U,Follow:D,DisburseMaturity:ee,RefreshVotingPower:te,ClaimOrRefresh:K,Configure:se,RegisterVote:Ee,Merge:ae,DisburseToNeuron:ie,SetFollowing:Be,MakeProposal:fo,StakeMaturity:Ge,MergeMaturity:ce,Disburse:_e});t.fill(e.Record({id:e.Opt(n),command:e.Opt(Ro),neuron_id_or_subaccount:e.Opt(W)}));let pe=e.Record({created_neuron_id:e.Opt(n)}),go=e.Record({amount_disbursed_e8s:e.Opt(e.Nat64)}),vo=e.Record({}),wo=e.Record({refreshed_neuron_id:e.Opt(n)}),yo=e.Record({target_neuron:e.Opt(C),source_neuron:e.Opt(C),target_neuron_info:e.Opt(A),source_neuron_info:e.Opt(A)}),bo=e.Record({}),ho=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(m)}),So=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),xo=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ko=e.Record({transfer_block_height:e.Nat64}),Vo=e.Variant({Error:p,Spawn:pe,Split:pe,Follow:e.Record({}),DisburseMaturity:go,RefreshVotingPower:vo,ClaimOrRefresh:wo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:yo,DisburseToNeuron:pe,SetFollowing:bo,MakeProposal:ho,StakeMaturity:So,MergeMaturity:xo,Disburse:ko}),De=e.Record({command:e.Opt(Vo)}),Po=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)}),To=e.Variant({Committed:Po,Aborted:e.Record({})}),Co=e.Record({result:e.Opt(To),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Mo=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)}),Ao=e.Variant({Committed:Mo,Aborted:e.Record({})}),Fo=e.Record({result:e.Opt(Ao),nns_proposal_id:e.Opt(e.Nat64)}),qo=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(de),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(qo)}),Bo=e.Variant({Ok:Eo,Err:p}),Go=e.Record({result:e.Opt(Bo)}),Uo=e.Record({reward_account:e.Opt(c)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[j],[]),claim_or_refresh_neuron_from_account:e.Func([oe],[Wt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Ze],[]),get_full_neuron_by_id_or_subaccount:e.Func([W],[Ze],[]),get_latest_reward_event:e.Func([],[H],[]),get_metrics:e.Func([],[jt],[]),get_monthly_node_provider_rewards:e.Func([],[zt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(g)],[]),get_network_economics_parameters:e.Func([],[P],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_index:e.Func([Xt],[Qt],[]),get_neuron_info:e.Func([e.Nat64],[Ie],[]),get_neuron_info_by_id_or_subaccount:e.Func([W],[Ie],[]),get_neurons_fund_audit_info:e.Func([$t],[Dt],[]),get_node_provider_by_caller:e.Func([e.Null],[Lt],[]),get_pending_proposals:e.Func([],[e.Vec(ue)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(ue)],[]),get_restore_aging_summary:e.Func([],[X],[]),list_known_neurons:e.Func([],[eo],[]),list_neuron_votes:e.Func([to],[ro],[]),list_neurons:e.Func([ao],[io],[]),list_node_provider_rewards:e.Func([_o],[uo],[]),list_node_providers:e.Func([],[po],[]),list_proposals:e.Func([lo],[mo],[]),manage_neuron:e.Func([t],[De],[]),settle_community_fund_participation:e.Func([Co],[j],[]),settle_neurons_fund_participation:e.Func([Fo],[Go],[]),simulate_manage_neuron:e.Func([t],[De],[]),transfer_gtc_neuron:e.Func([n,n],[j],[]),update_node_provider:e.Func([Uo],[j],[])})};var Io=({IDL:e})=>{let t=e.Rec(),o=e.Rec(),n=e.Record({id:e.Nat64}),r=e.Record({followees:e.Vec(n)}),i=e.Record({day:e.Nat32,month:e.Nat32,year:e.Nat32}),c=e.Record({hash:e.Vec(e.Nat8)}),_=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(c)}),d=e.Record({dissolve_delay_seconds:e.Nat64}),R=e.Record({to_account:e.Opt(c)}),N=e.Variant({RewardToNeuron:d,RewardToAccount:R}),u=e.Record({node_provider:e.Opt(_),reward_mode:e.Opt(N),amount_e8s:e.Nat64}),w=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),g=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),end_date:e.Opt(i),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(_),start_date:e.Opt(i),timestamp:e.Nat64,rewards:e.Vec(u),xdr_conversion_rate:e.Opt(w),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),h=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),deciding_voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),total_potential_voting_power:e.Opt(e.Nat64),total_deciding_voting_power:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),potential_voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),F=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,fully_lost_voting_power_neuron_subset_metrics:e.Opt(h),not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),spawning_neurons_count:e.Nat64,declining_voting_power_neuron_subset_metrics:e.Opt(h),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(h),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),public_neuron_subset_metrics:e.Opt(h),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),ve=e.Record({start_reducing_voting_power_after_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),clear_following_after_seconds:e.Opt(e.Nat64)}),b=e.Record({basis_points:e.Opt(e.Nat64)}),V=e.Record({human_readable:e.Opt(e.Text)}),l=e.Record({contribution_threshold_xdr:e.Opt(V),one_third_participation_milestone_xdr:e.Opt(V),full_participation_milestone_xdr:e.Opt(V)}),we=e.Record({maximum_icp_xdr_rate:e.Opt(b),neurons_fund_matched_funding_curve_coefficients:e.Opt(l),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(V),minimum_icp_xdr_rate:e.Opt(b)}),P=e.Record({neuron_minimum_stake_e8s:e.Nat64,voting_power_economics:e.Opt(ve),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(we)}),ye=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),X=e.Record({groups:e.Vec(ye),timestamp_seconds:e.Opt(e.Nat64)}),m=e.Record({id:e.Nat64}),H=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(m)}),J=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}),p=e.Record({error_message:e.Text,error_type:e.Int32}),Q=e.Record({vote:e.Int32,voting_power:e.Nat64}),be=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)}),x=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Vec(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(n),amount_icp_e8s:e.Opt(e.Nat64)}),E=e.Record({neurons_fund_neuron_portions:e.Vec(x)}),he=e.Record({serialized_representation:e.Opt(e.Text)}),T=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(be),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(E),ideal_matched_participation_function:e.Opt(he),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Se=e.Record({final_neurons_fund_participation:e.Opt(T),initial_neurons_fund_participation:e.Opt(T),neurons_fund_refunds:e.Opt(E)}),xe=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(xe),canister_id:e.Opt(e.Principal)}),ke=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)}),$=e.Record({swap_background_information:e.Opt(ke)}),Y=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Ve=e.Variant({Kyc:e.Null,ServiceNervousSystemManagement:e.Null,ApiBoundaryNodeManagement:e.Null,ApplicationCanisterManagement:e.Null,SubnetRental:e.Null,NeuronManagement:e.Null,NodeProviderRewards:e.Null,SubnetManagement:e.Null,ExchangeRate:e.Null,CatchAll:e.Null,NodeAdmin:e.Null,IcOsVersionElection:e.Null,ProtocolCanisterManagement:e.Null,NetworkEconomics:e.Null,IcOsVersionDeployment:e.Null,ParticipantManagement:e.Null,Governance:e.Null,SnsAndCommunityFund:e.Null}),B=e.Record({name:e.Text,committed_topics:e.Opt(e.Vec(e.Opt(Ve))),description:e.Opt(e.Text),links:e.Opt(e.Vec(e.Text))}),G=e.Record({id:e.Opt(n),known_neuron_data:e.Opt(B)}),Z=e.Record({user:e.Opt(e.Principal),replica_version_id:e.Opt(e.Text),node_ids:e.Opt(e.Vec(e.Principal))}),I=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),U=e.Record({memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),D=e.Record({topic:e.Int32,followees:e.Vec(n)}),L=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),ee=e.Record({to_account_identifier:e.Opt(c),to_account:e.Opt(L),percentage_to_disburse:e.Nat32}),te=e.Record({}),oe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Pe=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:oe,Memo:e.Nat64}),K=e.Record({by:e.Opt(Pe)}),Te=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),Ce=e.Record({new_hot_key:e.Opt(e.Principal)}),Me=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),a=e.Record({additional_dissolve_delay_seconds:e.Nat32}),st=e.Record({visibility:e.Opt(e.Int32)}),at=e.Record({dissolve_timestamp_seconds:e.Nat64}),it=e.Variant({RemoveHotKey:Te,AddHotKey:Ce,ChangeAutoStakeMaturity:Me,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:a,SetVisibility:st,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:at}),se=e.Record({operation:e.Opt(it)}),Ee=e.Record({vote:e.Int32,proposal:e.Opt(m)}),ae=e.Record({source_neuron_id:e.Opt(n)}),ie=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),ct=e.Record({topic:e.Opt(e.Int32),followees:e.Opt(e.Vec(n))}),Be=e.Record({topic_following:e.Opt(e.Vec(ct))}),Ge=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),ce=e.Record({percentage_to_merge:e.Nat32}),_t=e.Record({e8s:e.Nat64}),_e=e.Record({to_account:e.Opt(c),amount:e.Opt(_t)}),dt=e.Variant({Spawn:I,Split:U,Follow:D,DisburseMaturity:ee,RefreshVotingPower:te,ClaimOrRefresh:K,Configure:se,RegisterVote:Ee,Merge:ae,DisburseToNeuron:ie,SetFollowing:Be,MakeProposal:o,StakeMaturity:Ge,MergeMaturity:ce,Disburse:_e}),W=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),ut=e.Record({id:e.Opt(n),command:e.Opt(dt),neuron_id_or_subaccount:e.Opt(W)}),pt=e.Record({controllers:e.Vec(e.Principal)}),lt=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),controllers:e.Opt(pt),log_visibility:e.Opt(e.Int32),wasm_memory_limit:e.Opt(e.Nat64),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),Ue=e.Record({canister_id:e.Opt(e.Principal),settings:e.Opt(lt)}),mt=e.Record({skip_stopping_before_installing:e.Opt(e.Bool),wasm_module_hash:e.Opt(e.Vec(e.Nat8)),canister_id:e.Opt(e.Principal),arg_hash:e.Opt(e.Vec(e.Nat8)),install_mode:e.Opt(e.Int32)}),Ke=e.Record({id:e.Opt(n)}),He=e.Record({action:e.Opt(e.Int32),canister_id:e.Opt(e.Principal)}),v=e.Record({seconds:e.Opt(e.Nat64)}),O=e.Record({e8s:e.Opt(e.Nat64)}),Nt=e.Record({reward_rate_transition_duration:e.Opt(v),initial_reward_rate:e.Opt(b),final_reward_rate:e.Opt(b)}),Ot=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(b),neuron_maximum_age_for_age_bonus:e.Opt(v),neuron_maximum_dissolve_delay:e.Opt(v),neuron_minimum_dissolve_delay_to_vote:e.Opt(v),neuron_maximum_age_bonus:e.Opt(b),neuron_minimum_stake:e.Opt(O),proposal_wait_for_quiet_deadline_increase:e.Opt(v),proposal_initial_voting_period:e.Opt(v),proposal_rejection_fee:e.Opt(O),voting_reward_parameters:e.Opt(Nt)}),We=e.Record({base64_encoding:e.Opt(e.Text)}),ft=e.Record({transaction_fee:e.Opt(O),token_symbol:e.Opt(e.Text),token_logo:e.Opt(We),token_name:e.Opt(e.Text)}),Rt=e.Record({id:e.Opt(e.Principal)}),gt=e.Record({dissolve_delay_interval:e.Opt(v),count:e.Opt(e.Nat64)}),vt=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),wt=e.Record({iso_codes:e.Vec(e.Text)}),yt=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(v),neuron_basket_construction_parameters:e.Opt(gt),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(O),minimum_icp:e.Opt(O),minimum_direct_participation_icp:e.Opt(O),minimum_participant_icp:e.Opt(O),start_time:e.Opt(vt),maximum_direct_participation_icp:e.Opt(O),maximum_icp:e.Opt(O),neurons_fund_investment_icp:e.Opt(O),restricted_countries:e.Opt(wt)}),je=e.Record({total:e.Opt(O)}),bt=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(v),memo:e.Opt(e.Nat64),vesting_period:e.Opt(v),stake:e.Opt(O)}),ht=e.Record({developer_neurons:e.Vec(bt)}),St=e.Record({treasury_distribution:e.Opt(je),developer_distribution:e.Opt(ht),swap_distribution:e.Opt(je)}),ze=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(Ot),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(We),name:e.Opt(e.Text),ledger_parameters:e.Opt(ft),description:e.Opt(e.Text),dapp_canisters:e.Vec(Rt),swap_parameters:e.Opt(yt),initial_token_distribution:e.Opt(St)}),Xe=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),xt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),kt=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(xt),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)}),Vt=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(kt)}),Pt=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Tt=e.Record({open_time_window:e.Opt(Pt)}),Ct=e.Record({request:e.Opt(Tt),swap_canister_id:e.Opt(e.Principal)}),Mt=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Je=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(u)}),de=e.Record({principals:e.Vec(e.Principal)}),At=e.Variant({ToRemove:_,ToAdd:_}),Qe=e.Record({change:e.Opt(At)}),$e=e.Record({motion_text:e.Text}),Ft=e.Variant({RegisterKnownNeuron:G,FulfillSubnetRentalRequest:Z,ManageNeuron:ut,UpdateCanisterSettings:Ue,InstallCode:mt,DeregisterKnownNeuron:Ke,StopOrStartCanister:He,CreateServiceNervousSystem:ze,ExecuteNnsFunction:Xe,RewardNodeProvider:u,OpenSnsTokenSwap:Vt,SetSnsTokenSwapOpenTimeWindow:Ct,SetDefaultFollowees:Mt,RewardNodeProviders:Je,ManageNetworkEconomics:P,ApproveGenesisKyc:de,AddOrRemoveNodeProvider:Qe,Motion:$e});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Ft),summary:e.Text}));let qt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Et=e.Record({id:e.Opt(m),topic:e.Opt(e.Int32),failure_reason:e.Opt(p),ballots:e.Vec(e.Tuple(e.Nat64,Q)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Se),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt($),latest_tally:e.Opt(Y),total_potential_voting_power:e.Opt(e.Nat64),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),wait_for_quiet_state:e.Opt(qt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Bt=e.Variant({Spawn:n,Split:U,Configure:se,Merge:ae,DisburseToNeuron:ie,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:K,MergeMaturity:ce,Disburse:_e}),Gt=e.Record({command:e.Opt(Bt),timestamp:e.Nat64}),Ye=e.Record({vote:e.Int32,proposal_id:e.Opt(m)}),Ut=e.Record({account_identifier_to_disburse_to:e.Opt(c),timestamp_of_disbursement_seconds:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account_to_disburse_to:e.Opt(L),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),Kt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),C=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Ye),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),kyc_verified:e.Bool,potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,deciding_voting_power:e.Opt(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),maturity_disbursements_in_progress:e.Opt(e.Vec(Ut)),dissolve_state:e.Opt(Kt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(J),known_neuron_data:e.Opt(B),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),kn=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),most_recent_monthly_node_provider_rewards:e.Opt(g),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(F),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(_),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(P),restore_aging_summary:e.Opt(X),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(H),to_claim_transfers:e.Vec(J),short_voting_period_seconds:e.Nat64,proposals:e.Vec(e.Tuple(e.Nat64,Et)),xdr_conversion_rate:e.Opt(w),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Gt)),neurons:e.Vec(e.Tuple(e.Nat64,C)),genesis_timestamp_seconds:e.Nat64}),j=e.Variant({Ok:e.Null,Err:p}),Ht=e.Variant({Error:p,NeuronId:n}),Wt=e.Record({result:e.Opt(Ht)}),Ze=e.Variant({Ok:C,Err:p}),jt=e.Variant({Ok:F,Err:p}),zt=e.Variant({Ok:g,Err:p}),Xt=e.Record({page_size:e.Opt(e.Nat32),exclusive_start_neuron_id:e.Opt(n)}),A=e.Record({id:e.Opt(n),dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Ye),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),deciding_voting_power:e.Opt(e.Nat64),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,visibility:e.Opt(e.Int32),known_neuron_data:e.Opt(B),voting_power:e.Nat64,age_seconds:e.Nat64}),Jt=e.Record({neurons:e.Vec(A)}),Qt=e.Variant({Ok:Jt,Err:p}),Ie=e.Variant({Ok:A,Err:p}),$t=e.Record({nns_proposal_id:e.Opt(m)}),Yt=e.Record({final_neurons_fund_participation:e.Opt(T),initial_neurons_fund_participation:e.Opt(T),neurons_fund_refunds:e.Opt(E)}),Zt=e.Record({neurons_fund_audit_info:e.Opt(Yt)}),It=e.Variant({Ok:Zt,Err:p}),Dt=e.Record({result:e.Opt(It)}),Lt=e.Variant({Ok:_,Err:p}),ue=e.Record({id:e.Opt(m),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(p),ballots:e.Vec(e.Tuple(e.Nat64,Q)),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($),latest_tally:e.Opt(Y),total_potential_voting_power:e.Opt(e.Nat64),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),eo=e.Record({known_neurons:e.Vec(G)}),to=e.Record({before_proposal:e.Opt(m),limit:e.Opt(e.Nat64),neuron_id:e.Opt(n)}),oo=e.Variant({No:e.Null,Yes:e.Null,Unspecified:e.Null}),no=e.Record({vote:e.Opt(oo),proposal_id:e.Opt(m)}),ro=e.Variant({Ok:e.Record({votes:e.Opt(e.Vec(no)),all_finalized_before_proposal:e.Opt(m)}),Err:p}),so=e.Record({subaccount:e.Vec(e.Nat8)}),ao=e.Record({page_size:e.Opt(e.Nat64),include_public_neurons_in_full_neurons:e.Opt(e.Bool),neuron_ids:e.Vec(e.Nat64),page_number:e.Opt(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),neuron_subaccounts:e.Opt(e.Vec(so)),include_neurons_readable_by_caller:e.Bool}),io=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,A)),full_neurons:e.Vec(C),total_pages_available:e.Opt(e.Nat64)}),co=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),_o=e.Record({date_filter:e.Opt(co)}),uo=e.Record({rewards:e.Vec(g)}),po=e.Record({node_providers:e.Vec(_)}),lo=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(m),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),mo=e.Record({proposal_info:e.Vec(ue)}),No=e.Record({arg:e.Opt(e.Vec(e.Nat8)),wasm_module:e.Opt(e.Vec(e.Nat8)),skip_stopping_before_installing:e.Opt(e.Bool),canister_id:e.Opt(e.Principal),install_mode:e.Opt(e.Int32)}),Oo=e.Variant({RegisterKnownNeuron:G,FulfillSubnetRentalRequest:Z,ManageNeuron:t,UpdateCanisterSettings:Ue,InstallCode:No,DeregisterKnownNeuron:Ke,StopOrStartCanister:He,CreateServiceNervousSystem:ze,ExecuteNnsFunction:Xe,RewardNodeProvider:u,RewardNodeProviders:Je,ManageNetworkEconomics:P,ApproveGenesisKyc:de,AddOrRemoveNodeProvider:Qe,Motion:$e}),fo=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Oo),summary:e.Text}),Ro=e.Variant({Spawn:I,Split:U,Follow:D,DisburseMaturity:ee,RefreshVotingPower:te,ClaimOrRefresh:K,Configure:se,RegisterVote:Ee,Merge:ae,DisburseToNeuron:ie,SetFollowing:Be,MakeProposal:fo,StakeMaturity:Ge,MergeMaturity:ce,Disburse:_e});t.fill(e.Record({id:e.Opt(n),command:e.Opt(Ro),neuron_id_or_subaccount:e.Opt(W)}));let pe=e.Record({created_neuron_id:e.Opt(n)}),go=e.Record({amount_disbursed_e8s:e.Opt(e.Nat64)}),vo=e.Record({}),wo=e.Record({refreshed_neuron_id:e.Opt(n)}),yo=e.Record({target_neuron:e.Opt(C),source_neuron:e.Opt(C),target_neuron_info:e.Opt(A),source_neuron_info:e.Opt(A)}),bo=e.Record({}),ho=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(m)}),So=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),xo=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ko=e.Record({transfer_block_height:e.Nat64}),Vo=e.Variant({Error:p,Spawn:pe,Split:pe,Follow:e.Record({}),DisburseMaturity:go,RefreshVotingPower:vo,ClaimOrRefresh:wo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:yo,DisburseToNeuron:pe,SetFollowing:bo,MakeProposal:ho,StakeMaturity:So,MergeMaturity:xo,Disburse:ko}),De=e.Record({command:e.Opt(Vo)}),Po=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)}),To=e.Variant({Committed:Po,Aborted:e.Record({})}),Co=e.Record({result:e.Opt(To),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Mo=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)}),Ao=e.Variant({Committed:Mo,Aborted:e.Record({})}),Fo=e.Record({result:e.Opt(Ao),nns_proposal_id:e.Opt(e.Nat64)}),qo=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(de),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(qo)}),Bo=e.Variant({Ok:Eo,Err:p}),Go=e.Record({result:e.Opt(Bo)}),Uo=e.Record({reward_account:e.Opt(c)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[j],[]),claim_or_refresh_neuron_from_account:e.Func([oe],[Wt],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_full_neuron:e.Func([e.Nat64],[Ze],["query"]),get_full_neuron_by_id_or_subaccount:e.Func([W],[Ze],["query"]),get_latest_reward_event:e.Func([],[H],["query"]),get_metrics:e.Func([],[jt],["query"]),get_monthly_node_provider_rewards:e.Func([],[zt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(g)],["query"]),get_network_economics_parameters:e.Func([],[P],["query"]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],["query"]),get_neuron_index:e.Func([Xt],[Qt],["query"]),get_neuron_info:e.Func([e.Nat64],[Ie],["query"]),get_neuron_info_by_id_or_subaccount:e.Func([W],[Ie],["query"]),get_neurons_fund_audit_info:e.Func([$t],[Dt],["query"]),get_node_provider_by_caller:e.Func([e.Null],[Lt],["query"]),get_pending_proposals:e.Func([],[e.Vec(ue)],["query"]),get_proposal_info:e.Func([e.Nat64],[e.Opt(ue)],["query"]),get_restore_aging_summary:e.Func([],[X],["query"]),list_known_neurons:e.Func([],[eo],["query"]),list_neuron_votes:e.Func([to],[ro],["query"]),list_neurons:e.Func([ao],[io],["query"]),list_node_provider_rewards:e.Func([_o],[uo],["query"]),list_node_providers:e.Func([],[po],["query"]),list_proposals:e.Func([lo],[mo],["query"]),manage_neuron:e.Func([t],[De],[]),settle_community_fund_participation:e.Func([Co],[j],[]),settle_neurons_fund_participation:e.Func([Fo],[Go],[]),simulate_manage_neuron:e.Func([t],[De],[]),transfer_gtc_neuron:e.Func([n,n],[j],[]),update_node_provider:e.Func([Uo],[j],[])})};var Fn=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Record({followees:e.Vec(t)}),n=e.Record({name:e.Text,description:e.Opt(e.Text)}),r=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),i=e.Record({vote:e.Int32,proposal_id:e.Opt(t)}),c=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),_=e.Record({id:e.Opt(t),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(i),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),kyc_verified:e.Bool,potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,deciding_voting_power:e.Opt(e.Nat64),cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(c),followees:e.Vec(e.Tuple(e.Int32,o)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(r),known_neuron_data:e.Opt(n),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),d=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(i),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),deciding_voting_power:e.Opt(e.Nat64),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,visibility:e.Opt(e.Int32),known_neuron_data:e.Opt(n),voting_power:e.Nat64,age_seconds:e.Nat64}),R=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),N=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,d)),full_neurons:e.Vec(_)});return e.Service({list_neurons:e.Func([R],[N],[])})};import{arrayBufferToUint8Array as fn,arrayOfNumberToUint8Array as is,isNullish as Ho,nonNullish as Wo,toNullable as f}from"@dfinity/utils";import{Principal as z}from"@icp-sdk/core/principal";import{arrayOfNumberToUint8Array as ns,asciiStringToByteArray as rs,bigEndianCrc32 as ss,hexStringToUint8Array as as,uint8ArrayToHexString as Kn}from"@dfinity/utils";function Lr(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Lo(e,...t){if(!Lr(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function ln(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 qn(e,t){Lo(e);let o=t.outputLen;if(e.length<o)throw new Error("digestInto() expects output buffer of length at least "+o)}function Ko(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function en(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function le(e,t){return e<<32-t|e>>>t}function es(e){if(typeof e!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function mn(e){return typeof e=="string"&&(e=es(e)),Lo(e),e}var Do=class{};function Nn(e){let t=n=>e().update(mn(n)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function ts(e,t,o,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,o,n);let r=BigInt(32),i=BigInt(4294967295),c=Number(o>>r&i),_=Number(o&i),d=n?4:0,R=n?0:4;e.setUint32(t+d,c,n),e.setUint32(t+R,_,n)}function En(e,t,o){return e&t^~e&o}function Bn(e,t,o){return e&t^e&o^t&o}var tn=class extends Do{constructor(t,o,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=o,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(t),this.view=en(this.buffer)}update(t){ln(this),t=mn(t),Lo(t);let{view:o,buffer:n,blockLen:r}=this,i=t.length;for(let c=0;c<i;){let _=Math.min(r-this.pos,i-c);if(_===r){let d=en(t);for(;r<=i-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){ln(this),qn(t,this),this.finished=!0;let{buffer:o,view:n,blockLen:r,isLE:i}=this,{pos:c}=this;o[c++]=128,Ko(this.buffer.subarray(c)),this.padOffset>r-c&&(this.process(n,0),c=0);for(let u=c;u<r;u++)o[u]=0;ts(n,r-8,BigInt(this.length*8),i),this.process(n,0);let _=en(t),d=this.outputLen;if(d%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let R=d/4,N=this.get();if(R>N.length)throw new Error("_sha2: outputLen bigger than state");for(let u=0;u<R;u++)_.setUint32(4*u,N[u],i)}digest(){let{buffer:t,outputLen:o}=this;this.digestInto(t);let n=t.slice(0,o);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:o,buffer:n,length:r,finished:i,destroyed:c,pos:_}=this;return t.destroyed=c,t.finished=i,t.length=r,t.pos=_,r%o&&t.buffer.set(n),t}clone(){return this._cloneInto()}},Fe=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),qe=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]);var os=Uint32Array.from([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]),et=new Uint32Array(64),on=class extends tn{constructor(t=32){super(64,t,8,!1),this.A=Fe[0]|0,this.B=Fe[1]|0,this.C=Fe[2]|0,this.D=Fe[3]|0,this.E=Fe[4]|0,this.F=Fe[5]|0,this.G=Fe[6]|0,this.H=Fe[7]|0}get(){let{A:t,B:o,C:n,D:r,E:i,F:c,G:_,H:d}=this;return[t,o,n,r,i,c,_,d]}set(t,o,n,r,i,c,_,d){this.A=t|0,this.B=o|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=c|0,this.G=_|0,this.H=d|0}process(t,o){for(let u=0;u<16;u++,o+=4)et[u]=t.getUint32(o,!1);for(let u=16;u<64;u++){let w=et[u-15],g=et[u-2],h=le(w,7)^le(w,18)^w>>>3,F=le(g,17)^le(g,19)^g>>>10;et[u]=F+et[u-7]+h+et[u-16]|0}let{A:n,B:r,C:i,D:c,E:_,F:d,G:R,H:N}=this;for(let u=0;u<64;u++){let w=le(_,6)^le(_,11)^le(_,25),g=N+w+En(_,d,R)+os[u]+et[u]|0,F=(le(n,2)^le(n,13)^le(n,22))+Bn(n,r,i)|0;N=R,R=d,d=_,_=c+g|0,c=i,i=r,r=n,n=g+F|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,c=c+this.D|0,_=_+this.E|0,d=d+this.F|0,R=R+this.G|0,N=N+this.H|0,this.set(n,r,i,c,_,d,R,N)}roundClean(){Ko(et)}destroy(){this.set(0,0,0,0,0,0,0,0),Ko(this.buffer)}},On=class extends on{constructor(){super(28),this.A=qe[0]|0,this.B=qe[1]|0,this.C=qe[2]|0,this.D=qe[3]|0,this.E=qe[4]|0,this.F=qe[5]|0,this.G=qe[6]|0,this.H=qe[7]|0}};var Gn=Nn(()=>new on),Un=Nn(()=>new On);var Hn=e=>as(e).subarray(4),Wn=e=>Kn(e),nn=(e,t)=>{let o=rs(`
2
- account-id`),n=Un.create();n.update(ns([...o,...e.toUint8Array(),...t??Array(32).fill(0)]));let r=n.digest(),i=ss(r),c=new Uint8Array([...i,...r]);return Kn(c)};var Xn=e=>({id:e}),rn=e=>({id:e}),cs=e=>{if("NeuronId"in e)return{NeuronId:{id:e.NeuronId}};if("Subaccount"in e)return{Subaccount:Uint8Array.from(e.Subaccount)};throw new M(e)},sn=e=>e.basisPoints!==void 0?{basis_points:[e.basisPoints]}:{basis_points:[]},Oe=e=>e.seconds!==void 0?{seconds:[e.seconds]}:{seconds:[]},_s=e=>e.secondsAfterUtcMidnight!==void 0?{seconds_after_utc_midnight:[e.secondsAfterUtcMidnight]}:{seconds_after_utc_midnight:[]},ds=e=>({iso_codes:e.isoCodes}),ne=e=>e.e8s!==void 0?{e8s:[e.e8s]}:{e8s:[]},Jn=e=>e.base64Encoding!==void 0?{base64_encoding:[e.base64Encoding]}:{base64_encoding:[]},us=e=>({reward_rate_transition_duration:e.rewardRateTransitionDuration!==void 0?[Oe(e.rewardRateTransitionDuration)]:[],initial_reward_rate:e.initialRewardRate!==void 0?[sn(e.initialRewardRate)]:[],final_reward_rate:e.finalRewardRate!==void 0?[sn(e.finalRewardRate)]:[]}),ps=e=>({transaction_fee:e.transactionFee!==void 0?[ne(e.transactionFee)]:[],token_symbol:e.tokenSymbol!==void 0?[e.tokenSymbol]:[],token_logo:e.tokenLogo!==void 0?[Jn(e.tokenLogo)]:[],token_name:e.tokenName!==void 0?[e.tokenName]:[]}),ls=e=>({minimum_participants:e.minimumParticipants!==void 0?[e.minimumParticipants]:[],duration:e.duration!==void 0?[Oe(e.duration)]:[],neuron_basket_construction_parameters:e.neuronBasketConstructionParameters!==void 0?[ms(e.neuronBasketConstructionParameters)]:[],confirmation_text:e.confirmationText!==void 0?[e.confirmationText]:[],maximum_participant_icp:e.maximumParticipantIcp!==void 0?[ne(e.maximumParticipantIcp)]:[],neurons_fund_investment_icp:e.neuronsFundInvestmentIcp!==void 0?[ne(e.neuronsFundInvestmentIcp)]:[],minimum_icp:e.minimumIcp!==void 0?[ne(e.minimumIcp)]:[],minimum_participant_icp:e.minimumParticipantIcp!==void 0?[ne(e.minimumParticipantIcp)]:[],start_time:e.startTime!==void 0?[_s(e.startTime)]:[],maximum_icp:e.maximumIcp!==void 0?[ne(e.maximumIcp)]:[],restricted_countries:e.restrictedCountries!==void 0?[ds(e.restrictedCountries)]:[],maximum_direct_participation_icp:e.maxDirectParticipationIcp!==void 0?[ne(e.maxDirectParticipationIcp)]:[],minimum_direct_participation_icp:e.minDirectParticipationIcp!==void 0?[ne(e.minDirectParticipationIcp)]:[],neurons_fund_participation:f(e.neuronsFundParticipation)}),ms=e=>({dissolve_delay_interval:e.dissolveDelayInterval!==void 0?[Oe(e.dissolveDelayInterval)]:[],count:e.count!==void 0?[e.count]:[]}),Ns=e=>({neuron_maximum_dissolve_delay_bonus:e.neuronMaximumDissolveDelayBonus!==void 0?[sn(e.neuronMaximumDissolveDelayBonus)]:[],neuron_maximum_age_for_age_bonus:e.neuronMaximumAgeForAgeBonus!==void 0?[Oe(e.neuronMaximumAgeForAgeBonus)]:[],neuron_maximum_dissolve_delay:e.neuronMaximumDissolveDelay!==void 0?[Oe(e.neuronMaximumDissolveDelay)]:[],neuron_minimum_dissolve_delay_to_vote:e.neuronMinimumDissolveDelayToVote!==void 0?[Oe(e.neuronMinimumDissolveDelayToVote)]:[],neuron_maximum_age_bonus:e.neuronMaximumAgeBonus!==void 0?[sn(e.neuronMaximumAgeBonus)]:[],neuron_minimum_stake:e.neuronMinimumStake!==void 0?[ne(e.neuronMinimumStake)]:[],proposal_wait_for_quiet_deadline_increase:e.proposalWaitForQuietDeadlineIncrease!==void 0?[Oe(e.proposalWaitForQuietDeadlineIncrease)]:[],proposal_initial_voting_period:e.proposalInitialVotingPeriod!==void 0?[Oe(e.proposalInitialVotingPeriod)]:[],proposal_rejection_fee:e.proposalRejectionFee!==void 0?[ne(e.proposalRejectionFee)]:[],voting_reward_parameters:e.votingRewardParameters!==void 0?[us(e.votingRewardParameters)]:[]}),jn=e=>({total:e.total!==void 0?[ne(e.total)]:[]}),Os=e=>({treasury_distribution:e.treasuryDistribution!==void 0?[jn(e.treasuryDistribution)]:[],developer_distribution:e.developerDistribution!==void 0?[Rs(e.developerDistribution)]:[],swap_distribution:e.swapDistribution!==void 0?[jn(e.swapDistribution)]:[]}),fs=e=>({controller:e.controller!==void 0?[z.fromText(e.controller)]:[],dissolve_delay:e.dissolveDelay!==void 0?[Oe(e.dissolveDelay)]:[],memo:e.memo!==void 0?[e.memo]:[],vesting_period:e.vestingPeriod!==void 0?[Oe(e.vestingPeriod)]:[],stake:e.stake!==void 0?[ne(e.stake)]:[]}),Rs=e=>({developer_neurons:e.developerNeurons.map(fs)}),gs=e=>({url:e.url!==void 0?[e.url]:[],governance_parameters:e.governanceParameters!==void 0?[Ns(e.governanceParameters)]:[],fallback_controller_principal_ids:e.fallbackControllerPrincipalIds.map(t=>z.fromText(t)),logo:e.logo!==void 0?[Jn(e.logo)]:[],name:e.name!==void 0?[e.name]:[],ledger_parameters:e.ledgerParameters!==void 0?[ps(e.ledgerParameters)]:[],description:e.description!==void 0?[e.description]:[],dapp_canisters:e.dappCanisters.map(t=>({id:[z.fromText(t)]})),swap_parameters:e.swapParameters!==void 0?[ls(e.swapParameters)]:[],initial_token_distribution:e.initialTokenDistribution!==void 0?[Os(e.initialTokenDistribution)]:[]}),vs=e=>{if(e.wasmModule===void 0)throw new Error("wasmModule not found");return{arg:f(fn(e.arg??new ArrayBuffer(0))),wasm_module:f(fn(e.wasmModule)),skip_stopping_before_installing:f(e.skipStoppingBeforeInstalling),canister_id:f(Wo(e.canisterId)?z.fromText(e.canisterId):void 0),install_mode:f(e.installMode)}},ws=e=>f(e===void 0?void 0:{freezing_threshold:f(e.freezingThreshold),controllers:e.controllers?[{controllers:e.controllers.map(t=>z.fromText(t))}]:[],log_visibility:f(e.logVisibility),wasm_memory_limit:f(e.wasmMemoryLimit),compute_allocation:f(e.computeAllocation),memory_allocation:f(e.memoryAllocation),wasm_memory_threshold:f(e.wasmMemoryThreshold)}),Qn=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:fn(t.payloadBytes)}}}if("ManageNeuron"in e){let t=e.ManageNeuron;return{ManageNeuron:Vs(t)}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(z.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:Ss(t.neuronsFundEconomics),voting_power_economics:xs(t.votingPowerEconomics)}}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{node_provider:t.nodeProvider?[an(t.nodeProvider)]:[],amount_e8s:t.amountE8s,reward_mode:t.rewardMode!=null?[zn(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?[an(o.nodeProvider)]:[],amount_e8s:o.amountE8s,reward_mode:o.rewardMode!=null?[zn(o.rewardMode)]:[]}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change?[hs(t.change)]:[]}}}if("Motion"in e)return{Motion:{motion_text:e.Motion.motionText}};if("RegisterKnownNeuron"in e){let t=e.RegisterKnownNeuron;return{RegisterKnownNeuron:{id:[{id:t.id}],known_neuron_data:[{name:t.name,description:t.description!==void 0?[t.description]:[],links:f(t.links),committed_topics:f(t.committed_topics)}]}}}if("DeregisterKnownNeuron"in e){let t=e.DeregisterKnownNeuron;return{DeregisterKnownNeuron:{id:t.id===void 0?[]:[{id:t.id}]}}}if("CreateServiceNervousSystem"in e)return{CreateServiceNervousSystem:gs(e.CreateServiceNervousSystem)};if("InstallCode"in e)return{InstallCode:vs(e.InstallCode)};if("StopOrStartCanister"in e){let t=e.StopOrStartCanister;return{StopOrStartCanister:{canister_id:t.canisterId?[z.fromText(t.canisterId)]:[],action:t.action?[t.action]:[]}}}if("UpdateCanisterSettings"in e){let t=e.UpdateCanisterSettings;return{UpdateCanisterSettings:{canister_id:t.canisterId?[z.fromText(t.canisterId)]:[],settings:ws(t.settings)}}}throw new M(e)},ys=e=>{if("Split"in e){let t=e.Split;return{Split:{amount_e8s:t.amount,memo:f(t.memo)}}}if("Follow"in e){let t=e.Follow;return{Follow:{topic:t.topic,followees:t.followees.map(rn)}}}if("DisburseMaturity"in e){let t=e.DisburseMaturity;return{DisburseMaturity:{to_account:t.toAccount?[$n(t.toAccount)]:[],to_account_identifier:Wo(t.toAccountIdentifier)?[ot(t.toAccountIdentifier)]:[],percentage_to_disburse:t.percentageToDisburse}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by?[ks(t.by)]:[]}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation?[bs(t.operation)]:[]}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal?[Xn(t.proposal)]:[]}}}if("DisburseToNeuron"in e){let t=e.DisburseToNeuron;return{DisburseToNeuron:{dissolve_delay_seconds:t.dissolveDelaySeconds,kyc_verified:t.kycVerified,amount_e8s:t.amount,new_controller:t.newController?[z.fromText(t.newController)]:[],nonce:t.nonce}}}if("SetFollowing"in e){let{topicFollowing:t}=e.SetFollowing;return{SetFollowing:{topic_following:t.length?f(t.map(({topic:o,followees:n})=>({topic:f(o),followees:f(n.map(rn))}))):[]}}}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:f(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{url:t.url,title:[],action:t.action?[Qn(t.action)]:[],summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{to_account:t.toAccountId?[ot(t.toAccountId)]:[],amount:t.amount?[Yn(t.amount)]:[]}}}if("Spawn"in e){let t=e.Spawn;return{Spawn:{percentage_to_spawn:t.percentageToSpawn===void 0?[]:[t.percentageToSpawn],new_controller:t.newController?[z.fromText(t.newController)]:[],nonce:[]}}}if("Merge"in e){let t=e.Merge;return{Merge:{source_neuron_id:t.sourceNeuronId?[{id:t.sourceNeuronId}]:[]}}}throw new M(e)},bs=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hot_key_to_remove:t.hotKeyToRemove!=null?[z.fromText(t.hotKeyToRemove)]:[]}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{new_hot_key:t.newHotKey?[z.fromText(t.newHotKey)]:[]}}}if("StopDissolving"in e)return{StopDissolving:{}};if("StartDissolving"in e)return{StartDissolving:{}};if("IncreaseDissolveDelay"in e)return{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:e.IncreaseDissolveDelay.additionalDissolveDelaySeconds}};if("JoinCommunityFund"in e||"LeaveCommunityFund"in e)return e;if("SetDissolveTimestamp"in e)return{SetDissolveTimestamp:{dissolve_timestamp_seconds:e.SetDissolveTimestamp.dissolveTimestampSeconds}};if("ChangeAutoStakeMaturity"in e){let{requestedSettingForAutoStakeMaturity:t}=e.ChangeAutoStakeMaturity;return{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}if("SetVisibility"in e){let t=e.SetVisibility;return{SetVisibility:{visibility:f(t.visibility)}}}throw new M(e)},$n=e=>({owner:f(e.owner),subaccount:Wo(e.subaccount)?[is(e.subaccount)]:[]}),hs=e=>{if("ToRemove"in e)return{ToRemove:an(e.ToRemove)};if("ToAdd"in e)return{ToAdd:an(e.ToAdd)};throw new M(e)},an=e=>({id:e.id!=null?[z.fromText(e.id)]:[],reward_account:e.rewardAccount!=null?[ot(e.rewardAccount)]:[]}),Yn=e=>({e8s:e}),ot=e=>({hash:Hn(e)}),Ss=e=>{if(Ho(e))return[];let{maximumIcpXdrRate:t,maxTheoreticalNeuronsFundParticipationAmountXdr:o,neuronsFundMatchedFundingCurveCoefficients:n,minimumIcpXdrRate:r}=e,i=d=>Ho(d)?[]:[{basis_points:f(d.basisPoints)}],c=d=>Ho(d)?[]:[{human_readable:f(d.humanReadable)}],_=d=>Ho(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:i(t),neurons_fund_matched_funding_curve_coefficients:_(n),minimum_icp_xdr_rate:i(r),max_theoretical_neurons_fund_participation_amount_xdr:c(o)}]},xs=e=>Ho(e)?[]:[{start_reducing_voting_power_after_seconds:f(e.startReducingVotingPowerAfterSeconds),neuron_minimum_dissolve_delay_to_vote_seconds:f(e.neuronMinimumDissolveDelayToVoteSeconds),clear_following_after_seconds:f(e.clearFollowingAfterSeconds)}],zn=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?[ot(e.RewardToAccount.toAccount)]:[]}};throw new M(e)},ks=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 M(e)},jo=({neuronIds:e,includeEmptyNeurons:t,includePublicNeurons:o,neuronSubaccounts:n,pageNumber:r,pageSize:i})=>({neuron_ids:BigUint64Array.from(e??[]),include_neurons_readable_by_caller:!e,include_empty_neurons_readable_by_caller:f(t),include_public_neurons_in_full_neurons:f(o),neuron_subaccounts:f(n),page_number:f(r),page_size:f(i)}),Vs=({id:e,command:t,neuronIdOrSubaccount:o})=>({id:e?[rn(e)]:[],command:t?[ys(t)]:[],neuron_id_or_subaccount:o?[cs(o)]:[]}),Zn=({includeRewardStatus:e,beforeProposal:t,excludeTopic:o,includeStatus:n,limit:r,includeAllManageNeuronProposals:i,omitLargeFields:c})=>({include_reward_status:Int32Array.from(e),before_proposal:t?[Xn(t)]:[],limit:r,exclude_topic:Int32Array.from(o),include_all_manage_neuron_proposals:i!==void 0?[i]:[],include_status:Int32Array.from(n),omit_large_fields:f(c)}),In=e=>({id:[],command:[{ClaimOrRefresh:{by:[{NeuronIdOrSubaccount:{}}]}}],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}),Dn=({memo:e,controller:t})=>{let o={ClaimOrRefresh:{by:[{MemoAndController:{controller:t==null?[]:[t],memo:e}}]}};return{id:[],command:[o],neuron_id_or_subaccount:[]}},Ln=({neuronId:e,amount:t,memo:o})=>{let n={Split:{amount_e8s:t,memo:f(o)}};return{id:[],command:[n],neuron_id_or_subaccount:[{NeuronId:{id:e}}]}};var er=({neuronId:e,vote:t,proposalId:o})=>me({neuronId:e,command:{RegisterVote:{vote:t,proposal:[{id:o}]}}}),tr=e=>{let t={MakeProposal:{url:e.url,title:e.title!=null?[e.title]:[],summary:e.summary,action:[Qn(e.action)]}};return{id:[],command:[t],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}},or=({neuronId:e,topic:t,followees:o})=>me({neuronId:e,command:{Follow:{topic:t,followees:o.map(n=>({id:n}))}}}),nr=({neuronId:e,toAccountIdentifier:t,amount:o})=>me({neuronId:e,command:{Disburse:{to_account:t!==void 0?[t.toAccountIdentifierHash()]:[],amount:o!==void 0?[Yn(o)]:[]}}}),rr=({neuronId:e,percentageToDisburse:t,toAccountIdentifier:o,toAccount:n})=>me({neuronId:e,command:{DisburseMaturity:{percentage_to_disburse:t,to_account:Wo(n)?[$n(n)]:[],to_account_identifier:Wo(o)?[ot(o)]:[]}}}),sr=({neuronId:e,topicFollowing:t})=>me({neuronId:e,command:{SetFollowing:{topic_following:t.length?f(t.map(({topic:o,followees:n})=>({topic:f(o),followees:f(n.map(rn))}))):[]}}}),ar=({neuronId:e})=>me({neuronId:e,command:{RefreshVotingPower:{}}}),ir=({neuronId:e,percentageToMerge:t})=>me({neuronId:e,command:{MergeMaturity:{percentage_to_merge:t}}}),cr=({neuronId:e,percentageToStake:t})=>me({neuronId:e,command:{StakeMaturity:{percentage_to_stake:f(t)}}}),_r=({neuronId:e,percentageToSpawn:t,newController:o,nonce:n})=>me({neuronId:e,command:{Spawn:{percentage_to_spawn:t===void 0?[]:[t],new_controller:o===void 0?[]:[o],nonce:n===void 0?[]:[n]}}}),dr=({neuronId:e,principal:t})=>fe({neuronId:e,operation:{AddHotKey:{new_hot_key:[t]}}}),ur=({neuronId:e,principal:t})=>fe({neuronId:e,operation:{RemoveHotKey:{hot_key_to_remove:[t]}}}),pr=({neuronId:e,additionalDissolveDelaySeconds:t})=>fe({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),lr=({neuronId:e,dissolveDelaySeconds:t})=>fe({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:BigInt(t)}}}),mr=e=>fe({neuronId:e,operation:{JoinCommunityFund:{}}}),Nr=({neuronId:e,autoStake:t})=>fe({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),Or=e=>fe({neuronId:e,operation:{LeaveCommunityFund:{}}}),fr=({neuronId:e,visibility:t})=>fe({neuronId:e,operation:{SetVisibility:{visibility:[t]}}}),Rn=({sourceNeuronId:e,targetNeuronId:t})=>me({neuronId:t,command:{Merge:{source_neuron_id:[{id:e}]}}}),Rr=e=>fe({neuronId:e,operation:{StartDissolving:{}}}),gr=e=>fe({neuronId:e,operation:{StopDissolving:{}}}),me=({neuronId:e,command:t})=>({id:[{id:e}],command:[t],neuron_id_or_subaccount:[]}),fe=({neuronId:e,operation:t})=>me({neuronId:e,command:{Configure:{operation:[t]}}});import{fromDefinedNullable as nt,fromNullable as s,isNullish as rt,nonNullish as Ne,toNullable as k,uint8ArrayToArrayOfNumber as hr,uint8ArrayToHexString as vr}from"@dfinity/utils";import{Principal as wr}from"@icp-sdk/core/principal";var gn=({neuronId:e,neuronInfo:t,rawNeuron:o,canisterId:n})=>{let r=o?Ps({neuron:o,canisterId:n}):void 0;return{neuronId:e,dissolveDelaySeconds:t.dissolve_delay_seconds,recentBallots:t.recent_ballots.map(xr),neuronType:s(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,votingPowerRefreshedTimestampSeconds:s(t.voting_power_refreshed_timestamp_seconds),decidingVotingPower:s(t.deciding_voting_power),potentialVotingPower:s(t.potential_voting_power),ageSeconds:t.age_seconds,visibility:s(t.visibility),fullNeuron:r}},Ps=({neuron:e,canisterId:t})=>({id:e.id.length?tt(e.id[0]):void 0,stakedMaturityE8sEquivalent:s(e.staked_maturity_e8s_equivalent),controller:e.controller.length?e.controller[0].toString():void 0,recentBallots:e.recent_ballots.map(xr),neuronType:s(e.neuron_type),kycVerified:e.kyc_verified,notForProfit:e.not_for_profit,cachedNeuronStake:e.cached_neuron_stake_e8s,createdTimestampSeconds:e.created_timestamp_seconds,autoStakeMaturity:s(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:nn(t,Uint8Array.from(e.account)),joinedCommunityFundTimestampSeconds:e.joined_community_fund_timestamp_seconds.length?e.joined_community_fund_timestamp_seconds[0]:void 0,maturityDisbursementsInProgress:s(e.maturity_disbursements_in_progress)?.map(Cs),dissolveState:e.dissolve_state.length?Ts(e.dissolve_state[0]):void 0,spawnAtTimesSeconds:e.spawn_at_timestamp_seconds[0],followees:e.followees.map(([o,n])=>kr({topic:o,followees:n})),visibility:s(e.visibility),votingPowerRefreshedTimestampSeconds:s(e.voting_power_refreshed_timestamp_seconds),potentialVotingPower:s(e.potential_voting_power),decidingVotingPower:s(e.deciding_voting_power)}),Sr=({neuron:e,account:t})=>({id:Ne(e.id)?k({id:e.id}):[],staked_maturity_e8s_equivalent:k(e.stakedMaturityE8sEquivalent),controller:Ne(e.controller)?k(wr.from(e.controller)):[],recent_ballots:e.recentBallots.map(o=>({vote:o.vote,proposal_id:Ne(o.proposalId)?k({id:o.proposalId}):[]})),kyc_verified:e.kycVerified,neuron_type:k(e.neuronType),not_for_profit:e.notForProfit,cached_neuron_stake_e8s:e.cachedNeuronStake,created_timestamp_seconds:e.createdTimestampSeconds,auto_stake_maturity:k(e.autoStakeMaturity),maturity_e8s_equivalent:e.maturityE8sEquivalent,aging_since_timestamp_seconds:e.agingSinceTimestampSeconds,neuron_fees_e8s:e.neuronFees,hot_keys:e.hotKeys.map(o=>wr.from(o)),account:t,joined_community_fund_timestamp_seconds:k(e.joinedCommunityFundTimestampSeconds),maturity_disbursements_in_progress:k(e.maturityDisbursementsInProgress?.map(Ms)),dissolve_state:Ne(e.dissolveState)?[e.dissolveState]:[],spawn_at_timestamp_seconds:k(e.spawnAtTimesSeconds),followees:e.followees.map(o=>[o.topic,{followees:o.followees.map(n=>({id:n}))}]),visibility:k(e.visibility),transfer:[],known_neuron_data:[],voting_power_refreshed_timestamp_seconds:k(e.votingPowerRefreshedTimestampSeconds),potential_voting_power:k(e.potentialVotingPower),deciding_voting_power:k(e.decidingVotingPower)}),xr=({vote:e,proposal_id:t})=>({vote:e,proposalId:t.length?tt(t[0]):void 0}),Ts=e=>"DissolveDelaySeconds"in e?{DissolveDelaySeconds:e.DissolveDelaySeconds}:{WhenDissolvedTimestampSeconds:e.WhenDissolvedTimestampSeconds},Cs=e=>{let t=s(e.account_to_disburse_to);return{timestampOfDisbursementSeconds:s(e.timestamp_of_disbursement_seconds),amountE8s:s(e.amount_e8s),accountToDisburseTo:Ne(t)?Vr(t):void 0,accountIdentifierToDisburseTo:e.account_identifier_to_disburse_to?.length?zo(e.account_identifier_to_disburse_to[0]):void 0,finalizeDisbursementTimestampSeconds:s(e.finalize_disbursement_timestamp_seconds)}},Ms=e=>({timestamp_of_disbursement_seconds:k(e.timestampOfDisbursementSeconds),amount_e8s:k(e.amountE8s),account_to_disburse_to:Ne(e.accountToDisburseTo)?k(qs(e.accountToDisburseTo)):[],account_identifier_to_disburse_to:Ne(e.accountIdentifierToDisburseTo)?[ot(e.accountIdentifierToDisburseTo)]:[],finalize_disbursement_timestamp_seconds:k(e.finalizeDisbursementTimestampSeconds)}),kr=({topic:e,followees:t})=>({topic:e,followees:t.followees.map(tt)}),tt=({id:e})=>e,As=e=>{if("NeuronId"in e)return{NeuronId:e.NeuronId.id};if("Subaccount"in e)return{Subaccount:hr(Uint8Array.from(e.Subaccount))};throw new M(e)},Fs=({neuronId:e,ballot:t})=>{let{vote:o,voting_power:n}=t;return{neuronId:e,vote:o,votingPower:n}},Vr=({subaccount:e,owner:t})=>{let o=s(e);return{owner:s(t),subaccount:Ne(o)?hr(Uint8Array.from(o)):void 0}},qs=({owner:e,subaccount:t})=>({owner:k(e),subaccount:Ne(t)?k(Uint8Array.from(t)):[]}),Es=({title:e,url:t,action:o,summary:n})=>({title:e.length?e[0]:void 0,url:t,action:o.length?Pr(o[0]):void 0,summary:n}),Pr=e=>{if("ExecuteNnsFunction"in e)return{ExecuteNnsFunction:{nnsFunctionId:e.ExecuteNnsFunction.nns_function}};if("ManageNeuron"in e){let t=e.ManageNeuron;return{ManageNeuron:{id:t.id.length?tt(t.id[0]):void 0,command:t.command.length?Gs(t.command[0]):void 0,neuronIdOrSubaccount:t.neuron_id_or_subaccount.length?As(t.neuron_id_or_subaccount[0]):void 0}}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(o=>o.toString())}};if("ManageNetworkEconomics"in e){let t=e.ManageNetworkEconomics;return{ManageNetworkEconomics:vn(t)}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{nodeProvider:t.node_provider.length?_n(t.node_provider[0]):void 0,amountE8s:t.amount_e8s,rewardMode:t.reward_mode.length?yr(t.reward_mode[0]):void 0}}}if("RewardNodeProviders"in e){let t=e.RewardNodeProviders;return{RewardNodeProviders:{useRegistryDerivedRewards:t.use_registry_derived_rewards.length?t.use_registry_derived_rewards[0]:void 0,rewards:t.rewards.map(o=>({nodeProvider:o.node_provider.length?_n(o.node_provider[0]):void 0,amountE8s:o.amount_e8s,rewardMode:o.reward_mode.length?yr(o.reward_mode[0]):void 0}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change.length?Ks(t.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(([o,n])=>kr({topic:o,followees:n}))}};if("RegisterKnownNeuron"in e){let t=e.RegisterKnownNeuron;return{RegisterKnownNeuron:Xs(t)}}if("DeregisterKnownNeuron"in e){let{DeregisterKnownNeuron:t}=e;return{DeregisterKnownNeuron:{id:t.id[0]?.id}}}if("SetSnsTokenSwapOpenTimeWindow"in e){let{SetSnsTokenSwapOpenTimeWindow:t}=e,o=t.request?.length?{openTimeWindow:t.request[0].open_time_window.length?{startTimestampSeconds:t.request[0].open_time_window[0].start_timestamp_seconds,endTimestampSeconds:t.request[0].open_time_window[0].end_timestamp_seconds}:void 0}:void 0,n=t?.swap_canister_id.length?t.swap_canister_id[0].toString():void 0;return{SetSnsTokenSwapOpenTimeWindow:{request:o,swapCanisterId:n}}}if("OpenSnsTokenSwap"in e){let{OpenSnsTokenSwap:t}=e,o=s(t.params);return{OpenSnsTokenSwap:{communityFundInvestmentE8s:s(t.community_fund_investment_e8s),targetSwapCanisterId:s(t.target_swap_canister_id),params:o&&{minParticipantIcpE8s:o.min_participant_icp_e8s,maxIcpE8s:o.max_icp_e8s,swapDueTimestampSeconds:o.swap_due_timestamp_seconds,minParticipants:o.min_participants,snsTokenE8s:o.sns_token_e8s,maxParticipantIcpE8s:o.max_participant_icp_e8s,minIcpE8s:o.min_icp_e8s,saleDelaySeconds:s(o.sale_delay_seconds),neuronBasketConstructionParameters:s(o.neuron_basket_construction_parameters),maxDirectParticipationIcpE8s:s(o.max_direct_participation_icp_e8s),minDirectParticipationIcpE8s:s(o.min_direct_participation_icp_e8s)}}}}if("CreateServiceNervousSystem"in e){let t=e.CreateServiceNervousSystem;return{CreateServiceNervousSystem:{url:s(t.url),governanceParameters:Is(s(t.governance_parameters)),fallbackControllerPrincipalIds:t.fallback_controller_principal_ids.map(o=>o.toString()),logo:Mr(s(t.logo)),name:s(t.name),ledgerParameters:Ys(s(t.ledger_parameters)),description:s(t.description),dappCanisters:t.dapp_canisters.map($s)??[],swapParameters:Ls(s(t.swap_parameters)),initialTokenDistribution:oa(s(t.initial_token_distribution))}}}if("InstallCode"in e){let t=e.InstallCode;return{InstallCode:{skipStoppingBeforeInstalling:s(t.skip_stopping_before_installing),canisterId:t.canister_id.length?t.canister_id[0].toString():void 0,installMode:s(t.install_mode),wasmModuleHash:vr(nt(t.wasm_module_hash)),argHash:vr(nt(t.arg_hash))}}}if("StopOrStartCanister"in e){let t=e.StopOrStartCanister;return{StopOrStartCanister:{canisterId:t.canister_id.length?t.canister_id[0].toString():void 0,action:s(t.action)}}}if("UpdateCanisterSettings"in e)return{UpdateCanisterSettings:{canisterId:e.UpdateCanisterSettings.canister_id.length?e.UpdateCanisterSettings.canister_id[0].toString():void 0,settings:na(nt(e.UpdateCanisterSettings.settings))}};if("FulfillSubnetRentalRequest"in e)return{FulfillSubnetRentalRequest:{user:s(e.FulfillSubnetRentalRequest.user),replicaVersionId:s(e.FulfillSubnetRentalRequest.replica_version_id),nodeIds:s(e.FulfillSubnetRentalRequest.node_ids)}};throw new M(e)},Bs=e=>({no:e.no,yes:e.yes,total:e.total,timestampSeconds:e.timestamp_seconds}),Gs=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){let t=e.Split;return{Split:{amount:t.amount_e8s,memo:t.memo?.[0]}}}if("Follow"in e){let t=e.Follow;return{Follow:{topic:t.topic,followees:t.followees.map(tt)}}}if("DisburseMaturity"in e){let t=e.DisburseMaturity;return{DisburseMaturity:{toAccount:t.to_account.length?Vr(t.to_account[0]):void 0,toAccountIdentifier:t.to_account_identifier.length?zo(t.to_account_identifier[0]):void 0,percentageToDisburse:t.percentage_to_disburse}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by.length?zs(t.by[0]):void 0}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation.length?Us(t.operation[0]):void 0}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal.length?tt(t.proposal[0]):void 0}}}if("DisburseToNeuron"in e){let t=e.DisburseToNeuron;return{DisburseToNeuron:{dissolveDelaySeconds:t.dissolve_delay_seconds,kycVerified:t.kyc_verified,amount:t.amount_e8s,newController:t.new_controller.length?t.new_controller[0].toString():void 0,nonce:t.nonce}}}if("SetFollowing"in e){let t=e.SetFollowing;return{SetFollowing:{topicFollowing:nt(t.topic_following).map(({topic:o,followees:n})=>({topic:nt(o),followees:nt(n).map(r=>r.id)}))}}}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:s(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?Pr(t.action[0]):void 0,summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{toAccountId:t.to_account.length?zo(t.to_account[0]):void 0,amount:t.amount.length?js(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}}}if("RefreshVotingPower"in e)return{RefreshVotingPower:{}};throw new M(e)},Us=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hotKeyToRemove:t.hot_key_to_remove.length?t.hot_key_to_remove[0].toString():void 0}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{newHotKey:t.new_hot_key.length?t.new_hot_key[0].toString():void 0}}}if("StopDissolving"in e)return{StopDissolving:{}};if("StartDissolving"in e)return{StartDissolving:{}};if("IncreaseDissolveDelay"in e)return{IncreaseDissolveDelay:{additionalDissolveDelaySeconds:e.IncreaseDissolveDelay.additional_dissolve_delay_seconds}};if("JoinCommunityFund"in e||"LeaveCommunityFund"in e)return e;if("SetDissolveTimestamp"in e)return{SetDissolveTimestamp:{dissolveTimestampSeconds:e.SetDissolveTimestamp.dissolve_timestamp_seconds}};if("ChangeAutoStakeMaturity"in e){let{requested_setting_for_auto_stake_maturity:t}=e.ChangeAutoStakeMaturity;return{ChangeAutoStakeMaturity:{requestedSettingForAutoStakeMaturity:t}}}if("SetVisibility"in e){let t=e.SetVisibility;return{SetVisibility:{visibility:s(t.visibility)}}}throw new M(e)},Ks=e=>{if("ToRemove"in e)return{ToRemove:_n(e.ToRemove)};if("ToAdd"in e)return{ToAdd:_n(e.ToAdd)};throw new M(e)},Hs=e=>{let t=s(e);if(rt(t))return;let{maximum_icp_xdr_rate:o,neurons_fund_matched_funding_curve_coefficients:n,max_theoretical_neurons_fund_participation_amount_xdr:r,minimum_icp_xdr_rate:i}=t,c=R=>{let N=s(R);if(rt(N))return;let{basis_points:u}=N,w=s(u);return Ne(w)?{basisPoints:w}:void 0},_=R=>{let N=s(R);if(rt(N))return;let{human_readable:u}=N,w=s(u);return Ne(w)?{humanReadable:w}:void 0},d=R=>{let N=s(R);if(rt(N))return;let{full_participation_milestone_xdr:u,one_third_participation_milestone_xdr:w,contribution_threshold_xdr:g}=N;return{fullParticipationMilestoneXdr:_(u),oneThirdParticipationMilestoneXdr:_(w),contributionThresholdXdr:_(g)}};return{maximumIcpXdrRate:c(o),neuronsFundMatchedFundingCurveCoefficients:d(n),maxTheoreticalNeuronsFundParticipationAmountXdr:_(r),minimumIcpXdrRate:c(i)}},Ws=e=>{let t=s(e);if(!rt(t))return{startReducingVotingPowerAfterSeconds:s(t.start_reducing_voting_power_after_seconds),neuronMinimumDissolveDelayToVoteSeconds:s(t.neuron_minimum_dissolve_delay_to_vote_seconds),clearFollowingAfterSeconds:s(t.clear_following_after_seconds)}},vn=e=>({neuronMinimumStake:e.neuron_minimum_stake_e8s,maxProposalsToKeepPerTopic:e.max_proposals_to_keep_per_topic,neuronManagementFeePerProposal:e.neuron_management_fee_per_proposal_e8s,rejectCost:e.reject_cost_e8s,transactionFee:e.transaction_fee_e8s,neuronSpawnDissolveDelaySeconds:e.neuron_spawn_dissolve_delay_seconds,minimumIcpXdrRate:e.minimum_icp_xdr_rate,maximumNodeProviderRewards:e.maximum_node_provider_rewards_e8s,neuronsFundEconomics:Hs(e.neurons_fund_economics),votingPowerEconomics:Ws(e.voting_power_economics)}),cn=e=>{let t=s(e);if(!rt(t))return{totalMaturityE8sEquivalent:s(t.total_maturity_e8s_equivalent),maturityE8sEquivalentBuckets:t.maturity_e8s_equivalent_buckets,votingPowerBuckets:t.voting_power_buckets,totalStakedE8s:s(t.total_staked_e8s),count:s(t.count),decidingVotingPowerBuckets:t.deciding_voting_power_buckets,totalStakedMaturityE8sEquivalent:s(t.total_staked_maturity_e8s_equivalent),totalPotentialVotingPower:s(t.total_potential_voting_power),totalDecidingVotingPower:s(t.total_deciding_voting_power),stakedMaturityE8sEquivalentBuckets:t.staked_maturity_e8s_equivalent_buckets,stakedE8sBuckets:t.staked_e8s_buckets,totalVotingPower:s(t.total_voting_power),potentialVotingPowerBuckets:t.potential_voting_power_buckets,countBuckets:t.count_buckets}},Tr=e=>({totalMaturityE8sEquivalent:e.total_maturity_e8s_equivalent,notDissolvingNeuronsE8sBuckets:e.not_dissolving_neurons_e8s_buckets,dissolvingNeuronsStakedMaturityE8sEquivalentSum:e.dissolving_neurons_staked_maturity_e8s_equivalent_sum,garbageCollectableNeuronsCount:e.garbage_collectable_neurons_count,dissolvingNeuronsStakedMaturityE8sEquivalentBuckets:e.dissolving_neurons_staked_maturity_e8s_equivalent_buckets,neuronsWithInvalidStakeCount:e.neurons_with_invalid_stake_count,notDissolvingNeuronsCountBuckets:e.not_dissolving_neurons_count_buckets,ectNeuronCount:e.ect_neuron_count,totalSupplyIcp:e.total_supply_icp,neuronsWithLessThan6MonthsDissolveDelayCount:e.neurons_with_less_than_6_months_dissolve_delay_count,dissolvedNeuronsCount:e.dissolved_neurons_count,communityFundTotalMaturityE8sEquivalent:e.community_fund_total_maturity_e8s_equivalent,totalStakedE8sSeed:e.total_staked_e8s_seed,totalStakedMaturityE8sEquivalentEct:e.total_staked_maturity_e8s_equivalent_ect,totalStakedE8s:e.total_staked_e8s,fullyLostVotingPowerNeuronSubsetMetrics:cn(e.fully_lost_voting_power_neuron_subset_metrics),notDissolvingNeuronsCount:e.not_dissolving_neurons_count,totalLockedE8s:e.total_locked_e8s,neuronsFundTotalActiveNeurons:e.neurons_fund_total_active_neurons,totalVotingPowerNonSelfAuthenticatingController:s(e.total_voting_power_non_self_authenticating_controller),totalStakedMaturityE8sEquivalent:e.total_staked_maturity_e8s_equivalent,notDissolvingNeuronsE8sBucketsEct:e.not_dissolving_neurons_e8s_buckets_ect,decliningVotingPowerNeuronSubsetMetrics:cn(e.declining_voting_power_neuron_subset_metrics),spawningNeuronsCount:e.spawning_neurons_count,totalStakedE8sEct:e.total_staked_e8s_ect,notDissolvingNeuronsStakedMaturityE8sEquivalentSum:e.not_dissolving_neurons_staked_maturity_e8s_equivalent_sum,dissolvedNeuronsE8s:e.dissolved_neurons_e8s,totalStakedE8sNonSelfAuthenticatingController:s(e.total_staked_e8s_non_self_authenticating_controller),dissolvingNeuronsE8sBucketsSeed:e.dissolving_neurons_e8s_buckets_seed,neuronsWithLessThan6MonthsDissolveDelayE8s:e.neurons_with_less_than_6_months_dissolve_delay_e8s,notDissolvingNeuronsStakedMaturityE8sEquivalentBuckets:e.not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets,dissolvingNeuronsCountBuckets:e.dissolving_neurons_count_buckets,dissolvingNeuronsE8sBucketsEct:e.dissolving_neurons_e8s_buckets_ect,nonSelfAuthenticatingControllerNeuronSubsetMetrics:cn(e.non_self_authenticating_controller_neuron_subset_metrics),dissolvingNeuronsCount:e.dissolving_neurons_count,dissolvingNeuronsE8sBuckets:e.dissolving_neurons_e8s_buckets,totalStakedMaturityE8sEquivalentSeed:e.total_staked_maturity_e8s_equivalent_seed,communityFundTotalStakedE8s:e.community_fund_total_staked_e8s,notDissolvingNeuronsE8sBucketsSeed:e.not_dissolving_neurons_e8s_buckets_seed,publicNeuronSubsetMetrics:cn(e.public_neuron_subset_metrics),timestampSeconds:e.timestamp_seconds,seedNeuronCount:e.seed_neuron_count}),_n=e=>({id:e.id.length?e.id[0].toString():void 0,rewardAccount:e.reward_account.length?zo(e.reward_account[0]):void 0}),js=e=>e.e8s,zo=e=>Wn(new Uint8Array(e.hash)),yr=e=>{if("RewardToNeuron"in e)return{RewardToNeuron:{dissolveDelaySeconds:e.RewardToNeuron.dissolve_delay_seconds}};if("RewardToAccount"in e)return{RewardToAccount:{toAccount:e.RewardToAccount.to_account!=null&&e.RewardToAccount.to_account.length?zo(e.RewardToAccount.to_account[0]):void 0}};throw new M(e)},zs=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 M(e)},wn=e=>({id:e.id.length?tt(e.id[0]):void 0,ballots:e.ballots.map(t=>Fs({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:s(e.deadline_timestamp_seconds),decidedTimestampSeconds:e.decided_timestamp_seconds,proposal:e.proposal.length?Es(e.proposal[0]):void 0,proposer:e.proposer.length?tt(e.proposer[0]):void 0,latestTally:e.latest_tally.length?Bs(e.latest_tally[0]):void 0,executedTimestampSeconds:e.executed_timestamp_seconds,topic:e.topic,status:e.status,rewardStatus:e.reward_status,totalPotentialVotingPower:s(e.total_potential_voting_power)}),yn=({response:{neuron_infos:e,full_neurons:t},canisterId:o})=>e.map(([n,r])=>gn({neuronId:n,neuronInfo:r,rawNeuron:t.find(i=>i.id.length&&i.id[0].id===n),canisterId:o})),Cr=({proposal_info:e})=>({proposals:e.map(wn)}),Xs=({id:e,known_neuron_data:t})=>({id:e[0]?.id??BigInt(0),name:t[0]?.name??"",description:t[0]?.description[0]??"",links:s(t[0]?.links??[]),committed_topics:s(t[0]?.committed_topics??[])}),dn=e=>e===void 0?void 0:{basisPoints:s(e.basis_points)},Re=e=>e===void 0?void 0:{seconds:s(e.seconds)},Js=e=>e===void 0?void 0:{secondsAfterUtcMidnight:s(e.seconds_after_utc_midnight)},Qs=e=>e===void 0?void 0:{isoCodes:e.iso_codes},re=e=>e===void 0?void 0:{e8s:s(e.e8s)},$s=e=>e===void 0||e.id.length===0?void 0:nt(e.id).toString(),Mr=e=>e===void 0?void 0:{base64Encoding:s(e.base64_encoding)},Ys=e=>e===void 0?void 0:{transactionFee:re(s(e.transaction_fee)),tokenSymbol:s(e.token_symbol),tokenLogo:Mr(s(e.token_logo)),tokenName:s(e.token_name)},Zs=e=>e===void 0?void 0:{rewardRateTransitionDuration:Re(s(e.reward_rate_transition_duration)),initialRewardRate:dn(s(e.initial_reward_rate)),finalRewardRate:dn(s(e.final_reward_rate))},Is=e=>e===void 0?void 0:{neuronMaximumDissolveDelayBonus:dn(s(e.neuron_maximum_dissolve_delay_bonus)),neuronMaximumAgeForAgeBonus:Re(s(e.neuron_maximum_age_for_age_bonus)),neuronMaximumDissolveDelay:Re(s(e.neuron_maximum_dissolve_delay)),neuronMinimumDissolveDelayToVote:Re(s(e.neuron_minimum_dissolve_delay_to_vote)),neuronMaximumAgeBonus:dn(s(e.neuron_maximum_age_bonus)),neuronMinimumStake:re(s(e.neuron_minimum_stake)),proposalWaitForQuietDeadlineIncrease:Re(s(e.proposal_wait_for_quiet_deadline_increase)),proposalInitialVotingPeriod:Re(s(e.proposal_initial_voting_period)),proposalRejectionFee:re(s(e.proposal_rejection_fee)),votingRewardParameters:Zs(s(e.voting_reward_parameters))},Ds=e=>e===void 0?void 0:{dissolveDelayInterval:Re(s(e.dissolve_delay_interval)),count:s(e.count)},Ls=e=>e===void 0?void 0:{minimumParticipants:s(e.minimum_participants),duration:Re(s(e.duration)),neuronBasketConstructionParameters:Ds(s(e.neuron_basket_construction_parameters)),confirmationText:s(e.confirmation_text),maximumParticipantIcp:re(s(e.maximum_participant_icp)),neuronsFundInvestmentIcp:re(s(e.neurons_fund_investment_icp)),minimumIcp:re(s(e.minimum_icp)),minimumParticipantIcp:re(s(e.minimum_participant_icp)),startTime:Js(s(e.start_time)),maximumIcp:re(s(e.maximum_icp)),restrictedCountries:Qs(s(e.restricted_countries)),maxDirectParticipationIcp:re(s(e.maximum_direct_participation_icp)),minDirectParticipationIcp:re(s(e.minimum_direct_participation_icp)),neuronsFundParticipation:s(e.neurons_fund_participation)},br=e=>e===void 0?void 0:{total:re(s(e.total))},ea=e=>e===void 0?void 0:{controller:e.controller.length===0?void 0:e.controller[0].toString(),dissolveDelay:Re(s(e.dissolve_delay)),memo:s(e.memo),vestingPeriod:Re(s(e.vesting_period)),stake:re(s(e.stake))},ta=e=>e===void 0?void 0:{developerNeurons:e.developer_neurons.map(ea)},oa=e=>e===void 0?void 0:{treasuryDistribution:br(s(e.treasury_distribution)),developerDistribution:ta(s(e.developer_distribution)),swapDistribution:br(s(e.swap_distribution))},na=e=>e===void 0?void 0:{freezingThreshold:s(e.freezing_threshold),controllers:s(e.controllers)?.controllers.map(t=>t.toString()),logVisibility:s(e.log_visibility),wasmMemoryLimit:s(e.wasm_memory_limit),computeAllocation:s(e.compute_allocation),memoryAllocation:s(e.memory_allocation),wasmMemoryThreshold:s(e.wasm_memory_threshold)};import{isNullish as ra}from"@dfinity/utils";var Xo=e=>{let{command:t}=e,[o]=t;if(ra(o))throw new Ae({error_message:"Error updating neuron",error_type:0});if("Error"in o)throw new Ae(o.Error);return o},S=async({request:e,service:t})=>{let o=await t.manage_neuron(e);return Xo(o)},Ar=async({request:e,service:t})=>{let o=await t.simulate_manage_neuron(e);return Xo(o)};var Fr=BigInt(1e8);import{AccountIdentifier as sa,SubAccount as aa}from"@dfinity/ledger-icp";import{arrayOfNumberToUint8Array as ia,asciiStringToByteArray as ca,bigIntToUint8Array as _a}from"@dfinity/utils";var qr=({proposal:{ballots:e},neuron:{neuronId:t}})=>e.find(({neuronId:o})=>o===t)?.vote,da=({neurons:e,proposal:t})=>{let{ballots:o,proposalTimestampSeconds:n}=t;return e.filter(({createdTimestampSeconds:r,neuronId:i})=>{let c=r>n,_=o.find(({neuronId:d})=>d===i)===void 0;return c||_})},_i=({neurons:e,proposal:t})=>e.filter(o=>qr({proposal:t,neuron:o})===0&&da({neurons:e,proposal:t}).find(({neuronId:n})=>n===o.neuronId)===void 0),di=({neurons:e,proposal:t})=>e.filter(o=>qr({proposal:t,neuron:o})!==0),ua=({controller:e,memo:t})=>{let o=ca("neuron-stake"),n=Gn.create();return n.update(ia([o.length,...o,...e.toUint8Array(),..._a(t)])),aa.fromBytes(n.digest())},Er=({controller:e,memo:t,governanceCanisterId:o})=>{let n=ua({controller:e,memo:t});return sa.fromPrincipal({principal:o,subAccount:n})};var hn=class e{constructor(t,o,n,r,i){this.canisterId=t;this.service=o;this.certifiedService=n;this.oldListNeuronsCertifiedService=r;this.agent=i;this.canisterId=t,this.service=o,this.certifiedService=n,this.oldListNeuronsCertifiedService=r,this.agent=i}static create(t={}){let o=t.canisterId??Zo,{service:n,certifiedService:r,agent:i}=pa({options:{...t,canisterId:o},idlFactory:Io,certifiedIdlFactory:An}),c=t.oldListNeuronsServiceOverride??ma.createActor(Fn,{agent:i,canisterId:o});return new e(o,n,r,c,i)}listNeurons=async({certified:t=!0,neuronIds:o,includeEmptyNeurons:n,includePublicNeurons:r,neuronSubaccounts:i})=>{if(un(n)&&un(r)&&t)return this.fetchNeuronsWithOldMethodAndNoPagination({neuronIds:o});let _=await this.fetchNeuronsPage({certified:t,neuronIds:o,includeEmptyNeurons:n,includePublicNeurons:r,neuronSubaccounts:i,pageNumber:0n}),{neurons:d,totalPages:R}=_;if(R<2n)return d;let N=[];for(let g=1n;g<R;g++)N.push(this.fetchNeuronsPage({certified:t,neuronIds:o,includeEmptyNeurons:n,includePublicNeurons:r,pageNumber:g,neuronSubaccounts:i}));return[_,...await Promise.all(N)].flatMap(({neurons:g})=>g)};fetchNeuronsWithOldMethodAndNoPagination=async({neuronIds:t})=>{let o=jo({neuronIds:t}),r=await this.oldListNeuronsCertifiedService.list_neurons(o);return yn({response:r,canisterId:this.canisterId})};fetchNeuronsPage=async({certified:t,neuronIds:o,includeEmptyNeurons:n,includePublicNeurons:r,pageNumber:i,neuronSubaccounts:c})=>{let d=jo({neuronIds:o,includeEmptyNeurons:n,includePublicNeurons:r,neuronSubaccounts:c,pageNumber:i,pageSize:500n}),N=await this.getGovernanceService(t).list_neurons(d),u=yn({response:N,canisterId:this.canisterId}),w=q(N.total_pages_available)??1n;return{neurons:u,totalPages:w}};listKnownNeurons=async(t=!0)=>(await this.getGovernanceService(t).list_known_neurons()).known_neurons.map(n=>{let r=q(n.known_neuron_data);return{id:q(n.id)?.id??BigInt(0),name:r?.name??"",description:q(r?.description??[]),links:q(r?.links??[]),committed_topics:q(r?.committed_topics??[])}});getLatestRewardEvent=(t=!0)=>this.getGovernanceService(t).get_latest_reward_event();listProposals=async({request:t,certified:o=!0})=>{let n=Zn(t),r=await this.getGovernanceService(o).list_proposals(n);return Cr(r)};stakeNeuron=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:i,fee:c})=>{if(t<Fr)throw new $o(t);let _=crypto.getRandomValues(new Uint8Array(8)),d=la(_),R=Er({controller:o,memo:d,governanceCanisterId:this.canisterId});await r.transfer({memo:d,amount:t,fromSubAccount:n,to:R,createdAt:i,fee:c});let N=await this.claimOrRefreshNeuronFromAccount({controller:o,memo:d});if(un(N))throw new Qo;return N};increaseDissolveDelay=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{let n=pr({neuronId:t,additionalDissolveDelaySeconds:o});await S({request:n,service:this.certifiedService})};setDissolveDelay=async({neuronId:t,dissolveDelaySeconds:o})=>{let n=lr({neuronId:t,dissolveDelaySeconds:o});await S({request:n,service:this.certifiedService})};startDissolving=async t=>{let o=Rr(t);await S({request:o,service:this.certifiedService})};stopDissolving=async t=>{let o=gr(t);await S({request:o,service:this.certifiedService})};joinCommunityFund=async t=>{let o=mr(t);await S({request:o,service:this.certifiedService})};autoStakeMaturity=async t=>{await S({request:Nr(t),service:this.certifiedService})};leaveCommunityFund=async t=>{let o=Or(t);await S({request:o,service:this.certifiedService})};setVisibility=async(t,o)=>{let n=fr({neuronId:t,visibility:o});await S({request:n,service:this.certifiedService})};setNodeProviderAccount=async t=>{Gr(t);let o=Br.fromHex(t),n=await this.certifiedService.update_node_provider({reward_account:[o.toAccountIdentifierHash()]});if("Err"in n)throw new Ae(n.Err)};mergeNeurons=async t=>{let o=Rn(t);await S({request:o,service:this.certifiedService})};simulateMergeNeurons=async t=>{let o=Rn(t),n=await Ar({request:o,service:this.certifiedService}),r,i,c,_;if("Merge"in n&&ge(r=n.Merge)&&ge(i=q(r.target_neuron_info))&&ge(c=q(r.target_neuron))&&ge(_=q(c.id)?.id))return gn({neuronId:_,neuronInfo:i,rawNeuron:c,canisterId:this.canisterId});throw new Le(`simulateMergeNeurons: Unrecognized Merge error in ${JSON.stringify(n)}`)};splitNeuron=async({neuronId:t,amount:o,memo:n})=>{let r=Ln({neuronId:t,amount:o,memo:n}),i=await this.certifiedService.manage_neuron(r),c=Xo(i);if("Split"in c){let _=q(c.Split.created_neuron_id);if(un(_))throw new Ae({error_message:"Unexpected error splitting neuron. No neuronId in Split response.",error_type:0});return _.id}throw new Le(`Unrecognized Split error in ${JSON.stringify(i)}`)};getProposal=async({proposalId:t,certified:o=!0})=>{let[n]=await this.getGovernanceService(o).get_proposal_info(t);return n?wn(n):void 0};makeProposal=async t=>{let o=tr(t),n=await S({request:o,service:this.certifiedService});return"MakeProposal"in n?q(n.MakeProposal.proposal_id)?.id:void 0};registerVote=async({neuronId:t,vote:o,proposalId:n})=>{let r=er({neuronId:t,vote:o,proposalId:n});await S({request:r,service:this.certifiedService})};setFollowees=async t=>{let o=or(t);await S({request:o,service:this.certifiedService})};disburse=async({neuronId:t,toAccountId:o,amount:n})=>{ge(o)&&Gr(o);let r=ge(o)?Br.fromHex(o):void 0,i=nr({neuronId:t,toAccountIdentifier:r,amount:n});await S({request:i,service:this.certifiedService})};refreshVotingPower=async({neuronId:t})=>{let o=ar({neuronId:t});await S({request:o,service:this.certifiedService})};mergeMaturity=async({neuronId:t,percentageToMerge:o})=>{bn(o);let n=ir({neuronId:t,percentageToMerge:o});await S({request:n,service:this.certifiedService})};stakeMaturity=async({neuronId:t,percentageToStake:o})=>{bn(o??100),await S({request:cr({neuronId:t,percentageToStake:o}),service:this.certifiedService})};spawnNeuron=async({neuronId:t,percentageToSpawn:o,newController:n,nonce:r})=>{ge(o)&&bn(o);let i=_r({neuronId:t,percentageToSpawn:o,newController:n,nonce:r}),c=await this.certifiedService.manage_neuron(i),_=Xo(c),d;if("Spawn"in _&&ge(d=q(_.Spawn.created_neuron_id)?.id))return d;throw new Le(`Unrecognized Spawn error in ${JSON.stringify(c)}`)};addHotkey=async({neuronId:t,principal:o})=>{let n=dr({neuronId:t,principal:o});await S({request:n,service:this.certifiedService})};removeHotkey=async({neuronId:t,principal:o})=>{let n=ur({neuronId:t,principal:o});await S({request:n,service:this.certifiedService})};claimOrRefreshNeuronFromAccount=async({memo:t,controller:o})=>{let n=Dn({memo:t,controller:o}),r=await this.certifiedService.manage_neuron(n),i;if(ge(i=q(r.command))&&"ClaimOrRefresh"in i)return q(i.ClaimOrRefresh.refreshed_neuron_id)?.id;throw new Le(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(r)}`)};claimOrRefreshNeuron=async t=>{let o=In(t),n=await this.service.manage_neuron(o),r;if(ge(r=q(n.command))&&"ClaimOrRefresh"in r)return q(r.ClaimOrRefresh.refreshed_neuron_id)?.id;throw new Le(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(n)}`)};getGovernanceService(t){return t?this.certifiedService:this.service}getNeuron=async({certified:t=!0,neuronId:o})=>{let[n]=await this.listNeurons({certified:t,neuronIds:[o]});return n};getNetworkEconomicsParameters=async({certified:t=!0})=>{let o=await this.getGovernanceService(t).get_network_economics_parameters();return vn(o)};disburseMaturity=async({neuronId:t,percentageToDisburse:o,toAccountIdentifier:n,toAccount:r})=>{let i=rr({neuronId:t,percentageToDisburse:o,toAccountIdentifier:n,toAccount:r});await S({request:i,service:this.certifiedService})};setFollowing=async({neuronId:t,topicFollowing:o})=>{let n=sr({neuronId:t,topicFollowing:o});await S({request:n,service:this.certifiedService})};getMetrics=async({certified:t=!0})=>{let o=await this.getGovernanceService(t).get_metrics();if("Err"in o)throw new Ae(o.Err);return Tr(o.Ok)}};import{assertNonNullish as Na,createServices as Oa}from"@dfinity/utils";var Ur=({IDL:e})=>{let t=e.Rec(),o=e.Rec(),n=e.Record({id:e.Nat64}),r=e.Record({followees:e.Vec(n)}),i=e.Record({day:e.Nat32,month:e.Nat32,year:e.Nat32}),c=e.Record({hash:e.Vec(e.Nat8)}),_=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(c)}),d=e.Record({dissolve_delay_seconds:e.Nat64}),R=e.Record({to_account:e.Opt(c)}),N=e.Variant({RewardToNeuron:d,RewardToAccount:R}),u=e.Record({node_provider:e.Opt(_),reward_mode:e.Opt(N),amount_e8s:e.Nat64}),w=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),g=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),end_date:e.Opt(i),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(_),start_date:e.Opt(i),timestamp:e.Nat64,rewards:e.Vec(u),xdr_conversion_rate:e.Opt(w),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),h=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),deciding_voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),total_potential_voting_power:e.Opt(e.Nat64),total_deciding_voting_power:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),potential_voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),F=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,fully_lost_voting_power_neuron_subset_metrics:e.Opt(h),not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),spawning_neurons_count:e.Nat64,declining_voting_power_neuron_subset_metrics:e.Opt(h),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(h),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),public_neuron_subset_metrics:e.Opt(h),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),ve=e.Record({start_reducing_voting_power_after_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),clear_following_after_seconds:e.Opt(e.Nat64)}),b=e.Record({basis_points:e.Opt(e.Nat64)}),V=e.Record({human_readable:e.Opt(e.Text)}),l=e.Record({contribution_threshold_xdr:e.Opt(V),one_third_participation_milestone_xdr:e.Opt(V),full_participation_milestone_xdr:e.Opt(V)}),we=e.Record({maximum_icp_xdr_rate:e.Opt(b),neurons_fund_matched_funding_curve_coefficients:e.Opt(l),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(V),minimum_icp_xdr_rate:e.Opt(b)}),P=e.Record({neuron_minimum_stake_e8s:e.Nat64,voting_power_economics:e.Opt(ve),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(we)}),ye=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),X=e.Record({groups:e.Vec(ye),timestamp_seconds:e.Opt(e.Nat64)}),m=e.Record({id:e.Nat64}),H=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(m)}),J=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}),p=e.Record({error_message:e.Text,error_type:e.Int32}),Q=e.Record({vote:e.Int32,voting_power:e.Nat64}),be=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)}),x=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Vec(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(n),amount_icp_e8s:e.Opt(e.Nat64)}),E=e.Record({neurons_fund_neuron_portions:e.Vec(x)}),he=e.Record({serialized_representation:e.Opt(e.Text)}),T=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(be),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(E),ideal_matched_participation_function:e.Opt(he),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Se=e.Record({final_neurons_fund_participation:e.Opt(T),initial_neurons_fund_participation:e.Opt(T),neurons_fund_refunds:e.Opt(E)}),xe=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(xe),canister_id:e.Opt(e.Principal)}),ke=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)}),$=e.Record({swap_background_information:e.Opt(ke)}),Y=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Ve=e.Variant({Kyc:e.Null,ServiceNervousSystemManagement:e.Null,ApiBoundaryNodeManagement:e.Null,ApplicationCanisterManagement:e.Null,SubnetRental:e.Null,NeuronManagement:e.Null,NodeProviderRewards:e.Null,SubnetManagement:e.Null,ExchangeRate:e.Null,CatchAll:e.Null,NodeAdmin:e.Null,IcOsVersionElection:e.Null,ProtocolCanisterManagement:e.Null,NetworkEconomics:e.Null,IcOsVersionDeployment:e.Null,ParticipantManagement:e.Null,Governance:e.Null,SnsAndCommunityFund:e.Null}),B=e.Record({name:e.Text,committed_topics:e.Opt(e.Vec(e.Opt(Ve))),description:e.Opt(e.Text),links:e.Opt(e.Vec(e.Text))}),G=e.Record({id:e.Opt(n),known_neuron_data:e.Opt(B)}),Z=e.Record({user:e.Opt(e.Principal),replica_version_id:e.Opt(e.Text),node_ids:e.Opt(e.Vec(e.Principal))}),I=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),U=e.Record({memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),D=e.Record({topic:e.Int32,followees:e.Vec(n)}),L=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),ee=e.Record({to_account_identifier:e.Opt(c),to_account:e.Opt(L),percentage_to_disburse:e.Nat32}),te=e.Record({}),oe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Pe=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:oe,Memo:e.Nat64}),K=e.Record({by:e.Opt(Pe)}),Te=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),Ce=e.Record({new_hot_key:e.Opt(e.Principal)}),Me=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),a=e.Record({additional_dissolve_delay_seconds:e.Nat32}),st=e.Record({visibility:e.Opt(e.Int32)}),at=e.Record({dissolve_timestamp_seconds:e.Nat64}),it=e.Variant({RemoveHotKey:Te,AddHotKey:Ce,ChangeAutoStakeMaturity:Me,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:a,SetVisibility:st,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:at}),se=e.Record({operation:e.Opt(it)}),Ee=e.Record({vote:e.Int32,proposal:e.Opt(m)}),ae=e.Record({source_neuron_id:e.Opt(n)}),ie=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),ct=e.Record({topic:e.Opt(e.Int32),followees:e.Opt(e.Vec(n))}),Be=e.Record({topic_following:e.Opt(e.Vec(ct))}),Ge=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),ce=e.Record({percentage_to_merge:e.Nat32}),_t=e.Record({e8s:e.Nat64}),_e=e.Record({to_account:e.Opt(c),amount:e.Opt(_t)}),dt=e.Variant({Spawn:I,Split:U,Follow:D,DisburseMaturity:ee,RefreshVotingPower:te,ClaimOrRefresh:K,Configure:se,RegisterVote:Ee,Merge:ae,DisburseToNeuron:ie,SetFollowing:Be,MakeProposal:o,StakeMaturity:Ge,MergeMaturity:ce,Disburse:_e}),W=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),ut=e.Record({id:e.Opt(n),command:e.Opt(dt),neuron_id_or_subaccount:e.Opt(W)}),pt=e.Record({controllers:e.Vec(e.Principal)}),lt=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),controllers:e.Opt(pt),log_visibility:e.Opt(e.Int32),wasm_memory_limit:e.Opt(e.Nat64),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),Ue=e.Record({canister_id:e.Opt(e.Principal),settings:e.Opt(lt)}),mt=e.Record({skip_stopping_before_installing:e.Opt(e.Bool),wasm_module_hash:e.Opt(e.Vec(e.Nat8)),canister_id:e.Opt(e.Principal),arg_hash:e.Opt(e.Vec(e.Nat8)),install_mode:e.Opt(e.Int32)}),Ke=e.Record({id:e.Opt(n)}),He=e.Record({action:e.Opt(e.Int32),canister_id:e.Opt(e.Principal)}),v=e.Record({seconds:e.Opt(e.Nat64)}),O=e.Record({e8s:e.Opt(e.Nat64)}),Nt=e.Record({reward_rate_transition_duration:e.Opt(v),initial_reward_rate:e.Opt(b),final_reward_rate:e.Opt(b)}),Ot=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(b),neuron_maximum_age_for_age_bonus:e.Opt(v),neuron_maximum_dissolve_delay:e.Opt(v),neuron_minimum_dissolve_delay_to_vote:e.Opt(v),neuron_maximum_age_bonus:e.Opt(b),neuron_minimum_stake:e.Opt(O),proposal_wait_for_quiet_deadline_increase:e.Opt(v),proposal_initial_voting_period:e.Opt(v),proposal_rejection_fee:e.Opt(O),voting_reward_parameters:e.Opt(Nt)}),We=e.Record({base64_encoding:e.Opt(e.Text)}),ft=e.Record({transaction_fee:e.Opt(O),token_symbol:e.Opt(e.Text),token_logo:e.Opt(We),token_name:e.Opt(e.Text)}),Rt=e.Record({id:e.Opt(e.Principal)}),gt=e.Record({dissolve_delay_interval:e.Opt(v),count:e.Opt(e.Nat64)}),vt=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),wt=e.Record({iso_codes:e.Vec(e.Text)}),yt=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(v),neuron_basket_construction_parameters:e.Opt(gt),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(O),minimum_icp:e.Opt(O),minimum_direct_participation_icp:e.Opt(O),minimum_participant_icp:e.Opt(O),start_time:e.Opt(vt),maximum_direct_participation_icp:e.Opt(O),maximum_icp:e.Opt(O),neurons_fund_investment_icp:e.Opt(O),restricted_countries:e.Opt(wt)}),je=e.Record({total:e.Opt(O)}),bt=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(v),memo:e.Opt(e.Nat64),vesting_period:e.Opt(v),stake:e.Opt(O)}),ht=e.Record({developer_neurons:e.Vec(bt)}),St=e.Record({treasury_distribution:e.Opt(je),developer_distribution:e.Opt(ht),swap_distribution:e.Opt(je)}),ze=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(Ot),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(We),name:e.Opt(e.Text),ledger_parameters:e.Opt(ft),description:e.Opt(e.Text),dapp_canisters:e.Vec(Rt),swap_parameters:e.Opt(yt),initial_token_distribution:e.Opt(St)}),Xe=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),xt=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),kt=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(xt),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)}),Vt=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(kt)}),Pt=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),Tt=e.Record({open_time_window:e.Opt(Pt)}),Ct=e.Record({request:e.Opt(Tt),swap_canister_id:e.Opt(e.Principal)}),Mt=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),Je=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(u)}),de=e.Record({principals:e.Vec(e.Principal)}),At=e.Variant({ToRemove:_,ToAdd:_}),Qe=e.Record({change:e.Opt(At)}),$e=e.Record({motion_text:e.Text}),Ft=e.Variant({RegisterKnownNeuron:G,FulfillSubnetRentalRequest:Z,ManageNeuron:ut,UpdateCanisterSettings:Ue,InstallCode:mt,DeregisterKnownNeuron:Ke,StopOrStartCanister:He,CreateServiceNervousSystem:ze,ExecuteNnsFunction:Xe,RewardNodeProvider:u,OpenSnsTokenSwap:Vt,SetSnsTokenSwapOpenTimeWindow:Ct,SetDefaultFollowees:Mt,RewardNodeProviders:Je,ManageNetworkEconomics:P,ApproveGenesisKyc:de,AddOrRemoveNodeProvider:Qe,Motion:$e});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Ft),summary:e.Text}));let qt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Et=e.Record({id:e.Opt(m),topic:e.Opt(e.Int32),failure_reason:e.Opt(p),ballots:e.Vec(e.Tuple(e.Nat64,Q)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Se),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt($),latest_tally:e.Opt(Y),total_potential_voting_power:e.Opt(e.Nat64),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),wait_for_quiet_state:e.Opt(qt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Bt=e.Variant({Spawn:n,Split:U,Configure:se,Merge:ae,DisburseToNeuron:ie,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:K,MergeMaturity:ce,Disburse:_e}),Gt=e.Record({command:e.Opt(Bt),timestamp:e.Nat64}),Ye=e.Record({vote:e.Int32,proposal_id:e.Opt(m)}),Ut=e.Record({account_identifier_to_disburse_to:e.Opt(c),timestamp_of_disbursement_seconds:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account_to_disburse_to:e.Opt(L),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),Kt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),C=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Ye),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),kyc_verified:e.Bool,potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,deciding_voting_power:e.Opt(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),maturity_disbursements_in_progress:e.Opt(e.Vec(Ut)),dissolve_state:e.Opt(Kt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(J),known_neuron_data:e.Opt(B),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),kn=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),most_recent_monthly_node_provider_rewards:e.Opt(g),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(F),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(_),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(P),restore_aging_summary:e.Opt(X),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(H),to_claim_transfers:e.Vec(J),short_voting_period_seconds:e.Nat64,proposals:e.Vec(e.Tuple(e.Nat64,Et)),xdr_conversion_rate:e.Opt(w),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Gt)),neurons:e.Vec(e.Tuple(e.Nat64,C)),genesis_timestamp_seconds:e.Nat64}),j=e.Variant({Ok:e.Null,Err:p}),Ht=e.Variant({Error:p,NeuronId:n}),Wt=e.Record({result:e.Opt(Ht)}),Ze=e.Variant({Ok:C,Err:p}),jt=e.Variant({Ok:F,Err:p}),zt=e.Variant({Ok:g,Err:p}),Xt=e.Record({page_size:e.Opt(e.Nat32),exclusive_start_neuron_id:e.Opt(n)}),A=e.Record({id:e.Opt(n),dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Ye),voting_power_refreshed_timestamp_seconds:e.Opt(e.Nat64),potential_voting_power:e.Opt(e.Nat64),neuron_type:e.Opt(e.Int32),deciding_voting_power:e.Opt(e.Nat64),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,visibility:e.Opt(e.Int32),known_neuron_data:e.Opt(B),voting_power:e.Nat64,age_seconds:e.Nat64}),Jt=e.Record({neurons:e.Vec(A)}),Qt=e.Variant({Ok:Jt,Err:p}),Ie=e.Variant({Ok:A,Err:p}),$t=e.Record({nns_proposal_id:e.Opt(m)}),Yt=e.Record({final_neurons_fund_participation:e.Opt(T),initial_neurons_fund_participation:e.Opt(T),neurons_fund_refunds:e.Opt(E)}),Zt=e.Record({neurons_fund_audit_info:e.Opt(Yt)}),It=e.Variant({Ok:Zt,Err:p}),Dt=e.Record({result:e.Opt(It)}),Lt=e.Variant({Ok:_,Err:p}),ue=e.Record({id:e.Opt(m),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(p),ballots:e.Vec(e.Tuple(e.Nat64,Q)),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($),latest_tally:e.Opt(Y),total_potential_voting_power:e.Opt(e.Nat64),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),eo=e.Record({known_neurons:e.Vec(G)}),to=e.Record({before_proposal:e.Opt(m),limit:e.Opt(e.Nat64),neuron_id:e.Opt(n)}),oo=e.Variant({No:e.Null,Yes:e.Null,Unspecified:e.Null}),no=e.Record({vote:e.Opt(oo),proposal_id:e.Opt(m)}),ro=e.Variant({Ok:e.Record({votes:e.Opt(e.Vec(no)),all_finalized_before_proposal:e.Opt(m)}),Err:p}),so=e.Record({subaccount:e.Vec(e.Nat8)}),ao=e.Record({page_size:e.Opt(e.Nat64),include_public_neurons_in_full_neurons:e.Opt(e.Bool),neuron_ids:e.Vec(e.Nat64),page_number:e.Opt(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),neuron_subaccounts:e.Opt(e.Vec(so)),include_neurons_readable_by_caller:e.Bool}),io=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,A)),full_neurons:e.Vec(C),total_pages_available:e.Opt(e.Nat64)}),co=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),_o=e.Record({date_filter:e.Opt(co)}),uo=e.Record({rewards:e.Vec(g)}),po=e.Record({node_providers:e.Vec(_)}),lo=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(m),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),mo=e.Record({proposal_info:e.Vec(ue)}),No=e.Record({arg:e.Opt(e.Vec(e.Nat8)),wasm_module:e.Opt(e.Vec(e.Nat8)),skip_stopping_before_installing:e.Opt(e.Bool),canister_id:e.Opt(e.Principal),install_mode:e.Opt(e.Int32)}),Oo=e.Variant({RegisterKnownNeuron:G,FulfillSubnetRentalRequest:Z,ManageNeuron:t,UpdateCanisterSettings:Ue,InstallCode:No,DeregisterKnownNeuron:Ke,StopOrStartCanister:He,CreateServiceNervousSystem:ze,ExecuteNnsFunction:Xe,RewardNodeProvider:u,RewardNodeProviders:Je,ManageNetworkEconomics:P,ApproveGenesisKyc:de,AddOrRemoveNodeProvider:Qe,Motion:$e}),fo=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Oo),summary:e.Text}),Ro=e.Variant({Spawn:I,Split:U,Follow:D,DisburseMaturity:ee,RefreshVotingPower:te,ClaimOrRefresh:K,Configure:se,RegisterVote:Ee,Merge:ae,DisburseToNeuron:ie,SetFollowing:Be,MakeProposal:fo,StakeMaturity:Ge,MergeMaturity:ce,Disburse:_e});t.fill(e.Record({id:e.Opt(n),command:e.Opt(Ro),neuron_id_or_subaccount:e.Opt(W)}));let pe=e.Record({created_neuron_id:e.Opt(n)}),go=e.Record({amount_disbursed_e8s:e.Opt(e.Nat64)}),vo=e.Record({}),wo=e.Record({refreshed_neuron_id:e.Opt(n)}),yo=e.Record({target_neuron:e.Opt(C),source_neuron:e.Opt(C),target_neuron_info:e.Opt(A),source_neuron_info:e.Opt(A)}),bo=e.Record({}),ho=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(m)}),So=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),xo=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ko=e.Record({transfer_block_height:e.Nat64}),Vo=e.Variant({Error:p,Spawn:pe,Split:pe,Follow:e.Record({}),DisburseMaturity:go,RefreshVotingPower:vo,ClaimOrRefresh:wo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:yo,DisburseToNeuron:pe,SetFollowing:bo,MakeProposal:ho,StakeMaturity:So,MergeMaturity:xo,Disburse:ko}),De=e.Record({command:e.Opt(Vo)}),Po=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)}),To=e.Variant({Committed:Po,Aborted:e.Record({})}),Co=e.Record({result:e.Opt(To),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Mo=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)}),Ao=e.Variant({Committed:Mo,Aborted:e.Record({})}),Fo=e.Record({result:e.Opt(Ao),nns_proposal_id:e.Opt(e.Nat64)}),qo=e.Record({controller:e.Opt(e.Principal),hotkeys:e.Opt(de),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(qo)}),Bo=e.Variant({Ok:Eo,Err:p}),Go=e.Record({result:e.Opt(Bo)}),Uo=e.Record({reward_account:e.Opt(c)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[j],[]),claim_or_refresh_neuron_from_account:e.Func([oe],[Wt],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Ze],[]),get_full_neuron_by_id_or_subaccount:e.Func([W],[Ze],[]),get_latest_reward_event:e.Func([],[H],[]),get_metrics:e.Func([],[jt],[]),get_monthly_node_provider_rewards:e.Func([],[zt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(g)],[]),get_network_economics_parameters:e.Func([],[P],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_index:e.Func([Xt],[Qt],[]),get_neuron_info:e.Func([e.Nat64],[Ie],[]),get_neuron_info_by_id_or_subaccount:e.Func([W],[Ie],[]),get_neurons_fund_audit_info:e.Func([$t],[Dt],[]),get_node_provider_by_caller:e.Func([e.Null],[Lt],[]),get_pending_proposals:e.Func([],[e.Vec(ue)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(ue)],[]),get_restore_aging_summary:e.Func([],[X],[]),list_known_neurons:e.Func([],[eo],[]),list_neuron_votes:e.Func([to],[ro],[]),list_neurons:e.Func([ao],[io],[]),list_node_provider_rewards:e.Func([_o],[uo],[]),list_node_providers:e.Func([],[po],[]),list_proposals:e.Func([lo],[mo],[]),manage_neuron:e.Func([t],[De],[]),settle_community_fund_participation:e.Func([Co],[j],[]),settle_neurons_fund_participation:e.Func([Fo],[Go],[]),simulate_manage_neuron:e.Func([t],[De],[]),transfer_gtc_neuron:e.Func([n,n],[j],[]),update_neuron:e.Func([C],[e.Opt(p)],[]),update_node_provider:e.Func([Uo],[j],[])})};var Sn=class e{constructor(t,o){this.canisterId=t;this.certifiedService=o;this.canisterId=t,this.certifiedService=o}static create(t={}){let o=t.canisterId??Zo,{certifiedService:n}=Oa({options:{...t,canisterId:o},idlFactory:Io,certifiedIdlFactory:Ur});return new e(o,n)}async updateNeuron(t){Na(t.id);let o=jo({neuronIds:[t.id]}),n=await this.certifiedService.list_neurons(o),[r]=n.full_neurons;if(nn(this.canisterId,Uint8Array.from(r.account))!==t.accountIdentifier)throw new Error("Neuron account identifier can't be changed");let c=Sr({neuron:t,account:Uint8Array.from(r.account)});return this.certifiedService.update_neuron(c)}};import{createServices as fa}from"@dfinity/utils";var Kr=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),proposal_id:e.Opt(e.Nat64),canister_type:e.Int32}),n=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(o),skip_update_latest_version:e.Opt(e.Bool)}),r=e.Record({message:e.Text}),i=e.Variant({Error:r,Hash:e.Vec(e.Nat8)}),c=e.Record({result:e.Opt(i)}),_=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)}),N=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),u=e.Record({serialized_representation:e.Opt(e.Text)}),w=e.Record({coefficient_intervals:e.Vec(N),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(u)}),g=e.Record({total_e8s:e.Nat64}),h=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)}),F=e.Record({developer_neurons:e.Vec(h)}),ve=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),b=e.Record({treasury_distribution:e.Opt(g),developer_distribution:e.Opt(F),swap_distribution:e.Opt(ve)}),V=e.Variant({FractionalDeveloperVotingPower:b}),l=e.Record({iso_codes:e.Vec(e.Text)}),we=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(w),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(V),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(l),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),P=e.Record({sns_init_payload:e.Opt(we)}),ye=e.Record({restored_dapp_canisters:e.Vec(d),nns_controlled_dapp_canisters:e.Vec(d),sns_controlled_dapp_canisters:e.Vec(d)}),X=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)}),m=e.Record({dapp_canisters_transfer_result:e.Opt(ye),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(X)}),H=e.Record({allowed_principals:e.Vec(e.Principal)}),J=e.Record({proposal_id:e.Nat64}),p=e.Record({root_canister_id:e.Opt(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),Q=e.Variant({Error:r,DeployedSns:p}),be=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(Q)}),x=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)}),E=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(x)}),he=e.Record({next_version:e.Opt(x)}),T=e.Record({hash:e.Vec(e.Nat8)}),Se=e.Record({proposal_id:e.Opt(e.Nat64)}),xe=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),y=e.Record({hash:e.Vec(e.Nat8)}),ke=e.Record({wasm:e.Opt(o)}),$=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),Y=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),Ve=e.Record({sections:e.Vec(Y)}),B=e.Variant({Ok:Ve,Error:r}),G=e.Record({result:e.Opt(B)}),Z=e.Record({next_version:e.Opt(x),current_version:e.Opt(x)}),I=e.Record({upgrade_path:e.Vec(Z),sns_governance_canister_id:e.Opt(e.Principal)}),U=e.Record({error:e.Opt(r)}),D=e.Record({instances:e.Vec(p)}),L=e.Record({limit:e.Nat32,starting_at:e.Opt(x),sns_governance_canister_id:e.Opt(e.Principal)}),ee=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}),te=e.Record({pretty_version:e.Opt(ee),version:e.Opt(x)}),oe=e.Record({steps:e.Vec(te)}),Pe=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),K=e.Variant({Error:r,AllowedPrincipals:H}),Te=e.Record({update_allowed_principals_result:e.Opt(K)}),Ce=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),Me=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([P],[m],[]),get_allowed_principals:e.Func([e.Record({})],[H],[]),get_deployed_sns_by_proposal_id:e.Func([J],[be],[]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],[]),get_next_sns_version:e.Func([E],[he],[]),get_proposal_id_that_added_wasm:e.Func([T],[Se],[]),get_sns_subnet_ids:e.Func([e.Record({})],[xe],[]),get_wasm:e.Func([y],[ke],[]),get_wasm_metadata:e.Func([$],[G],[]),insert_upgrade_path_entries:e.Func([I],[U],[]),list_deployed_snses:e.Func([e.Record({})],[D],[]),list_upgrade_steps:e.Func([L],[oe],[]),update_allowed_principals:e.Func([Pe],[Te],[]),update_sns_subnet_list:e.Func([Ce],[Me],[])})};var Hr=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),proposal_id:e.Opt(e.Nat64),canister_type:e.Int32}),n=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(o),skip_update_latest_version:e.Opt(e.Bool)}),r=e.Record({message:e.Text}),i=e.Variant({Error:r,Hash:e.Vec(e.Nat8)}),c=e.Record({result:e.Opt(i)}),_=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)}),N=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),u=e.Record({serialized_representation:e.Opt(e.Text)}),w=e.Record({coefficient_intervals:e.Vec(N),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(u)}),g=e.Record({total_e8s:e.Nat64}),h=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)}),F=e.Record({developer_neurons:e.Vec(h)}),ve=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),b=e.Record({treasury_distribution:e.Opt(g),developer_distribution:e.Opt(F),swap_distribution:e.Opt(ve)}),V=e.Variant({FractionalDeveloperVotingPower:b}),l=e.Record({iso_codes:e.Vec(e.Text)}),we=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(w),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(V),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(l),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),P=e.Record({sns_init_payload:e.Opt(we)}),ye=e.Record({restored_dapp_canisters:e.Vec(d),nns_controlled_dapp_canisters:e.Vec(d),sns_controlled_dapp_canisters:e.Vec(d)}),X=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)}),m=e.Record({dapp_canisters_transfer_result:e.Opt(ye),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(X)}),H=e.Record({allowed_principals:e.Vec(e.Principal)}),J=e.Record({proposal_id:e.Nat64}),p=e.Record({root_canister_id:e.Opt(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),Q=e.Variant({Error:r,DeployedSns:p}),be=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(Q)}),x=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)}),E=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(x)}),he=e.Record({next_version:e.Opt(x)}),T=e.Record({hash:e.Vec(e.Nat8)}),Se=e.Record({proposal_id:e.Opt(e.Nat64)}),xe=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),y=e.Record({hash:e.Vec(e.Nat8)}),ke=e.Record({wasm:e.Opt(o)}),$=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),Y=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),Ve=e.Record({sections:e.Vec(Y)}),B=e.Variant({Ok:Ve,Error:r}),G=e.Record({result:e.Opt(B)}),Z=e.Record({next_version:e.Opt(x),current_version:e.Opt(x)}),I=e.Record({upgrade_path:e.Vec(Z),sns_governance_canister_id:e.Opt(e.Principal)}),U=e.Record({error:e.Opt(r)}),D=e.Record({instances:e.Vec(p)}),L=e.Record({limit:e.Nat32,starting_at:e.Opt(x),sns_governance_canister_id:e.Opt(e.Principal)}),ee=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}),te=e.Record({pretty_version:e.Opt(ee),version:e.Opt(x)}),oe=e.Record({steps:e.Vec(te)}),Pe=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),K=e.Variant({Error:r,AllowedPrincipals:H}),Te=e.Record({update_allowed_principals_result:e.Opt(K)}),Ce=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),Me=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([P],[m],[]),get_allowed_principals:e.Func([e.Record({})],[H],["query"]),get_deployed_sns_by_proposal_id:e.Func([J],[be],["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([E],[he],["query"]),get_proposal_id_that_added_wasm:e.Func([T],[Se],["query"]),get_sns_subnet_ids:e.Func([e.Record({})],[xe],["query"]),get_wasm:e.Func([y],[ke],["query"]),get_wasm_metadata:e.Func([$],[G],["query"]),insert_upgrade_path_entries:e.Func([I],[U],[]),list_deployed_snses:e.Func([e.Record({})],[D],["query"]),list_upgrade_steps:e.Func([L],[oe],["query"]),update_allowed_principals:e.Func([Pe],[Te],[]),update_sns_subnet_list:e.Func([Ce],[Me],[])})};var xn=class e{constructor(t,o){this.service=t;this.certifiedService=o}static create(t={}){let{service:o,certifiedService:n}=fa({options:{...t,canisterId:t.canisterId??Mn},idlFactory:Hr,certifiedIdlFactory:Kr});return new e(o,n)}listSnses=async({certified:t=!0})=>{let o=t?this.certifiedService:this.service,{instances:n}=await o.list_deployed_snses({});return n}};export{Yr as CanisterAction,Ir as CanisterInstallMode,Qo as CouldNotClaimNeuronError,pn as GenesisTokenCanister,hn as GovernanceCanister,Ae as GovernanceError,Sn as GovernanceTestCanister,$o as InsufficientAmountError,$r as LogVisibility,Wr as NeuronState,Qr as NeuronType,Zr as NeuronVisibility,Jr as NnsFunction,zr as ProposalRewardStatus,Xr as ProposalStatus,xn as SnsWasmCanister,Jo as StakeNeuronError,jr as Topic,Le as UnrecognizedTypeError,M as UnsupportedValueError,Vn as Vote,Wn as accountIdentifierFromBytes,Hn as accountIdentifierToBytes,da as ineligibleNeurons,Er as memoToNeuronAccountIdentifier,ua as memoToNeuronSubaccount,nn as principalToAccountIdentifier,_i as votableNeurons,di as votedNeurons};
3
- /*! Bundled license information:
4
-
5
- @noble/hashes/esm/utils.js:
6
- (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
7
- */
1
+ export*from"@icp-sdk/canisters/nns";import{NnsGenesisTokenCanister as r,NnsGovernanceCanister as a,NnsGovernanceTestCanister as t}from"@icp-sdk/canisters/nns";export{r as GenesisTokenCanister,a as GovernanceCanister,t as GovernanceTestCanister};
8
2
  //# sourceMappingURL=index.js.map