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