@dfinity/sns 4.0.4 → 4.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/sns_governance.did +1 -1
- package/dist/candid/sns_governance_test.did +1 -1
- package/dist/candid/sns_root.did +1 -1
- package/dist/candid/sns_swap.did +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/index.cjs.js.map +3 -3
- package/dist/esm/{chunk-DUPJUSOJ.js → chunk-4OISOQSJ.js} +2 -2
- package/dist/esm/chunk-BJBCLIED.js +2 -0
- package/dist/esm/{chunk-H7THR6IO.js.map → chunk-BJBCLIED.js.map} +3 -3
- package/dist/esm/governance.canister.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/sns.js +1 -1
- package/dist/types/types/actions.d.ts +81 -0
- package/package.json +1 -1
- package/dist/esm/chunk-H7THR6IO.js +0 -2
- /package/dist/esm/{chunk-DUPJUSOJ.js.map → chunk-4OISOQSJ.js.map} +0 -0
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var Ts=Object.defineProperty;var ho=Object.getOwnPropertyDescriptor;var vo=Object.getOwnPropertyNames;var xo=Object.prototype.hasOwnProperty;var So=(e,t)=>{for(var o in t)Ts(e,o,{get:t[o],enumerable:!0})},Vo=(e,t,o,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of vo(t))!xo.call(e,n)&&n!==o&&Ts(e,n,{get:()=>t[n],enumerable:!(s=ho(t,n))||s.enumerable});return e};var wo=e=>Vo(Ts({},"__esModule",{value:!0}),e);var Qo={};So(Qo,{GetOpenTicketErrorType:()=>so,NewSaleTicketResponseErrorType:()=>oo,SnsGovernanceCanister:()=>os,SnsGovernanceError:()=>P,SnsGovernanceTestCanister:()=>ms,SnsNeuronPermissionType:()=>Is,SnsProposalDecisionStatus:()=>Ls,SnsProposalRewardStatus:()=>Ds,SnsRootCanister:()=>ns,SnsSwapCanister:()=>rs,SnsSwapGetOpenTicketError:()=>_s,SnsSwapLifecycle:()=>to,SnsSwapNewTicketError:()=>ps,SnsVote:()=>eo,SnsWrapper:()=>ls,UnsupportedMethodError:()=>cs,fromCandidAction:()=>$s,initSnsWrapper:()=>jo,neuronSubaccount:()=>Ms});module.exports=wo(Qo);var _=require("@dfinity/utils");var ss=({neuronId:{id:e},command:t})=>({subaccount:e,command:[t]}),is=({neuronId:e,operation:t})=>ss({neuronId:e,command:{Configure:{operation:[t]}}}),ks=({owner:e,subaccount:t})=>({owner:(0,_.toNullable)(e),subaccount:t===void 0?[]:(0,_.toNullable)({subaccount:t})}),As=({neuronId:e,permissions:t,principal:o})=>ss({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[o]}}}),Es=({neuronId:e,permissions:t,principal:o})=>ss({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[o]}}}),Us=({neuronId:e,memo:t,amount:o})=>ss({neuronId:e,command:{Split:{memo:t,amount_e8s:o}}}),Gs=({neuronId:e,amount:t,toAccount:o})=>ss({neuronId:e,command:{Disburse:{to_account:o===void 0?[]:(0,_.toNullable)(ks(o)),amount:t===void 0?[]:[{e8s:t}]}}}),Bs=e=>is({neuronId:e,operation:{StartDissolving:{}}}),qs=e=>is({neuronId:e,operation:{StopDissolving:{}}}),zs=({neuronId:e,percentageToStake:t})=>ss({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,_.toNullable)(t)}}}),Ws=({neuronId:e,percentageToDisburse:t,toAccount:o})=>ss({neuronId:e,command:{DisburseMaturity:{to_account:o===void 0?[]:(0,_.toNullable)(ks(o)),percentage_to_disburse:t}}}),Hs=({neuronId:e,autoStake:t})=>is({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),js=({neuronId:e,dissolveTimestampSeconds:t})=>is({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:t}}}),Qs=({neuronId:e,additionalDissolveDelaySeconds:t})=>is({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Js=({neuronId:e,functionId:t,followees:o})=>({subaccount:e.id,command:[{Follow:{function_id:t,followees:o}}]}),Ys=({neuronId:e,topicFollowing:t})=>({subaccount:e.id,command:[{SetFollowing:{topic_following:t.map(({topic:o,followees:s})=>({topic:[o],followees:s.map(({neuronId:n,alias:i})=>({neuron_id:(0,_.toNullable)(n),alias:(0,_.toNullable)(i)}))}))}}]}),Xs=({neuronId:e,proposalId:t,vote:o})=>({subaccount:e.id,command:[{RegisterVote:{vote:o,proposal:[t]}}]}),Ps=({subaccount:e,memo:t,controller:o})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[t===void 0?{NeuronId:{}}:{MemoAndController:{memo:t,controller:(0,_.toNullable)(o)}}]}}]}),Ks=({excludeType:e,beforeProposal:t,includeRewardStatus:o,includeStatus:s,limit:n,includeTopics:i})=>({exclude_type:BigUint64Array.from(e??[]),before_proposal:(0,_.toNullable)(t),include_reward_status:Int32Array.from(o??[]),include_status:Int32Array.from(s??[]),limit:n??10,include_topics:(0,_.toNullable)((i==null?void 0:i.map(a=>({topic:(0,_.toNullable)(a)})))??[])}),$s=e=>{if("ManageNervousSystemParameters"in e)return{ManageNervousSystemParameters:Eo(e.ManageNervousSystemParameters)};if("AddGenericNervousSystemFunction"in e)return{AddGenericNervousSystemFunction:ko(e.AddGenericNervousSystemFunction)};if("SetTopicsForCustomProposals"in e)return{SetTopicsForCustomProposals:e.SetTopicsForCustomProposals};if("RegisterExtension"in e)return{RegisterExtension:Uo(e.RegisterExtension)};if("RemoveGenericNervousSystemFunction"in e)return{RemoveGenericNervousSystemFunction:e.RemoveGenericNervousSystemFunction};if("UpgradeSnsToNextVersion"in e)return{UpgradeSnsToNextVersion:e.UpgradeSnsToNextVersion};if("RegisterDappCanisters"in e)return{RegisterDappCanisters:e.RegisterDappCanisters};if("TransferSnsTreasuryFunds"in e)return{TransferSnsTreasuryFunds:Fo(e.TransferSnsTreasuryFunds)};if("UpgradeSnsControlledCanister"in e)return{UpgradeSnsControlledCanister:bo(e.UpgradeSnsControlledCanister)};if("DeregisterDappCanisters"in e)return{DeregisterDappCanisters:e.DeregisterDappCanisters};if("Unspecified"in e)return{Unspecified:e.Unspecified};if("ManageSnsMetadata"in e)return{ManageSnsMetadata:Po(e.ManageSnsMetadata)};if("ExecuteGenericNervousSystemFunction"in e)return{ExecuteGenericNervousSystemFunction:e.ExecuteGenericNervousSystemFunction};if("Motion"in e)return{Motion:e.Motion};throw new Error(`Unknown action type ${JSON.stringify(e)}`)},Po=e=>({url:(0,_.fromNullable)(e.url),logo:(0,_.fromNullable)(e.logo),name:(0,_.fromNullable)(e.name),description:(0,_.fromNullable)(e.description)}),Zs=e=>{if(e!==void 0)return{wasm_module_hash:e.wasm_module_hash,store_canister_id:(0,_.fromNullable)(e.store_canister_id),chunk_hashes_list:e.chunk_hashes_list}},bo=e=>({new_canister_wasm:e.new_canister_wasm,chunked_canister_wasm:Zs((0,_.fromNullable)(e.chunked_canister_wasm)),canister_id:(0,_.fromNullable)(e.canister_id),canister_upgrade_arg:(0,_.fromNullable)(e.canister_upgrade_arg),mode:(0,_.fromNullable)(e.mode)}),Fo=e=>({from_treasury:e.from_treasury,to_principal:(0,_.fromNullable)(e.to_principal),to_subaccount:(0,_.fromNullable)(e.to_subaccount),memo:(0,_.fromNullable)(e.memo),amount_e8s:e.amount_e8s}),Co=e=>({validator_canister_id:(0,_.fromNullable)(e.validator_canister_id),target_canister_id:(0,_.fromNullable)(e.target_canister_id),validator_method_name:(0,_.fromNullable)(e.validator_method_name),target_method_name:(0,_.fromNullable)(e.target_method_name),topic:(0,_.fromNullable)(e.topic)}),Mo=e=>{if(e!==void 0){if("NativeNervousSystemFunction"in e)return{NativeNervousSystemFunction:e.NativeNervousSystemFunction};if("GenericNervousSystemFunction"in e)return{GenericNervousSystemFunction:Co(e.GenericNervousSystemFunction)};throw new Error(`Unknown FunctionType ${JSON.stringify(e)}`)}},ko=e=>({id:e.id,name:e.name,description:(0,_.fromNullable)(e.description),function_type:Mo((0,_.fromNullable)(e.function_type))}),Ao=e=>e&&{final_reward_rate_basis_points:(0,_.fromNullable)(e.final_reward_rate_basis_points),initial_reward_rate_basis_points:(0,_.fromNullable)(e.initial_reward_rate_basis_points),reward_rate_transition_duration_seconds:(0,_.fromNullable)(e.reward_rate_transition_duration_seconds),round_duration_seconds:(0,_.fromNullable)(e.round_duration_seconds)},Eo=e=>({default_followees:(0,_.fromNullable)(e.default_followees),max_dissolve_delay_seconds:(0,_.fromNullable)(e.max_dissolve_delay_seconds),max_dissolve_delay_bonus_percentage:(0,_.fromNullable)(e.max_dissolve_delay_bonus_percentage),max_followees_per_function:(0,_.fromNullable)(e.max_followees_per_function),neuron_claimer_permissions:(0,_.fromNullable)(e.neuron_claimer_permissions),neuron_minimum_stake_e8s:(0,_.fromNullable)(e.neuron_minimum_stake_e8s),max_neuron_age_for_age_bonus:(0,_.fromNullable)(e.max_neuron_age_for_age_bonus),initial_voting_period_seconds:(0,_.fromNullable)(e.initial_voting_period_seconds),neuron_minimum_dissolve_delay_to_vote_seconds:(0,_.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote_seconds),reject_cost_e8s:(0,_.fromNullable)(e.reject_cost_e8s),max_proposals_to_keep_per_action:(0,_.fromNullable)(e.max_proposals_to_keep_per_action),wait_for_quiet_deadline_increase_seconds:(0,_.fromNullable)(e.wait_for_quiet_deadline_increase_seconds),max_number_of_neurons:(0,_.fromNullable)(e.max_number_of_neurons),transaction_fee_e8s:(0,_.fromNullable)(e.transaction_fee_e8s),max_number_of_proposals_with_ballots:(0,_.fromNullable)(e.max_number_of_proposals_with_ballots),max_age_bonus_percentage:(0,_.fromNullable)(e.max_age_bonus_percentage),neuron_grantable_permissions:(0,_.fromNullable)(e.neuron_grantable_permissions),voting_rewards_parameters:Ao((0,_.fromNullable)(e.voting_rewards_parameters)),max_number_of_principals_per_neuron:(0,_.fromNullable)(e.max_number_of_principals_per_neuron),automatically_advance_target_version:(0,_.fromNullable)(e.automatically_advance_target_version)}),Uo=e=>({chunked_canister_wasm:Zs((0,_.fromNullable)(e.chunked_canister_wasm)),extension_init:(0,_.fromNullable)(e.extension_init)});var Is=(r=>(r[r.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",r[r.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",r[r.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",r[r.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",r[r.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",r[r.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",r[r.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",r[r.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",r[r.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",r[r.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",r[r.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",r))(Is||{}),Ds=(n=>(n[n.PROPOSAL_REWARD_STATUS_UNSPECIFIED=0]="PROPOSAL_REWARD_STATUS_UNSPECIFIED",n[n.PROPOSAL_REWARD_STATUS_ACCEPT_VOTES=1]="PROPOSAL_REWARD_STATUS_ACCEPT_VOTES",n[n.PROPOSAL_REWARD_STATUS_READY_TO_SETTLE=2]="PROPOSAL_REWARD_STATUS_READY_TO_SETTLE",n[n.PROPOSAL_REWARD_STATUS_SETTLED=3]="PROPOSAL_REWARD_STATUS_SETTLED",n))(Ds||{}),Ls=(a=>(a[a.PROPOSAL_DECISION_STATUS_UNSPECIFIED=0]="PROPOSAL_DECISION_STATUS_UNSPECIFIED",a[a.PROPOSAL_DECISION_STATUS_OPEN=1]="PROPOSAL_DECISION_STATUS_OPEN",a[a.PROPOSAL_DECISION_STATUS_REJECTED=2]="PROPOSAL_DECISION_STATUS_REJECTED",a[a.PROPOSAL_DECISION_STATUS_ADOPTED=3]="PROPOSAL_DECISION_STATUS_ADOPTED",a[a.PROPOSAL_DECISION_STATUS_EXECUTED=4]="PROPOSAL_DECISION_STATUS_EXECUTED",a[a.PROPOSAL_DECISION_STATUS_FAILED=5]="PROPOSAL_DECISION_STATUS_FAILED",a))(Ls||{}),eo=(s=>(s[s.Unspecified=0]="Unspecified",s[s.Yes=1]="Yes",s[s.No=2]="No",s))(eo||{});var to=(a=>(a[a.Unspecified=0]="Unspecified",a[a.Pending=1]="Pending",a[a.Open=2]="Open",a[a.Committed=3]="Committed",a[a.Aborted=4]="Aborted",a[a.Adopted=5]="Adopted",a))(to||{}),so=(s=>(s[s.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",s[s.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",s[s.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",s))(so||{}),oo=(c=>(c[c.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",c[c.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",c[c.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",c[c.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",c[c.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",c[c.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",c[c.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",c))(oo||{});var cs=class extends Error{constructor(o){super();this.methodName=o}};var P=class extends Error{};var ps=class extends Error{errorType;invalidUserAmount;existingTicket;constructor({errorType:t,invalidUserAmount:o,existingTicket:s}){super(),this.errorType=t,this.invalidUserAmount=o,this.existingTicket=s}},_s=class extends Error{constructor(o){super();this.errorType=o}};var b=require("@dfinity/utils");var no=({IDL:e})=>{let t=e.Rec(),o=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),s=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),n=e.Record({versions:e.Vec(s)}),i=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),c=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:c}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),r=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(r),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(s),new_target_version:e.Opt(s),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(s)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(s),expected_version:e.Opt(s),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(n)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(s),new_target_version:e.Opt(s)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(p)}),B=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),R=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(B),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(R),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(R),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(s)}),g=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(r),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),Re=e.Record({canister_ids:e.Vec(e.Principal)}),ge=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),oe=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),ne=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:Re,TransferSnsTreasuryFunds:ge,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:oe,MintSnsTokens:ye,AdvanceSnsTargetVersion:ne,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(g),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),$=e.Record({to_account:e.Opt(r),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(p)}),Fe=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Ce=e.Record({topic_following:e.Vec(Fe)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(r)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(r),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Ce,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(r),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Fe))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(o),cached_upgrade_steps:e.Opt(i),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(F),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(s),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,C)),target_version:e.Opt(s),genesis_timestamp_seconds:e.Nat64}),ot=e.Record({principals:e.Vec(e.Principal)}),nt=e.Record({nns_neuron_hotkeys:e.Opt(ot),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),at=e.Variant({NeuronsFund:nt,Direct:e.Record({})}),rt=e.Record({neuron_ids:e.Vec(p)}),it=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(at),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(rt),neuron_id:e.Opt(p)}),ct=e.Record({neuron_recipes:e.Vec(it)}),pt=e.Record({neuron_recipes:e.Opt(ct)}),_t=e.Record({id:e.Opt(p),status:e.Int32}),dt=e.Record({swap_neurons:e.Vec(_t)}),ut=e.Variant({Ok:dt,Err:e.Int32}),lt=e.Record({claim_swap_neurons_result:e.Opt(ut)}),mt=e.Record({maturity_modulation:e.Opt(f)}),Ot=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ze=e.Record({time_window_seconds:e.Opt(e.Nat64)}),Nt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),Rt=e.Variant({Ok:Nt,Err:g}),We=e.Record({get_metrics_result:e.Opt(Rt)}),He=e.Record({mode:e.Opt(e.Int32)}),gt=e.Record({neuron_id:e.Opt(p)}),yt=e.Variant({Error:g,Neuron:C}),je=e.Record({result:e.Opt(yt)}),Qe=e.Record({proposal_id:e.Opt(m)}),ft=e.Variant({Error:g,Proposal:T}),ht=e.Record({result:e.Opt(ft)}),vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),Je=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),xt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),St=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),Vt=e.Record({memory_metrics:e.Opt(vt),status:Je,memory_size:e.Nat,cycles:e.Nat,settings:xt,query_stats:e.Opt(St),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),wt=e.Record({deployed_version:e.Opt(s),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(s)}))}),Tt=e.Record({sns_initialization_parameters:e.Text}),Pt=e.Record({timers:e.Opt(o)}),bt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Ft=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(s),target_version:e.Opt(s),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Ct=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Mt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),kt=e.Record({neurons:e.Vec(C)}),At=e.Record({topic:e.Opt(a)}),Et=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(At)),include_status:e.Vec(e.Int32)}),Ut=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Gt=e.Record({}),Bt=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),qt=e.Variant({TreasuryManager:e.Null}),zt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Bt),description:e.Opt(e.Text),extension_type:e.Opt(qt)}),Wt=e.Record({spec:e.Opt(zt),canister_id:e.Opt(e.Principal)}),Ht=e.Record({extension_operations:e.Opt(e.Vec(Wt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),jt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Ht))}),Qt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Jt=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Ce,MakeProposal:w,StakeMaturity:Qt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Yt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Jt)}),Xt=e.Record({created_neuron_id:e.Opt(p)}),Kt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),$t=e.Record({refreshed_neuron_id:e.Opt(p)}),Zt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),It=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Dt=e.Record({transfer_block_height:e.Nat64}),Lt=e.Variant({Error:g,Split:Xt,Follow:e.Record({}),DisburseMaturity:Kt,ClaimOrRefresh:$t,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Qe,RemoveNeuronPermission:e.Record({}),StakeMaturity:Zt,MergeMaturity:It,Disburse:Dt,AddNeuronPermission:e.Record({})}),es=e.Record({command:e.Opt(Lt)}),ts=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([pt],[lt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[S],[]),get_maturity_modulation:e.Func([e.Record({})],[mt],[]),get_metadata:e.Func([e.Record({})],[Ot],[]),get_metrics:e.Func([ze],[We],[]),get_metrics_replicated:e.Func([ze],[We],[]),get_mode:e.Func([e.Record({})],[He],[]),get_nervous_system_parameters:e.Func([e.Null],[h],[]),get_neuron:e.Func([gt],[je],[]),get_proposal:e.Func([Qe],[ht],[]),get_root_canister_status:e.Func([e.Null],[Vt],[]),get_running_sns_version:e.Func([e.Record({})],[wt],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Tt],[]),get_timers:e.Func([e.Record({})],[Pt],[]),get_upgrade_journal:e.Func([bt],[Ft],[]),list_nervous_system_functions:e.Func([],[Ct],[]),list_neurons:e.Func([Mt],[kt],[]),list_proposals:e.Func([Et],[Ut],[]),list_topics:e.Func([Gt],[jt],[]),manage_neuron:e.Func([Yt],[es],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ts],[e.Record({})],[])})};var ao=({IDL:e})=>{let t=e.Rec(),o=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),s=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),n=e.Record({versions:e.Vec(s)}),i=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),c=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:c}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),r=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(r),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(s),new_target_version:e.Opt(s),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(s)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(s),expected_version:e.Opt(s),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(n)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(s),new_target_version:e.Opt(s)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(p)}),B=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),R=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(B),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(R),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(R),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(s)}),g=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(r),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),Re=e.Record({canister_ids:e.Vec(e.Principal)}),ge=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),oe=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),ne=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:Re,TransferSnsTreasuryFunds:ge,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:oe,MintSnsTokens:ye,AdvanceSnsTargetVersion:ne,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(g),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),$=e.Record({to_account:e.Opt(r),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(p)}),Fe=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Ce=e.Record({topic_following:e.Vec(Fe)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(r)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(r),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Ce,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(r),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Fe))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(o),cached_upgrade_steps:e.Opt(i),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(F),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(s),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,C)),target_version:e.Opt(s),genesis_timestamp_seconds:e.Nat64}),ot=e.Record({principals:e.Vec(e.Principal)}),nt=e.Record({nns_neuron_hotkeys:e.Opt(ot),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),at=e.Variant({NeuronsFund:nt,Direct:e.Record({})}),rt=e.Record({neuron_ids:e.Vec(p)}),it=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(at),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(rt),neuron_id:e.Opt(p)}),ct=e.Record({neuron_recipes:e.Vec(it)}),pt=e.Record({neuron_recipes:e.Opt(ct)}),_t=e.Record({id:e.Opt(p),status:e.Int32}),dt=e.Record({swap_neurons:e.Vec(_t)}),ut=e.Variant({Ok:dt,Err:e.Int32}),lt=e.Record({claim_swap_neurons_result:e.Opt(ut)}),mt=e.Record({maturity_modulation:e.Opt(f)}),Ot=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ze=e.Record({time_window_seconds:e.Opt(e.Nat64)}),Nt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),Rt=e.Variant({Ok:Nt,Err:g}),We=e.Record({get_metrics_result:e.Opt(Rt)}),He=e.Record({mode:e.Opt(e.Int32)}),gt=e.Record({neuron_id:e.Opt(p)}),yt=e.Variant({Error:g,Neuron:C}),je=e.Record({result:e.Opt(yt)}),Qe=e.Record({proposal_id:e.Opt(m)}),ft=e.Variant({Error:g,Proposal:T}),ht=e.Record({result:e.Opt(ft)}),vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),Je=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),xt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),St=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),Vt=e.Record({memory_metrics:e.Opt(vt),status:Je,memory_size:e.Nat,cycles:e.Nat,settings:xt,query_stats:e.Opt(St),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),wt=e.Record({deployed_version:e.Opt(s),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(s)}))}),Tt=e.Record({sns_initialization_parameters:e.Text}),Pt=e.Record({timers:e.Opt(o)}),bt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Ft=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(s),target_version:e.Opt(s),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Ct=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Mt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),kt=e.Record({neurons:e.Vec(C)}),At=e.Record({topic:e.Opt(a)}),Et=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(At)),include_status:e.Vec(e.Int32)}),Ut=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Gt=e.Record({}),Bt=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),qt=e.Variant({TreasuryManager:e.Null}),zt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Bt),description:e.Opt(e.Text),extension_type:e.Opt(qt)}),Wt=e.Record({spec:e.Opt(zt),canister_id:e.Opt(e.Principal)}),Ht=e.Record({extension_operations:e.Opt(e.Vec(Wt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),jt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Ht))}),Qt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Jt=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Ce,MakeProposal:w,StakeMaturity:Qt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Yt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Jt)}),Xt=e.Record({created_neuron_id:e.Opt(p)}),Kt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),$t=e.Record({refreshed_neuron_id:e.Opt(p)}),Zt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),It=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Dt=e.Record({transfer_block_height:e.Nat64}),Lt=e.Variant({Error:g,Split:Xt,Follow:e.Record({}),DisburseMaturity:Kt,ClaimOrRefresh:$t,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Qe,RemoveNeuronPermission:e.Record({}),StakeMaturity:Zt,MergeMaturity:It,Disburse:Dt,AddNeuronPermission:e.Record({})}),es=e.Record({command:e.Opt(Lt)}),ts=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([pt],[lt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[S],["query"]),get_maturity_modulation:e.Func([e.Record({})],[mt],[]),get_metadata:e.Func([e.Record({})],[Ot],["query"]),get_metrics:e.Func([ze],[We],["composite_query"]),get_metrics_replicated:e.Func([ze],[We],[]),get_mode:e.Func([e.Record({})],[He],["query"]),get_nervous_system_parameters:e.Func([e.Null],[h],["query"]),get_neuron:e.Func([gt],[je],["query"]),get_proposal:e.Func([Qe],[ht],["query"]),get_root_canister_status:e.Func([e.Null],[Vt],[]),get_running_sns_version:e.Func([e.Record({})],[wt],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Tt],["query"]),get_timers:e.Func([e.Record({})],[Pt],["query"]),get_upgrade_journal:e.Func([bt],[Ft],["query"]),list_nervous_system_functions:e.Func([],[Ct],["query"]),list_neurons:e.Func([Mt],[kt],["query"]),list_proposals:e.Func([Et],[Ut],["query"]),list_topics:e.Func([Gt],[jt],["query"]),manage_neuron:e.Func([Yt],[es],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ts],[e.Record({})],[])})};var os=class e extends b.Canister{static create(t){let{service:o,certifiedService:s,canisterId:n}=(0,b.createServices)({options:t,idlFactory:ao,certifiedIdlFactory:no});return new e(n,o,s)}listNeurons=async t=>{let{principal:o,limit:s,beforeNeuronId:n}=t,{neurons:i}=await this.caller(t).list_neurons({of_principal:(0,b.toNullable)(o),limit:s??100,start_page_at:(0,b.toNullable)(n)});return i};listProposals=async t=>{let{certified:o}=t;return await this.caller({certified:o}).list_proposals(Ks(t))};listTopics=async t=>{let{certified:o}=t;return await this.caller({certified:o}).list_topics({})};getProposal=async t=>{let{proposalId:o}=t,{result:s}=await this.caller(t).get_proposal({proposal_id:(0,b.toNullable)(o)}),n=(0,b.fromNullable)(s);if(n===void 0||"Error"in n)throw new P((n==null?void 0:n.Error.error_message)??"Response type not supported");return n.Proposal};listNervousSystemFunctions=t=>this.caller(t).list_nervous_system_functions();metadata=t=>this.caller(t).get_metadata({});nervousSystemParameters=t=>this.caller(t).get_nervous_system_parameters(null);getNeuron=async t=>{let{neuronId:o}=t,{result:s}=await this.caller(t).get_neuron({neuron_id:(0,b.toNullable)(o)}),n=(0,b.fromNullable)(s);if(n===void 0||"Error"in n)throw new P((n==null?void 0:n.Error.error_message)??"Response type not supported");return n.Neuron};queryNeuron=async t=>{try{return await this.getNeuron(t)}catch(o){if(o instanceof Error&&o.message.includes("No neuron for given NeuronId"))return;throw o}};manageNeuron=async t=>{let o=await this.caller({certified:!0}).manage_neuron(t);return this.assertManageNeuronError(o),o};addNeuronPermissions=async t=>{let o=As(t);await this.manageNeuron(o)};removeNeuronPermissions=async t=>{let o=Es(t);await this.manageNeuron(o)};splitNeuron=async t=>{let o=Us(t),{command:s}=await this.manageNeuron(o),n=(0,b.fromNullable)(s),i=a=>`Split neuron failed (${a})`;if(n===void 0)throw new P(i("no response"));if("Split"in n){let a=n.Split,c=(0,b.fromNullable)(a.created_neuron_id);if(c!==void 0)return c;throw new P(i("no id"))}throw new P(i("unknown"))};disburse=async t=>{let o=Gs(t);await this.manageNeuron(o)};startDissolving=async t=>{let o=Bs(t);await this.manageNeuron(o)};stopDissolving=async t=>{let o=qs(t);await this.manageNeuron(o)};stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,b.assertPercentageNumber)(o??100);let s=zs({neuronId:t,percentageToStake:o});await this.manageNeuron(s)};disburseMaturity=async t=>{(0,b.assertPercentageNumber)(t.percentageToDisburse);let o=Ws(t);await this.manageNeuron(o)};autoStakeMaturity=async t=>{let o=Hs(t);await this.manageNeuron(o)};setDissolveTimestamp=async t=>{let o=js(t);await this.manageNeuron(o)};increaseDissolveDelay=async t=>{let o=Qs(t);await this.manageNeuron(o)};setTopicFollowees=async t=>{let o=Js(t);await this.manageNeuron(o)};setFollowing=async t=>{let o=Ys(t);await this.manageNeuron(o)};registerVote=async t=>{let o=Xs(t);await this.manageNeuron(o)};refreshNeuron=async t=>{let o=Ps({subaccount:t.id});await this.manageNeuron(o)};claimNeuron=async({memo:t,controller:o,subaccount:s})=>{let n=Ps({subaccount:s,memo:t,controller:o}),{command:i}=await this.manageNeuron(n),a=(0,b.fromNullable)(i);if(a===void 0)throw new P("Claim neuron failed");if("ClaimOrRefresh"in a){let c=(0,b.fromNullable)(a.ClaimOrRefresh.refreshed_neuron_id);if(c===void 0)throw new P("Claim neuron failed");return c}throw new P("Claim neuron failed")};assertManageNeuronError=({command:t})=>{let[o]=t;if(o!==void 0&&"Error"in o)throw new P(o.Error.error_message)}};var Ge=require("@dfinity/utils");var ro=({IDL:e})=>{let t=e.Rec(),o=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),s=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),n=e.Record({versions:e.Vec(s)}),i=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),c=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:c}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),r=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(r),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(s),new_target_version:e.Opt(s),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(s)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(s),expected_version:e.Opt(s),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(n)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(s),new_target_version:e.Opt(s)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(p)}),B=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),R=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(B),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(R),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(R),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(s)}),g=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(r),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),Re=e.Record({canister_ids:e.Vec(e.Principal)}),ge=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),oe=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),ne=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:Re,TransferSnsTreasuryFunds:ge,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:oe,MintSnsTokens:ye,AdvanceSnsTargetVersion:ne,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(g),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),$=e.Record({to_account:e.Opt(r),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(p)}),Fe=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Ce=e.Record({topic_following:e.Vec(Fe)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(r)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(r),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Ce,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(r),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Fe))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(o),cached_upgrade_steps:e.Opt(i),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(F),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(s),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,C)),target_version:e.Opt(s),genesis_timestamp_seconds:e.Nat64}),ot=e.Record({id:e.Opt(p),amount_e8s:e.Opt(e.Nat64)}),nt=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),at=e.Record({target_version:e.Opt(s)}),rt=e.Record({}),it=e.Record({principals:e.Vec(e.Principal)}),ct=e.Record({nns_neuron_hotkeys:e.Opt(it),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),pt=e.Variant({NeuronsFund:ct,Direct:e.Record({})}),_t=e.Record({neuron_ids:e.Vec(p)}),dt=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(pt),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(_t),neuron_id:e.Opt(p)}),ut=e.Record({neuron_recipes:e.Vec(dt)}),lt=e.Record({neuron_recipes:e.Opt(ut)}),mt=e.Record({id:e.Opt(p),status:e.Int32}),Ot=e.Record({swap_neurons:e.Vec(mt)}),ze=e.Variant({Ok:Ot,Err:e.Int32}),Nt=e.Record({claim_swap_neurons_result:e.Opt(ze)}),Rt=e.Record({maturity_modulation:e.Opt(f)}),We=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),He=e.Record({time_window_seconds:e.Opt(e.Nat64)}),gt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),yt=e.Variant({Ok:gt,Err:g}),je=e.Record({get_metrics_result:e.Opt(yt)}),Qe=e.Record({mode:e.Opt(e.Int32)}),ft=e.Record({neuron_id:e.Opt(p)}),ht=e.Variant({Error:g,Neuron:C}),vt=e.Record({result:e.Opt(ht)}),Je=e.Record({proposal_id:e.Opt(m)}),xt=e.Variant({Error:g,Proposal:T}),St=e.Record({result:e.Opt(xt)}),Vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),wt=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Tt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),Pt=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),bt=e.Record({memory_metrics:e.Opt(Vt),status:wt,memory_size:e.Nat,cycles:e.Nat,settings:Tt,query_stats:e.Opt(Pt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ft=e.Record({deployed_version:e.Opt(s),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(s)}))}),Ct=e.Record({sns_initialization_parameters:e.Text}),Mt=e.Record({timers:e.Opt(o)}),kt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),At=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(s),target_version:e.Opt(s),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Et=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Ut=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),Gt=e.Record({neurons:e.Vec(C)}),Bt=e.Record({topic:e.Opt(a)}),qt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(Bt)),include_status:e.Vec(e.Int32)}),zt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Wt=e.Record({}),Ht=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),jt=e.Variant({TreasuryManager:e.Null}),Qt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Ht),description:e.Opt(e.Text),extension_type:e.Opt(jt)}),Jt=e.Record({spec:e.Opt(Qt),canister_id:e.Opt(e.Principal)}),Yt=e.Record({extension_operations:e.Opt(e.Vec(Jt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),Xt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Yt))}),Kt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),$t=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Ce,MakeProposal:w,StakeMaturity:Kt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Zt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt($t)}),It=e.Record({created_neuron_id:e.Opt(p)}),Dt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Lt=e.Record({refreshed_neuron_id:e.Opt(p)}),es=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ts=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),vs=e.Record({transfer_block_height:e.Nat64}),xs=e.Variant({Error:g,Split:It,Follow:e.Record({}),DisburseMaturity:Dt,ClaimOrRefresh:Lt,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Je,RemoveNeuronPermission:e.Record({}),StakeMaturity:es,MergeMaturity:ts,Disburse:vs,AddNeuronPermission:e.Record({})}),Ss=e.Record({command:e.Opt(xs)}),Vs=e.Record({recipient:e.Opt(r),amount_e8s:e.Opt(e.Nat64)}),ws=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([ot],[nt],[]),advance_target_version:e.Func([at],[rt],[]),claim_swap_neurons:e.Func([lt],[Nt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[S],[]),get_maturity_modulation:e.Func([e.Record({})],[Rt],[]),get_metadata:e.Func([e.Record({})],[We],[]),get_metrics:e.Func([He],[je],[]),get_metrics_replicated:e.Func([He],[je],[]),get_mode:e.Func([e.Record({})],[Qe],[]),get_nervous_system_parameters:e.Func([e.Null],[h],[]),get_neuron:e.Func([ft],[vt],[]),get_proposal:e.Func([Je],[St],[]),get_root_canister_status:e.Func([e.Null],[bt],[]),get_running_sns_version:e.Func([e.Record({})],[Ft],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ct],[]),get_timers:e.Func([e.Record({})],[Mt],[]),get_upgrade_journal:e.Func([kt],[At],[]),list_nervous_system_functions:e.Func([],[Et],[]),list_neurons:e.Func([Ut],[Gt],[]),list_proposals:e.Func([qt],[zt],[]),list_topics:e.Func([Wt],[Xt],[]),manage_neuron:e.Func([Zt],[Ss],[]),mint_tokens:e.Func([Vs],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ws],[e.Record({})],[]),update_neuron:e.Func([C],[e.Opt(g)],[])})};var io=({IDL:e})=>{let t=e.Rec(),o=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),s=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),n=e.Record({versions:e.Vec(s)}),i=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),c=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:c}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),r=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(r),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(s),new_target_version:e.Opt(s),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(s)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(s),expected_version:e.Opt(s),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(n)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(s),new_target_version:e.Opt(s)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(p)}),B=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),R=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(B),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(R),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(R),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(s)}),g=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(r),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),Re=e.Record({canister_ids:e.Vec(e.Principal)}),ge=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),oe=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),ne=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:Re,TransferSnsTreasuryFunds:ge,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:oe,MintSnsTokens:ye,AdvanceSnsTargetVersion:ne,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(g),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),$=e.Record({to_account:e.Opt(r),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(p)}),Fe=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Ce=e.Record({topic_following:e.Vec(Fe)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(r)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(R),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(r),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Ce,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(r),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Fe))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(o),cached_upgrade_steps:e.Opt(i),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(F),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(s),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,C)),target_version:e.Opt(s),genesis_timestamp_seconds:e.Nat64}),ot=e.Record({id:e.Opt(p),amount_e8s:e.Opt(e.Nat64)}),nt=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),at=e.Record({target_version:e.Opt(s)}),rt=e.Record({}),it=e.Record({principals:e.Vec(e.Principal)}),ct=e.Record({nns_neuron_hotkeys:e.Opt(it),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),pt=e.Variant({NeuronsFund:ct,Direct:e.Record({})}),_t=e.Record({neuron_ids:e.Vec(p)}),dt=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(pt),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(_t),neuron_id:e.Opt(p)}),ut=e.Record({neuron_recipes:e.Vec(dt)}),lt=e.Record({neuron_recipes:e.Opt(ut)}),mt=e.Record({id:e.Opt(p),status:e.Int32}),Ot=e.Record({swap_neurons:e.Vec(mt)}),ze=e.Variant({Ok:Ot,Err:e.Int32}),Nt=e.Record({claim_swap_neurons_result:e.Opt(ze)}),Rt=e.Record({maturity_modulation:e.Opt(f)}),We=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),He=e.Record({time_window_seconds:e.Opt(e.Nat64)}),gt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),yt=e.Variant({Ok:gt,Err:g}),je=e.Record({get_metrics_result:e.Opt(yt)}),Qe=e.Record({mode:e.Opt(e.Int32)}),ft=e.Record({neuron_id:e.Opt(p)}),ht=e.Variant({Error:g,Neuron:C}),vt=e.Record({result:e.Opt(ht)}),Je=e.Record({proposal_id:e.Opt(m)}),xt=e.Variant({Error:g,Proposal:T}),St=e.Record({result:e.Opt(xt)}),Vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),wt=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Tt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),Pt=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),bt=e.Record({memory_metrics:e.Opt(Vt),status:wt,memory_size:e.Nat,cycles:e.Nat,settings:Tt,query_stats:e.Opt(Pt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ft=e.Record({deployed_version:e.Opt(s),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(s)}))}),Ct=e.Record({sns_initialization_parameters:e.Text}),Mt=e.Record({timers:e.Opt(o)}),kt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),At=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(s),target_version:e.Opt(s),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Et=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Ut=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),Gt=e.Record({neurons:e.Vec(C)}),Bt=e.Record({topic:e.Opt(a)}),qt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(Bt)),include_status:e.Vec(e.Int32)}),zt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Wt=e.Record({}),Ht=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),jt=e.Variant({TreasuryManager:e.Null}),Qt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Ht),description:e.Opt(e.Text),extension_type:e.Opt(jt)}),Jt=e.Record({spec:e.Opt(Qt),canister_id:e.Opt(e.Principal)}),Yt=e.Record({extension_operations:e.Opt(e.Vec(Jt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),Xt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Yt))}),Kt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),$t=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Ce,MakeProposal:w,StakeMaturity:Kt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Zt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt($t)}),It=e.Record({created_neuron_id:e.Opt(p)}),Dt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Lt=e.Record({refreshed_neuron_id:e.Opt(p)}),es=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ts=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),vs=e.Record({transfer_block_height:e.Nat64}),xs=e.Variant({Error:g,Split:It,Follow:e.Record({}),DisburseMaturity:Dt,ClaimOrRefresh:Lt,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Je,RemoveNeuronPermission:e.Record({}),StakeMaturity:es,MergeMaturity:ts,Disburse:vs,AddNeuronPermission:e.Record({})}),Ss=e.Record({command:e.Opt(xs)}),Vs=e.Record({recipient:e.Opt(r),amount_e8s:e.Opt(e.Nat64)}),ws=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([ot],[nt],[]),advance_target_version:e.Func([at],[rt],[]),claim_swap_neurons:e.Func([lt],[Nt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[S],["query"]),get_maturity_modulation:e.Func([e.Record({})],[Rt],[]),get_metadata:e.Func([e.Record({})],[We],["query"]),get_metrics:e.Func([He],[je],["composite_query"]),get_metrics_replicated:e.Func([He],[je],[]),get_mode:e.Func([e.Record({})],[Qe],["query"]),get_nervous_system_parameters:e.Func([e.Null],[h],["query"]),get_neuron:e.Func([ft],[vt],["query"]),get_proposal:e.Func([Je],[St],["query"]),get_root_canister_status:e.Func([e.Null],[bt],[]),get_running_sns_version:e.Func([e.Record({})],[Ft],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ct],["query"]),get_timers:e.Func([e.Record({})],[Mt],["query"]),get_upgrade_journal:e.Func([kt],[At],["query"]),list_nervous_system_functions:e.Func([],[Et],["query"]),list_neurons:e.Func([Ut],[Gt],["query"]),list_proposals:e.Func([qt],[zt],["query"]),list_topics:e.Func([Wt],[Xt],["query"]),manage_neuron:e.Func([Zt],[Ss],[]),mint_tokens:e.Func([Vs],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ws],[e.Record({})],[]),update_neuron:e.Func([C],[e.Opt(g)],[])})};var ms=class e extends Ge.Canister{static create(t){let{service:o,certifiedService:s,canisterId:n}=(0,Ge.createServices)({options:t,idlFactory:io,certifiedIdlFactory:ro});return new e(n,o,s)}addMaturity=async t=>{let{id:o,amountE8s:s}=t,{new_maturity_e8s:n}=await this.caller(t).add_maturity({id:(0,Ge.toNullable)(o),amount_e8s:(0,Ge.toNullable)(s)}),i=(0,Ge.fromNullable)(n);if((0,Ge.isNullish)(i)||i<s)throw new P("No maturity added")}};var Os=require("@dfinity/utils");var co=({IDL:e})=>{let t=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),o=e.Record({extension_canister_ids:e.Vec(e.Principal)}),s=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(t),testflight:e.Bool,extensions:e.Opt(o),archive_canister_ids:e.Vec(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)}),n=e.Record({canister_id:e.Principal}),i=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),a=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),c=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),u=e.Record({freezing_threshold:e.Opt(e.Nat),wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat),log_visibility:e.Opt(c),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),l=e.Record({memory_metrics:e.Opt(i),status:a,memory_size:e.Nat,cycles:e.Nat,settings:u,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),r=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),N=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),y=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:r,canister_id:e.Principal,chunked_canister_wasm:e.Opt(N)}),F=e.Record({update_canister_list:e.Opt(e.Bool)}),f=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),M=e.Record({memory_metrics:e.Opt(i),status:a,memory_size:e.Nat,cycles:e.Nat,settings:f,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),O=e.Record({status:e.Opt(M),canister_id:e.Opt(e.Principal)}),k=e.Record({root:e.Opt(O),swap:e.Opt(O),ledger:e.Opt(O),index:e.Opt(O),governance:e.Opt(O),dapps:e.Vec(O),archives:e.Vec(O)}),m=e.Record({timers:e.Opt(t)}),A=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),extensions:e.Opt(o),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),E=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)}),U=e.Record({failure_reason:e.Opt(e.Text)}),G=e.Record({canister_id:e.Opt(e.Principal)}),v=e.Record({canister_ids:e.Vec(e.Principal)}),p=e.Record({canister_id:e.Opt(e.Principal)}),x=e.Record({code:e.Opt(e.Int32),description:e.Text}),B=e.Variant({Ok:e.Record({}),Err:x}),R=e.Record({result:e.Opt(B)}),q=e.Record({canister_ids:e.Opt(v),controller_principal_ids:e.Vec(e.Principal)}),h=e.Record({err:e.Opt(x),dapp_canister_id:e.Opt(e.Principal)}),S=e.Record({failed_updates:e.Vec(h)});return e.Service({canister_status:e.Func([n],[l],[]),change_canister:e.Func([y],[],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([F],[k],[]),get_timers:e.Func([e.Record({})],[m],[]),list_sns_canisters:e.Func([e.Record({})],[A],[]),manage_dapp_canister_settings:e.Func([E],[U],[]),register_dapp_canister:e.Func([G],[e.Record({})],[]),register_dapp_canisters:e.Func([v],[e.Record({})],[]),register_extension:e.Func([p],[R],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([q],[S],[])})};var po=({IDL:e})=>{let t=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),o=e.Record({extension_canister_ids:e.Vec(e.Principal)}),s=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(t),testflight:e.Bool,extensions:e.Opt(o),archive_canister_ids:e.Vec(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)}),n=e.Record({canister_id:e.Principal}),i=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),a=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),c=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),u=e.Record({freezing_threshold:e.Opt(e.Nat),wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat),log_visibility:e.Opt(c),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),l=e.Record({memory_metrics:e.Opt(i),status:a,memory_size:e.Nat,cycles:e.Nat,settings:u,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),r=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),N=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),y=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:r,canister_id:e.Principal,chunked_canister_wasm:e.Opt(N)}),F=e.Record({update_canister_list:e.Opt(e.Bool)}),f=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),M=e.Record({memory_metrics:e.Opt(i),status:a,memory_size:e.Nat,cycles:e.Nat,settings:f,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),O=e.Record({status:e.Opt(M),canister_id:e.Opt(e.Principal)}),k=e.Record({root:e.Opt(O),swap:e.Opt(O),ledger:e.Opt(O),index:e.Opt(O),governance:e.Opt(O),dapps:e.Vec(O),archives:e.Vec(O)}),m=e.Record({timers:e.Opt(t)}),A=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),extensions:e.Opt(o),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),E=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)}),U=e.Record({failure_reason:e.Opt(e.Text)}),G=e.Record({canister_id:e.Opt(e.Principal)}),v=e.Record({canister_ids:e.Vec(e.Principal)}),p=e.Record({canister_id:e.Opt(e.Principal)}),x=e.Record({code:e.Opt(e.Int32),description:e.Text}),B=e.Variant({Ok:e.Record({}),Err:x}),R=e.Record({result:e.Opt(B)}),q=e.Record({canister_ids:e.Opt(v),controller_principal_ids:e.Vec(e.Principal)}),h=e.Record({err:e.Opt(x),dapp_canister_id:e.Opt(e.Principal)}),S=e.Record({failed_updates:e.Vec(h)});return e.Service({canister_status:e.Func([n],[l],[]),change_canister:e.Func([y],[],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([F],[k],[]),get_timers:e.Func([e.Record({})],[m],["query"]),list_sns_canisters:e.Func([e.Record({})],[A],["query"]),manage_dapp_canister_settings:e.Func([E],[U],[]),register_dapp_canister:e.Func([G],[e.Record({})],[]),register_dapp_canisters:e.Func([v],[e.Record({})],[]),register_extension:e.Func([p],[R],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([q],[S],[])})};var ns=class e extends Os.Canister{static create(t){let{service:o,certifiedService:s,canisterId:n}=(0,Os.createServices)({options:t,idlFactory:po,certifiedIdlFactory:co});return new e(n,o,s)}listSnsCanisters=({certified:t=!0})=>this.caller({certified:t}).list_sns_canisters({})};var fs=require("@dfinity/ledger-icrc"),qe=require("@dfinity/utils");var us=require("@dfinity/utils");var as=require("@dfinity/utils");function Bo(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Rs(e,...t){if(!Bo(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 bs(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 _o(e,t){Rs(e);let o=t.outputLen;if(e.length<o)throw new Error("digestInto() expects output buffer of length at least "+o)}function ds(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function gs(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Be(e,t){return e<<32-t|e>>>t}function qo(e){if(typeof e!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function Fs(e){return typeof e=="string"&&(e=qo(e)),Rs(e),e}var Ns=class{};function uo(e){let t=s=>e().update(Fs(s)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function zo(e,t,o,s){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,o,s);let n=BigInt(32),i=BigInt(4294967295),a=Number(o>>n&i),c=Number(o&i),u=s?4:0,d=s?0:4;e.setUint32(t+u,a,s),e.setUint32(t+d,c,s)}function lo(e,t,o){return e&t^~e&o}function mo(e,t,o){return e&t^e&o^t&o}var ys=class extends Ns{constructor(t,o,s,n){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=o,this.padOffset=s,this.isLE=n,this.buffer=new Uint8Array(t),this.view=gs(this.buffer)}update(t){bs(this),t=Fs(t),Rs(t);let{view:o,buffer:s,blockLen:n}=this,i=t.length;for(let a=0;a<i;){let c=Math.min(n-this.pos,i-a);if(c===n){let u=gs(t);for(;n<=i-a;a+=n)this.process(u,a);continue}s.set(t.subarray(a,a+c),this.pos),this.pos+=c,a+=c,this.pos===n&&(this.process(o,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){bs(this),_o(t,this),this.finished=!0;let{buffer:o,view:s,blockLen:n,isLE:i}=this,{pos:a}=this;o[a++]=128,ds(this.buffer.subarray(a)),this.padOffset>n-a&&(this.process(s,0),a=0);for(let r=a;r<n;r++)o[r]=0;zo(s,n-8,BigInt(this.length*8),i),this.process(s,0);let c=gs(t),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let d=u/4,l=this.get();if(d>l.length)throw new Error("_sha2: outputLen bigger than state");for(let r=0;r<d;r++)c.setUint32(4*r,l[r],i)}digest(){let{buffer:t,outputLen:o}=this;this.digestInto(t);let s=t.slice(0,o);return this.destroy(),s}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:o,buffer:s,length:n,finished:i,destroyed:a,pos:c}=this;return t.destroyed=a,t.finished=i,t.length=n,t.pos=c,n%o&&t.buffer.set(s),t}clone(){return this._cloneInto()}},Ye=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Wo=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]),Xe=new Uint32Array(64),Cs=class extends ys{constructor(t=32){super(64,t,8,!1),this.A=Ye[0]|0,this.B=Ye[1]|0,this.C=Ye[2]|0,this.D=Ye[3]|0,this.E=Ye[4]|0,this.F=Ye[5]|0,this.G=Ye[6]|0,this.H=Ye[7]|0}get(){let{A:t,B:o,C:s,D:n,E:i,F:a,G:c,H:u}=this;return[t,o,s,n,i,a,c,u]}set(t,o,s,n,i,a,c,u){this.A=t|0,this.B=o|0,this.C=s|0,this.D=n|0,this.E=i|0,this.F=a|0,this.G=c|0,this.H=u|0}process(t,o){for(let r=0;r<16;r++,o+=4)Xe[r]=t.getUint32(o,!1);for(let r=16;r<64;r++){let N=Xe[r-15],y=Xe[r-2],F=Be(N,7)^Be(N,18)^N>>>3,f=Be(y,17)^Be(y,19)^y>>>10;Xe[r]=f+Xe[r-7]+F+Xe[r-16]|0}let{A:s,B:n,C:i,D:a,E:c,F:u,G:d,H:l}=this;for(let r=0;r<64;r++){let N=Be(c,6)^Be(c,11)^Be(c,25),y=l+N+lo(c,u,d)+Wo[r]+Xe[r]|0,f=(Be(s,2)^Be(s,13)^Be(s,22))+mo(s,n,i)|0;l=d,d=u,u=c,c=a+y|0,a=i,i=n,n=s,s=y+f|0}s=s+this.A|0,n=n+this.B|0,i=i+this.C|0,a=a+this.D|0,c=c+this.E|0,u=u+this.F|0,d=d+this.G|0,l=l+this.H|0,this.set(s,n,i,a,c,u,d,l)}roundClean(){ds(Xe)}destroy(){this.set(0,0,0,0,0,0,0,0),ds(this.buffer)}};var Oo=uo(()=>new Cs);var Ms=({index:e,controller:t})=>{let s=[12,...(0,as.asciiStringToByteArray)("neuron-stake"),...t.toUint8Array(),...(0,as.numberToUint8Array)(e)],n=Oo.create();return n.update((0,as.arrayOfNumberToUint8Array)(s)),n.digest()};var ls=class{root;governance;ledger;swap;index;certified;constructor({root:t,governance:o,ledger:s,swap:n,index:i,certified:a}){this.root=t,this.governance=o,this.ledger=s,this.swap=n,this.index=i,this.certified=a}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId,indexCanisterId:this.index.canisterId}}listNeurons=t=>this.governance.listNeurons(this.mergeParams(t));listProposals=t=>this.governance.listProposals(this.mergeParams(t));getProposal=t=>this.governance.getProposal(this.mergeParams(t));listNervousSystemFunctions=t=>this.governance.listNervousSystemFunctions(this.mergeParams(t));metadata=t=>Promise.all([this.governance.metadata(this.mergeParams(t)),this.ledger.metadata(this.mergeParams(t))]);nervousSystemParameters=t=>this.governance.nervousSystemParameters(this.mergeParams(t));ledgerMetadata=t=>this.ledger.metadata(this.mergeParams(t));transactionFee=t=>this.ledger.transactionFee(this.mergeParams(t));totalTokensSupply=t=>this.ledger.totalTokensSupply(this.mergeParams(t));balance=t=>this.ledger.balance(this.mergeParams(t));transfer=t=>this.ledger.transfer(t);getNeuron=t=>this.governance.getNeuron(this.mergeParams(t));queryNeuron=t=>this.governance.queryNeuron(this.mergeParams(t));nextNeuronAccount=async t=>{for(let o=0;o<65536;o++){let s=Ms({index:o,controller:t}),n={id:s},i=await this.governance.queryNeuron({neuronId:n,certified:!1});if(i===void 0&&(i=await this.governance.queryNeuron({neuronId:n,certified:!0}),i===void 0))return{account:{...this.owner,subaccount:s},index:BigInt(o)}}throw new P("No more neuron accounts available")};stakeNeuron=async({stakeE8s:t,source:o,controller:s,createdAt:n,fee:i})=>{this.assertCertified("stakeNeuron");let{account:a,index:c}=await this.nextNeuronAccount(s);if(a.subaccount===void 0)throw new P("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:t,to:{owner:a.owner,subaccount:(0,us.toNullable)(a.subaccount)},from_subaccount:o.subaccount,memo:(0,us.bigIntToUint8Array)(c),created_at_time:n,fee:i}),this.governance.claimNeuron({memo:BigInt(c),controller:s,subaccount:a.subaccount})};increaseStakeNeuron=async({stakeE8s:t,source:o,neuronId:s})=>(this.assertCertified("stakeNeuron"),await this.ledger.transfer({amount:t,to:{...this.owner,subaccount:(0,us.toNullable)(Uint8Array.from(s.id))},from_subaccount:o.subaccount}),this.governance.refreshNeuron(s));getNeuronBalance=t=>{let o={...this.owner,subaccount:Uint8Array.from(t.id)};return this.ledger.balance({...o,certified:this.certified})};addNeuronPermissions=t=>this.governance.addNeuronPermissions(t);refreshNeuron=t=>this.governance.refreshNeuron(t);claimNeuron=t=>this.governance.claimNeuron(t);removeNeuronPermissions=t=>this.governance.removeNeuronPermissions(t);splitNeuron=t=>this.governance.splitNeuron(t);disburse=t=>this.governance.disburse(t);startDissolving=t=>this.governance.startDissolving(t);stopDissolving=t=>this.governance.stopDissolving(t);setDissolveTimestamp=t=>this.governance.setDissolveTimestamp(t);increaseDissolveDelay=t=>this.governance.increaseDissolveDelay(t);setTopicFollowees=t=>this.governance.setTopicFollowees(t);setFollowing=t=>this.governance.setFollowing(t);registerVote=t=>this.governance.registerVote(t);swapState=t=>this.swap.state(this.mergeParams(t));notifyPaymentFailure=()=>this.swap.notifyPaymentFailure();notifyParticipation=t=>this.swap.notifyParticipation(t);getUserCommitment=t=>this.swap.getUserCommitment(this.mergeParams(t));getOpenTicket=t=>this.swap.getOpenTicket(this.mergeParams(t));newSaleTicket=t=>this.swap.newSaleTicket(t);getLifecycle=t=>this.swap.getLifecycle(this.mergeParams(t));getFinalizationStatus=t=>this.swap.getFinalizationStatus(this.mergeParams(t));getSaleParameters=t=>this.swap.getSaleParameters(this.mergeParams(t));getDerivedState=t=>this.swap.getDerivedState(this.mergeParams(t));getTransactions=t=>this.index.getTransactions(t);stakeMaturity=t=>this.governance.stakeMaturity(t);disburseMaturity=t=>this.governance.disburseMaturity(t);autoStakeMaturity=t=>this.governance.autoStakeMaturity(t);mergeParams(t){return{...t,certified:this.certified}}assertCertified=t=>{if(!this.certified)throw new P(`Call to ${t} needs to be certified`)};get owner(){return{owner:this.canisterIds.governanceCanisterId}}};var D=require("@dfinity/utils");var No=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),o=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)}),s=e.Record({serialized_representation:e.Opt(e.Text)}),n=e.Record({coefficient_intervals:e.Vec(o),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(s)}),i=e.Record({iso_codes:e.Vec(e.Text)}),a=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(n),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(i),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),c=e.Record({source_principal_id:e.Opt(e.Principal)}),u=e.Record({block_height:e.Opt(e.Nat64)}),d=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:u,Err:d}),r=e.Record({result:e.Opt(l)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),y=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),F=e.Record({failed_updates:e.Vec(y)}),f=e.Variant({Ok:F,Err:N}),M=e.Record({possibility:e.Opt(f)}),O=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),k=e.Record({error_message:e.Text,error_type:e.Int32}),m=e.Record({governance_error:e.Opt(k)}),A=e.Variant({Ok:m,Err:N}),E=e.Record({possibility:e.Opt(A)}),U=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),G=e.Record({message:e.Opt(e.Text)}),v=e.Variant({Ok:U,Err:G}),p=e.Record({possibility:e.Opt(v)}),x=e.Variant({Ok:e.Record({}),Err:N}),B=e.Record({possibility:e.Opt(x)}),R=e.Record({set_dapp_controllers_call_result:e.Opt(M),create_sns_neuron_recipes_result:e.Opt(O),settle_community_fund_participation_result:e.Opt(E),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(p),set_mode_call_result:e.Opt(B),sweep_icp_result:e.Opt(O),claim_neuron_result:e.Opt(O),sweep_sns_result:e.Opt(O)}),q=e.Record({auto_finalize_swap_response:e.Opt(R),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),h=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),z=e.Record({icp:e.Opt(S),has_created_neuron_recipes:e.Opt(e.Bool)}),g=e.Record({buyer_state:e.Opt(z)}),W=e.Record({buyers_total:e.Nat64}),ae=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),re=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ie=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),H=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),j=e.Record({memory_metrics:e.Opt(ae),status:re,memory_size:e.Nat,cycles:e.Nat,settings:ie,query_stats:e.Opt(H),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),pe=e.Record({init:e.Opt(a)}),_e=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),Q=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),L=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(Q),amount_icp_e8s:e.Nat64}),J=e.Record({ticket:e.Opt(L)}),de=e.Record({error_type:e.Opt(e.Int32)}),ue=e.Variant({Ok:J,Err:de}),V=e.Record({result:e.Opt(ue)}),ee=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),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)}),le=e.Record({params:e.Opt(ee)}),me=e.Record({id:e.Vec(e.Nat8)}),Oe=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(me)}),te=e.Record({principals:e.Vec(e.Principal)}),Ne=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(te),nns_neuron_id:e.Nat64}),Re=e.Record({buyer_principal:e.Text}),ge=e.Variant({CommunityFund:Ne,Direct:Re}),se=e.Record({sns:e.Opt(S),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Oe),investor:e.Opt(ge)}),oe=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),ye=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(te),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),ne=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(ye)}),Y=e.Record({auto_finalize_swap_response:e.Opt(R),neuron_recipes:e.Vec(se),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),timers:e.Opt(oe),cf_participants:e.Vec(ne),init:e.Opt(a),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,z)),params:e.Opt(ee),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),fe=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),he=e.Record({swap:e.Opt(Y),derived:e.Opt(fe)}),ve=e.Record({timers:e.Opt(oe)}),xe=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),w=e.Record({cf_participants:e.Vec(ne)}),Se=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),T=e.Record({participation:e.Opt(z),participant_id:e.Opt(e.Principal)}),X=e.Record({participants:e.Vec(T)}),K=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),$=e.Record({sns_neuron_recipes:e.Vec(se)}),Ve=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),we=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),Te=e.Record({invalid_user_amount:e.Opt(we),existing_ticket:e.Opt(L),error_type:e.Int32}),Pe=e.Variant({Ok:J,Err:Te}),Z=e.Record({result:e.Opt(Pe)}),I=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),be=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([c],[r],[]),finalize_swap:e.Func([e.Record({})],[R],[]),get_auto_finalization_status:e.Func([e.Record({})],[q],[]),get_buyer_state:e.Func([h],[g],[]),get_buyers_total:e.Func([e.Record({})],[W],[]),get_canister_status:e.Func([e.Record({})],[j],[]),get_derived_state:e.Func([e.Record({})],[ce],[]),get_init:e.Func([e.Record({})],[pe],[]),get_lifecycle:e.Func([e.Record({})],[_e],[]),get_open_ticket:e.Func([e.Record({})],[V],[]),get_sale_parameters:e.Func([e.Record({})],[le],[]),get_state:e.Func([e.Record({})],[he],[]),get_timers:e.Func([e.Record({})],[ve],[]),list_community_fund_participants:e.Func([xe],[w],[]),list_direct_participants:e.Func([Se],[X],[]),list_sns_neuron_recipes:e.Func([K],[$],[]),new_sale_ticket:e.Func([Ve],[Z],[]),notify_payment_failure:e.Func([e.Record({})],[J],[]),refresh_buyer_tokens:e.Func([I],[be],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var Ro=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),o=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)}),s=e.Record({serialized_representation:e.Opt(e.Text)}),n=e.Record({coefficient_intervals:e.Vec(o),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(s)}),i=e.Record({iso_codes:e.Vec(e.Text)}),a=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(n),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(i),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),c=e.Record({source_principal_id:e.Opt(e.Principal)}),u=e.Record({block_height:e.Opt(e.Nat64)}),d=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:u,Err:d}),r=e.Record({result:e.Opt(l)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),y=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),F=e.Record({failed_updates:e.Vec(y)}),f=e.Variant({Ok:F,Err:N}),M=e.Record({possibility:e.Opt(f)}),O=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),k=e.Record({error_message:e.Text,error_type:e.Int32}),m=e.Record({governance_error:e.Opt(k)}),A=e.Variant({Ok:m,Err:N}),E=e.Record({possibility:e.Opt(A)}),U=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),G=e.Record({message:e.Opt(e.Text)}),v=e.Variant({Ok:U,Err:G}),p=e.Record({possibility:e.Opt(v)}),x=e.Variant({Ok:e.Record({}),Err:N}),B=e.Record({possibility:e.Opt(x)}),R=e.Record({set_dapp_controllers_call_result:e.Opt(M),create_sns_neuron_recipes_result:e.Opt(O),settle_community_fund_participation_result:e.Opt(E),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(p),set_mode_call_result:e.Opt(B),sweep_icp_result:e.Opt(O),claim_neuron_result:e.Opt(O),sweep_sns_result:e.Opt(O)}),q=e.Record({auto_finalize_swap_response:e.Opt(R),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),h=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),z=e.Record({icp:e.Opt(S),has_created_neuron_recipes:e.Opt(e.Bool)}),g=e.Record({buyer_state:e.Opt(z)}),W=e.Record({buyers_total:e.Nat64}),ae=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),re=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ie=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),H=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),j=e.Record({memory_metrics:e.Opt(ae),status:re,memory_size:e.Nat,cycles:e.Nat,settings:ie,query_stats:e.Opt(H),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),pe=e.Record({init:e.Opt(a)}),_e=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),Q=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),L=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(Q),amount_icp_e8s:e.Nat64}),J=e.Record({ticket:e.Opt(L)}),de=e.Record({error_type:e.Opt(e.Int32)}),ue=e.Variant({Ok:J,Err:de}),V=e.Record({result:e.Opt(ue)}),ee=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),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)}),le=e.Record({params:e.Opt(ee)}),me=e.Record({id:e.Vec(e.Nat8)}),Oe=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(me)}),te=e.Record({principals:e.Vec(e.Principal)}),Ne=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(te),nns_neuron_id:e.Nat64}),Re=e.Record({buyer_principal:e.Text}),ge=e.Variant({CommunityFund:Ne,Direct:Re}),se=e.Record({sns:e.Opt(S),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Oe),investor:e.Opt(ge)}),oe=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),ye=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(te),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),ne=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(ye)}),Y=e.Record({auto_finalize_swap_response:e.Opt(R),neuron_recipes:e.Vec(se),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),timers:e.Opt(oe),cf_participants:e.Vec(ne),init:e.Opt(a),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,z)),params:e.Opt(ee),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),fe=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),he=e.Record({swap:e.Opt(Y),derived:e.Opt(fe)}),ve=e.Record({timers:e.Opt(oe)}),xe=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),w=e.Record({cf_participants:e.Vec(ne)}),Se=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),T=e.Record({participation:e.Opt(z),participant_id:e.Opt(e.Principal)}),X=e.Record({participants:e.Vec(T)}),K=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),$=e.Record({sns_neuron_recipes:e.Vec(se)}),Ve=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),we=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),Te=e.Record({invalid_user_amount:e.Opt(we),existing_ticket:e.Opt(L),error_type:e.Int32}),Pe=e.Variant({Ok:J,Err:Te}),Z=e.Record({result:e.Opt(Pe)}),I=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),be=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([c],[r],[]),finalize_swap:e.Func([e.Record({})],[R],[]),get_auto_finalization_status:e.Func([e.Record({})],[q],["query"]),get_buyer_state:e.Func([h],[g],["query"]),get_buyers_total:e.Func([e.Record({})],[W],[]),get_canister_status:e.Func([e.Record({})],[j],[]),get_derived_state:e.Func([e.Record({})],[ce],["query"]),get_init:e.Func([e.Record({})],[pe],["query"]),get_lifecycle:e.Func([e.Record({})],[_e],["query"]),get_open_ticket:e.Func([e.Record({})],[V],["query"]),get_sale_parameters:e.Func([e.Record({})],[le],["query"]),get_state:e.Func([e.Record({})],[he],["query"]),get_timers:e.Func([e.Record({})],[ve],["query"]),list_community_fund_participants:e.Func([xe],[w],["query"]),list_direct_participants:e.Func([Se],[X],["query"]),list_sns_neuron_recipes:e.Func([K],[$],["query"]),new_sale_ticket:e.Func([Ve],[Z],[]),notify_payment_failure:e.Func([e.Record({})],[J],[]),refresh_buyer_tokens:e.Func([I],[be],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var go=({subaccount:e,amount_icp_e8s:t})=>({subaccount:e===void 0?[]:[e],amount_icp_e8s:t});var yo=require("@dfinity/utils"),fo=e=>{if(typeof e=="object"&&(0,yo.nonNullish)(e)&&"message"in e){let t=e.message;return t.includes("has no update method")||t.includes("has no query method")}return!1};var rs=class e extends D.Canister{static create(t){let{service:o,certifiedService:s,canisterId:n}=(0,D.createServices)({options:t,idlFactory:Ro,certifiedIdlFactory:No});return new e(n,o,s)}state=t=>this.caller(t).get_state({});notifyPaymentFailure=async()=>{let{ticket:t}=await this.caller({certified:!0}).notify_payment_failure({});return(0,D.fromNullable)(t)};notifyParticipation=async t=>await this.caller({certified:!0}).refresh_buyer_tokens(t);getUserCommitment=async t=>{let{buyer_state:o}=await this.caller({certified:t.certified}).get_buyer_state({principal_id:t.principal_id});return(0,D.fromNullable)(o)};getDerivedState=({certified:t})=>this.caller({certified:t}).get_derived_state({});getSaleParameters=({certified:t})=>this.caller({certified:t}).get_sale_parameters({});getOpenTicket=async t=>{var i;let{result:o}=await this.caller({certified:t.certified}).get_open_ticket({}),s=(0,D.fromDefinedNullable)(o);if("Ok"in s)return(0,D.fromNullable)(s.Ok.ticket);let n=(0,D.fromDefinedNullable)((i=s==null?void 0:s.Err)==null?void 0:i.error_type);throw new _s(n)};newSaleTicket=async t=>{let o=go(t),{result:s}=await this.caller({certified:!0}).new_sale_ticket(o),n=(0,D.fromDefinedNullable)(s);if("Ok"in n)return(0,D.fromDefinedNullable)(n.Ok.ticket);let i=n.Err;throw new ps({errorType:i.error_type,invalidUserAmount:(0,D.fromNullable)(i.invalid_user_amount??[]),existingTicket:(0,D.fromNullable)(i.existing_ticket??[])})};getLifecycle=t=>this.caller(t).get_lifecycle({});getFinalizationStatus=async t=>{try{return await this.caller(t).get_auto_finalization_status({})}catch(o){throw fo(o)?new cs("getFinalizationStatus"):o}}};var jo=async({agent:e,rootOptions:t,certified:o=!0})=>{let s=ns.create({...t,agent:e}),{ledger:n,swap:i,governance:a,index:c}=await s.listSnsCanisters({certified:o}),u=(0,qe.fromNullable)(a),d=(0,qe.fromNullable)(n),l=(0,qe.fromNullable)(i),r=(0,qe.fromNullable)(c);return(0,qe.assertNonNullish)(u),(0,qe.assertNonNullish)(d),(0,qe.assertNonNullish)(l),(0,qe.assertNonNullish)(r),new ls({root:s,governance:os.create({canisterId:u,agent:e}),ledger:fs.IcrcLedgerCanister.create({canisterId:d,agent:e}),swap:rs.create({canisterId:l,agent:e}),index:fs.IcrcIndexCanister.create({canisterId:r,agent:e}),certified:o})};0&&(module.exports={GetOpenTicketErrorType,NewSaleTicketResponseErrorType,SnsGovernanceCanister,SnsGovernanceError,SnsGovernanceTestCanister,SnsNeuronPermissionType,SnsProposalDecisionStatus,SnsProposalRewardStatus,SnsRootCanister,SnsSwapCanister,SnsSwapGetOpenTicketError,SnsSwapLifecycle,SnsSwapNewTicketError,SnsVote,SnsWrapper,UnsupportedMethodError,fromCandidAction,initSnsWrapper,neuronSubaccount});
|
|
1
|
+
"use strict";var Ts=Object.defineProperty;var xn=Object.getOwnPropertyDescriptor;var Sn=Object.getOwnPropertyNames;var Vn=Object.prototype.hasOwnProperty;var wn=(e,t)=>{for(var s in t)Ts(e,s,{get:t[s],enumerable:!0})},Tn=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Sn(t))!Vn.call(e,o)&&o!==s&&Ts(e,o,{get:()=>t[o],enumerable:!(n=xn(t,o))||n.enumerable});return e};var Pn=e=>Tn(Ts({},"__esModule",{value:!0}),e);var so={};wn(so,{GetOpenTicketErrorType:()=>on,NewSaleTicketResponseErrorType:()=>an,SnsGovernanceCanister:()=>ns,SnsGovernanceError:()=>P,SnsGovernanceTestCanister:()=>ms,SnsNeuronPermissionType:()=>Ls,SnsProposalDecisionStatus:()=>tn,SnsProposalRewardStatus:()=>en,SnsRootCanister:()=>os,SnsSwapCanister:()=>rs,SnsSwapGetOpenTicketError:()=>_s,SnsSwapLifecycle:()=>nn,SnsSwapNewTicketError:()=>ps,SnsVote:()=>sn,SnsWrapper:()=>ls,UnsupportedMethodError:()=>cs,fromCandidAction:()=>Is,initSnsWrapper:()=>to,neuronSubaccount:()=>As});module.exports=Pn(so);var r=require("@dfinity/utils");var ss=({neuronId:{id:e},command:t})=>({subaccount:e,command:[t]}),is=({neuronId:e,operation:t})=>ss({neuronId:e,command:{Configure:{operation:[t]}}}),Es=({owner:e,subaccount:t})=>({owner:(0,r.toNullable)(e),subaccount:t===void 0?[]:(0,r.toNullable)({subaccount:t})}),Us=({neuronId:e,permissions:t,principal:s})=>ss({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),Bs=({neuronId:e,permissions:t,principal:s})=>ss({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),Gs=({neuronId:e,memo:t,amount:s})=>ss({neuronId:e,command:{Split:{memo:t,amount_e8s:s}}}),qs=({neuronId:e,amount:t,toAccount:s})=>ss({neuronId:e,command:{Disburse:{to_account:s===void 0?[]:(0,r.toNullable)(Es(s)),amount:t===void 0?[]:[{e8s:t}]}}}),zs=e=>is({neuronId:e,operation:{StartDissolving:{}}}),Ws=e=>is({neuronId:e,operation:{StopDissolving:{}}}),Hs=({neuronId:e,percentageToStake:t})=>ss({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,r.toNullable)(t)}}}),js=({neuronId:e,percentageToDisburse:t,toAccount:s})=>ss({neuronId:e,command:{DisburseMaturity:{to_account:s===void 0?[]:(0,r.toNullable)(Es(s)),percentage_to_disburse:t}}}),Qs=({neuronId:e,autoStake:t})=>is({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),Js=({neuronId:e,dissolveTimestampSeconds:t})=>is({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:t}}}),Ys=({neuronId:e,additionalDissolveDelaySeconds:t})=>is({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Xs=({neuronId:e,functionId:t,followees:s})=>({subaccount:e.id,command:[{Follow:{function_id:t,followees:s}}]}),Ks=({neuronId:e,topicFollowing:t})=>({subaccount:e.id,command:[{SetFollowing:{topic_following:t.map(({topic:s,followees:n})=>({topic:[s],followees:n.map(({neuronId:o,alias:c})=>({neuron_id:(0,r.toNullable)(o),alias:(0,r.toNullable)(c)}))}))}}]}),$s=({neuronId:e,proposalId:t,vote:s})=>({subaccount:e.id,command:[{RegisterVote:{vote:s,proposal:[t]}}]}),bs=({subaccount:e,memo:t,controller:s})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[t===void 0?{NeuronId:{}}:{MemoAndController:{memo:t,controller:(0,r.toNullable)(s)}}]}}]}),Zs=({excludeType:e,beforeProposal:t,includeRewardStatus:s,includeStatus:n,limit:o,includeTopics:c})=>({exclude_type:BigUint64Array.from(e??[]),before_proposal:(0,r.toNullable)(t),include_reward_status:Int32Array.from(s??[]),include_status:Int32Array.from(n??[]),limit:o??10,include_topics:(0,r.toNullable)((c==null?void 0:c.map(a=>({topic:(0,r.toNullable)(a)})))??[])}),Is=e=>{if("ManageNervousSystemParameters"in e)return{ManageNervousSystemParameters:Xn(e.ManageNervousSystemParameters)};if("AdvanceSnsTargetVersion"in e)return{AdvanceSnsTargetVersion:Mn(e.AdvanceSnsTargetVersion)};if("AddGenericNervousSystemFunction"in e)return{AddGenericNervousSystemFunction:Jn(e.AddGenericNervousSystemFunction)};if("ManageDappCanisterSettings"in e)return{ManageDappCanisterSettings:kn(e.ManageDappCanisterSettings)};if("ManageLedgerParameters"in e)return{ManageLedgerParameters:Fn(e.ManageLedgerParameters)};if("ExecuteExtensionOperation"in e)return{ExecuteExtensionOperation:An(e.ExecuteExtensionOperation)};if("UpgradeExtension"in e)return{UpgradeExtension:En(e.UpgradeExtension)};if("SetTopicsForCustomProposals"in e)return{SetTopicsForCustomProposals:e.SetTopicsForCustomProposals};if("RegisterExtension"in e)return{RegisterExtension:Kn(e.RegisterExtension)};if("RemoveGenericNervousSystemFunction"in e)return{RemoveGenericNervousSystemFunction:e.RemoveGenericNervousSystemFunction};if("UpgradeSnsToNextVersion"in e)return{UpgradeSnsToNextVersion:e.UpgradeSnsToNextVersion};if("RegisterDappCanisters"in e)return{RegisterDappCanisters:e.RegisterDappCanisters};if("TransferSnsTreasuryFunds"in e)return{TransferSnsTreasuryFunds:zn(e.TransferSnsTreasuryFunds)};if("UpgradeSnsControlledCanister"in e)return{UpgradeSnsControlledCanister:qn(e.UpgradeSnsControlledCanister)};if("DeregisterDappCanisters"in e)return{DeregisterDappCanisters:e.DeregisterDappCanisters};if("MintSnsTokens"in e)return{MintSnsTokens:Wn(e.MintSnsTokens)};if("Unspecified"in e)return{Unspecified:e.Unspecified};if("ManageSnsMetadata"in e)return{ManageSnsMetadata:Cn(e.ManageSnsMetadata)};if("ExecuteGenericNervousSystemFunction"in e)return{ExecuteGenericNervousSystemFunction:e.ExecuteGenericNervousSystemFunction};if("Motion"in e)return{Motion:e.Motion};(0,r.assertNever)(e,`Unknown action type ${JSON.stringify(e)}`)},Cn=e=>({url:(0,r.fromNullable)(e.url),logo:(0,r.fromNullable)(e.logo),name:(0,r.fromNullable)(e.name),description:(0,r.fromNullable)(e.description)}),Fn=e=>({token_symbol:(0,r.fromNullable)(e.token_symbol),transfer_fee:(0,r.fromNullable)(e.transfer_fee),token_logo:(0,r.fromNullable)(e.token_logo),token_name:(0,r.fromNullable)(e.token_name)}),Mn=e=>({new_target:Hn((0,r.fromNullable)(e.new_target))}),kn=e=>({freezing_threshold:(0,r.fromNullable)(e.freezing_threshold),wasm_memory_threshold:(0,r.fromNullable)(e.wasm_memory_threshold),canister_ids:e.canister_ids,reserved_cycles_limit:(0,r.fromNullable)(e.reserved_cycles_limit),log_visibility:(0,r.fromNullable)(e.log_visibility),wasm_memory_limit:(0,r.fromNullable)(e.wasm_memory_limit),memory_allocation:(0,r.fromNullable)(e.memory_allocation),compute_allocation:(0,r.fromNullable)(e.compute_allocation)}),An=e=>({extension_canister_id:(0,r.fromNullable)(e.extension_canister_id),operation_name:(0,r.fromNullable)(e.operation_name),operation_arg:Un((0,r.fromNullable)(e.operation_arg))}),En=e=>({extension_canister_id:(0,r.fromNullable)(e.extension_canister_id),wasm:Gn((0,r.fromNullable)(e.wasm)),canister_upgrade_arg:Bn((0,r.fromNullable)(e.canister_upgrade_arg))}),Cs=e=>({wasm_module_hash:e.wasm_module_hash,store_canister_id:(0,r.fromNullable)(e.store_canister_id),chunk_hashes_list:e.chunk_hashes_list}),Un=e=>Ds(e),Bn=e=>Ds(e),Ds=e=>{if(e===void 0)return;let t=(0,r.fromNullable)(e.value);return{value:t===void 0?void 0:Ps(t)}},Ps=e=>{if("Int"in e)return{Int:e.Int};if("Nat"in e)return{Nat:e.Nat};if("Blob"in e)return{Blob:e.Blob};if("Bool"in e)return{Bool:e.Bool};if("Text"in e)return{Text:e.Text};if("Array"in e)return{Array:e.Array.map(Ps)};if("Map"in e)return{Map:e.Map.map(([t,s])=>[t,Ps(s)])};(0,r.assertNever)(e,`Unknown PreciseValue ${JSON.stringify(e,r.jsonReplacer)}`)},Gn=e=>{if(e!==void 0){if("Chunked"in e)return{Chunked:Cs(e.Chunked)};if("Bytes"in e)return{Bytes:e.Bytes};(0,r.assertNever)(e,`Unknown Wasm type ${JSON.stringify(e,r.jsonReplacer)}`)}},qn=e=>{var t;return{new_canister_wasm:e.new_canister_wasm,chunked_canister_wasm:((t=e.chunked_canister_wasm)==null?void 0:t[0])!==void 0?Cs(e.chunked_canister_wasm[0]):void 0,canister_id:(0,r.fromNullable)(e.canister_id),canister_upgrade_arg:(0,r.fromNullable)(e.canister_upgrade_arg),mode:(0,r.fromNullable)(e.mode)}},zn=e=>({from_treasury:e.from_treasury,to_principal:(0,r.fromNullable)(e.to_principal),to_subaccount:(0,r.fromNullable)(e.to_subaccount),memo:(0,r.fromNullable)(e.memo),amount_e8s:e.amount_e8s}),Wn=e=>({to_principal:(0,r.fromNullable)(e.to_principal),to_subaccount:(0,r.fromNullable)(e.to_subaccount),memo:(0,r.fromNullable)(e.memo),amount_e8s:(0,r.fromNullable)(e.amount_e8s)}),Hn=e=>{if(e!==void 0)return{archive_wasm_hash:(0,r.fromNullable)(e.archive_wasm_hash),root_wasm_hash:(0,r.fromNullable)(e.root_wasm_hash),swap_wasm_hash:(0,r.fromNullable)(e.swap_wasm_hash),ledger_wasm_hash:(0,r.fromNullable)(e.ledger_wasm_hash),governance_wasm_hash:(0,r.fromNullable)(e.governance_wasm_hash),index_wasm_hash:(0,r.fromNullable)(e.index_wasm_hash)}},jn=e=>({validator_canister_id:(0,r.fromNullable)(e.validator_canister_id),target_canister_id:(0,r.fromNullable)(e.target_canister_id),validator_method_name:(0,r.fromNullable)(e.validator_method_name),target_method_name:(0,r.fromNullable)(e.target_method_name),topic:(0,r.fromNullable)(e.topic)}),Qn=e=>{if(e!==void 0){if("NativeNervousSystemFunction"in e)return{NativeNervousSystemFunction:e.NativeNervousSystemFunction};if("GenericNervousSystemFunction"in e)return{GenericNervousSystemFunction:jn(e.GenericNervousSystemFunction)};(0,r.assertNever)(e,`Unknown FunctionType ${JSON.stringify(e)}`)}},Jn=e=>({id:e.id,name:e.name,description:(0,r.fromNullable)(e.description),function_type:Qn((0,r.fromNullable)(e.function_type))}),Yn=e=>e&&{final_reward_rate_basis_points:(0,r.fromNullable)(e.final_reward_rate_basis_points),initial_reward_rate_basis_points:(0,r.fromNullable)(e.initial_reward_rate_basis_points),reward_rate_transition_duration_seconds:(0,r.fromNullable)(e.reward_rate_transition_duration_seconds),round_duration_seconds:(0,r.fromNullable)(e.round_duration_seconds)},Xn=e=>({default_followees:(0,r.fromNullable)(e.default_followees),max_dissolve_delay_seconds:(0,r.fromNullable)(e.max_dissolve_delay_seconds),max_dissolve_delay_bonus_percentage:(0,r.fromNullable)(e.max_dissolve_delay_bonus_percentage),max_followees_per_function:(0,r.fromNullable)(e.max_followees_per_function),neuron_claimer_permissions:(0,r.fromNullable)(e.neuron_claimer_permissions),neuron_minimum_stake_e8s:(0,r.fromNullable)(e.neuron_minimum_stake_e8s),max_neuron_age_for_age_bonus:(0,r.fromNullable)(e.max_neuron_age_for_age_bonus),initial_voting_period_seconds:(0,r.fromNullable)(e.initial_voting_period_seconds),neuron_minimum_dissolve_delay_to_vote_seconds:(0,r.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote_seconds),reject_cost_e8s:(0,r.fromNullable)(e.reject_cost_e8s),max_proposals_to_keep_per_action:(0,r.fromNullable)(e.max_proposals_to_keep_per_action),wait_for_quiet_deadline_increase_seconds:(0,r.fromNullable)(e.wait_for_quiet_deadline_increase_seconds),max_number_of_neurons:(0,r.fromNullable)(e.max_number_of_neurons),transaction_fee_e8s:(0,r.fromNullable)(e.transaction_fee_e8s),max_number_of_proposals_with_ballots:(0,r.fromNullable)(e.max_number_of_proposals_with_ballots),max_age_bonus_percentage:(0,r.fromNullable)(e.max_age_bonus_percentage),neuron_grantable_permissions:(0,r.fromNullable)(e.neuron_grantable_permissions),voting_rewards_parameters:Yn((0,r.fromNullable)(e.voting_rewards_parameters)),max_number_of_principals_per_neuron:(0,r.fromNullable)(e.max_number_of_principals_per_neuron),automatically_advance_target_version:(0,r.fromNullable)(e.automatically_advance_target_version)}),Kn=e=>{var t;return{chunked_canister_wasm:((t=e.chunked_canister_wasm)==null?void 0:t[0])!==void 0?Cs(e.chunked_canister_wasm[0]):void 0,extension_init:(0,r.fromNullable)(e.extension_init)}};var Ls=(i=>(i[i.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",i[i.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",i[i.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",i[i.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",i[i.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",i[i.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",i[i.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",i[i.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",i[i.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",i[i.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",i[i.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",i))(Ls||{}),en=(o=>(o[o.PROPOSAL_REWARD_STATUS_UNSPECIFIED=0]="PROPOSAL_REWARD_STATUS_UNSPECIFIED",o[o.PROPOSAL_REWARD_STATUS_ACCEPT_VOTES=1]="PROPOSAL_REWARD_STATUS_ACCEPT_VOTES",o[o.PROPOSAL_REWARD_STATUS_READY_TO_SETTLE=2]="PROPOSAL_REWARD_STATUS_READY_TO_SETTLE",o[o.PROPOSAL_REWARD_STATUS_SETTLED=3]="PROPOSAL_REWARD_STATUS_SETTLED",o))(en||{}),tn=(a=>(a[a.PROPOSAL_DECISION_STATUS_UNSPECIFIED=0]="PROPOSAL_DECISION_STATUS_UNSPECIFIED",a[a.PROPOSAL_DECISION_STATUS_OPEN=1]="PROPOSAL_DECISION_STATUS_OPEN",a[a.PROPOSAL_DECISION_STATUS_REJECTED=2]="PROPOSAL_DECISION_STATUS_REJECTED",a[a.PROPOSAL_DECISION_STATUS_ADOPTED=3]="PROPOSAL_DECISION_STATUS_ADOPTED",a[a.PROPOSAL_DECISION_STATUS_EXECUTED=4]="PROPOSAL_DECISION_STATUS_EXECUTED",a[a.PROPOSAL_DECISION_STATUS_FAILED=5]="PROPOSAL_DECISION_STATUS_FAILED",a))(tn||{}),sn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(sn||{});var nn=(a=>(a[a.Unspecified=0]="Unspecified",a[a.Pending=1]="Pending",a[a.Open=2]="Open",a[a.Committed=3]="Committed",a[a.Aborted=4]="Aborted",a[a.Adopted=5]="Adopted",a))(nn||{}),on=(n=>(n[n.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",n[n.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",n[n.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",n))(on||{}),an=(p=>(p[p.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",p[p.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",p[p.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",p[p.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",p[p.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",p[p.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",p[p.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",p))(an||{});var cs=class extends Error{constructor(s){super();this.methodName=s}};var P=class extends Error{};var ps=class extends Error{errorType;invalidUserAmount;existingTicket;constructor({errorType:t,invalidUserAmount:s,existingTicket:n}){super(),this.errorType=t,this.invalidUserAmount=s,this.existingTicket=n}},_s=class extends Error{constructor(s){super();this.errorType=s}};var b=require("@dfinity/utils");var rn=({IDL:e})=>{let t=e.Rec(),s=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),n=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)}),o=e.Record({versions:e.Vec(n)}),c=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),p=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:p}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),i=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(i),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(n),new_target_version:e.Opt(n),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(n)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(n),expected_version:e.Opt(n),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(o)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(n),new_target_version:e.Opt(n)}),B=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(B)}),_=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(_)}),G=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),g=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(G),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(g),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(g),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(n)}),R=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(i),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),ge=e.Record({canister_ids:e.Vec(e.Principal)}),Re=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),ne=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),oe=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ge,TransferSnsTreasuryFunds:Re,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:ne,MintSnsTokens:ye,AdvanceSnsTargetVersion:oe,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(R),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(_),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(_)}),$=e.Record({to_account:e.Opt(i),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(_)}),Ce=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Fe=e.Record({topic_following:e.Vec(Ce)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(i)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(i),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Fe,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(i),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({id:e.Opt(_),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Ce))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(c),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(C),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(n),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,F)),target_version:e.Opt(n),genesis_timestamp_seconds:e.Nat64}),nt=e.Record({principals:e.Vec(e.Principal)}),ot=e.Record({nns_neuron_hotkeys:e.Opt(nt),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),at=e.Variant({NeuronsFund:ot,Direct:e.Record({})}),rt=e.Record({neuron_ids:e.Vec(_)}),it=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(at),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(rt),neuron_id:e.Opt(_)}),ct=e.Record({neuron_recipes:e.Vec(it)}),pt=e.Record({neuron_recipes:e.Opt(ct)}),_t=e.Record({id:e.Opt(_),status:e.Int32}),dt=e.Record({swap_neurons:e.Vec(_t)}),ut=e.Variant({Ok:dt,Err:e.Int32}),lt=e.Record({claim_swap_neurons_result:e.Opt(ut)}),mt=e.Record({maturity_modulation:e.Opt(f)}),Ot=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ze=e.Record({time_window_seconds:e.Opt(e.Nat64)}),Nt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),gt=e.Variant({Ok:Nt,Err:R}),We=e.Record({get_metrics_result:e.Opt(gt)}),He=e.Record({mode:e.Opt(e.Int32)}),Rt=e.Record({neuron_id:e.Opt(_)}),yt=e.Variant({Error:R,Neuron:F}),je=e.Record({result:e.Opt(yt)}),Qe=e.Record({proposal_id:e.Opt(m)}),ft=e.Variant({Error:R,Proposal:T}),ht=e.Record({result:e.Opt(ft)}),vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),Je=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),xt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),St=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),Vt=e.Record({memory_metrics:e.Opt(vt),status:Je,memory_size:e.Nat,cycles:e.Nat,settings:xt,query_stats:e.Opt(St),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),wt=e.Record({deployed_version:e.Opt(n),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(n)}))}),Tt=e.Record({sns_initialization_parameters:e.Text}),Pt=e.Record({timers:e.Opt(s)}),bt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Ct=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(n),target_version:e.Opt(n),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Ft=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Mt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(_)}),kt=e.Record({neurons:e.Vec(F)}),At=e.Record({topic:e.Opt(a)}),Et=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(At)),include_status:e.Vec(e.Int32)}),Ut=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Bt=e.Record({}),Gt=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),qt=e.Variant({TreasuryManager:e.Null}),zt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Gt),description:e.Opt(e.Text),extension_type:e.Opt(qt)}),Wt=e.Record({spec:e.Opt(zt),canister_id:e.Opt(e.Principal)}),Ht=e.Record({extension_operations:e.Opt(e.Vec(Wt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),jt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Ht))}),Qt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Jt=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Fe,MakeProposal:w,StakeMaturity:Qt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Yt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Jt)}),Xt=e.Record({created_neuron_id:e.Opt(_)}),Kt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),$t=e.Record({refreshed_neuron_id:e.Opt(_)}),Zt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),It=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Dt=e.Record({transfer_block_height:e.Nat64}),Lt=e.Variant({Error:R,Split:Xt,Follow:e.Record({}),DisburseMaturity:Kt,ClaimOrRefresh:$t,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Qe,RemoveNeuronPermission:e.Record({}),StakeMaturity:Zt,MergeMaturity:It,Disburse:Dt,AddNeuronPermission:e.Record({})}),es=e.Record({command:e.Opt(Lt)}),ts=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([pt],[lt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[S],[]),get_maturity_modulation:e.Func([e.Record({})],[mt],[]),get_metadata:e.Func([e.Record({})],[Ot],[]),get_metrics:e.Func([ze],[We],[]),get_metrics_replicated:e.Func([ze],[We],[]),get_mode:e.Func([e.Record({})],[He],[]),get_nervous_system_parameters:e.Func([e.Null],[h],[]),get_neuron:e.Func([Rt],[je],[]),get_proposal:e.Func([Qe],[ht],[]),get_root_canister_status:e.Func([e.Null],[Vt],[]),get_running_sns_version:e.Func([e.Record({})],[wt],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Tt],[]),get_timers:e.Func([e.Record({})],[Pt],[]),get_upgrade_journal:e.Func([bt],[Ct],[]),list_nervous_system_functions:e.Func([],[Ft],[]),list_neurons:e.Func([Mt],[kt],[]),list_proposals:e.Func([Et],[Ut],[]),list_topics:e.Func([Bt],[jt],[]),manage_neuron:e.Func([Yt],[es],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ts],[e.Record({})],[])})};var cn=({IDL:e})=>{let t=e.Rec(),s=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),n=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)}),o=e.Record({versions:e.Vec(n)}),c=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),p=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:p}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),i=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(i),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(n),new_target_version:e.Opt(n),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(n)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(n),expected_version:e.Opt(n),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(o)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(n),new_target_version:e.Opt(n)}),B=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(B)}),_=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(_)}),G=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),g=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(G),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(g),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(g),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(n)}),R=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(i),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),ge=e.Record({canister_ids:e.Vec(e.Principal)}),Re=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),ne=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),oe=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ge,TransferSnsTreasuryFunds:Re,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:ne,MintSnsTokens:ye,AdvanceSnsTargetVersion:oe,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(R),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(_),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(_)}),$=e.Record({to_account:e.Opt(i),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(_)}),Ce=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Fe=e.Record({topic_following:e.Vec(Ce)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(i)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(i),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Fe,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(i),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({id:e.Opt(_),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Ce))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(c),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(C),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(n),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,F)),target_version:e.Opt(n),genesis_timestamp_seconds:e.Nat64}),nt=e.Record({principals:e.Vec(e.Principal)}),ot=e.Record({nns_neuron_hotkeys:e.Opt(nt),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),at=e.Variant({NeuronsFund:ot,Direct:e.Record({})}),rt=e.Record({neuron_ids:e.Vec(_)}),it=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(at),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(rt),neuron_id:e.Opt(_)}),ct=e.Record({neuron_recipes:e.Vec(it)}),pt=e.Record({neuron_recipes:e.Opt(ct)}),_t=e.Record({id:e.Opt(_),status:e.Int32}),dt=e.Record({swap_neurons:e.Vec(_t)}),ut=e.Variant({Ok:dt,Err:e.Int32}),lt=e.Record({claim_swap_neurons_result:e.Opt(ut)}),mt=e.Record({maturity_modulation:e.Opt(f)}),Ot=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ze=e.Record({time_window_seconds:e.Opt(e.Nat64)}),Nt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),gt=e.Variant({Ok:Nt,Err:R}),We=e.Record({get_metrics_result:e.Opt(gt)}),He=e.Record({mode:e.Opt(e.Int32)}),Rt=e.Record({neuron_id:e.Opt(_)}),yt=e.Variant({Error:R,Neuron:F}),je=e.Record({result:e.Opt(yt)}),Qe=e.Record({proposal_id:e.Opt(m)}),ft=e.Variant({Error:R,Proposal:T}),ht=e.Record({result:e.Opt(ft)}),vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),Je=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),xt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),St=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),Vt=e.Record({memory_metrics:e.Opt(vt),status:Je,memory_size:e.Nat,cycles:e.Nat,settings:xt,query_stats:e.Opt(St),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),wt=e.Record({deployed_version:e.Opt(n),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(n)}))}),Tt=e.Record({sns_initialization_parameters:e.Text}),Pt=e.Record({timers:e.Opt(s)}),bt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Ct=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(n),target_version:e.Opt(n),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Ft=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Mt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(_)}),kt=e.Record({neurons:e.Vec(F)}),At=e.Record({topic:e.Opt(a)}),Et=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(At)),include_status:e.Vec(e.Int32)}),Ut=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Bt=e.Record({}),Gt=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),qt=e.Variant({TreasuryManager:e.Null}),zt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Gt),description:e.Opt(e.Text),extension_type:e.Opt(qt)}),Wt=e.Record({spec:e.Opt(zt),canister_id:e.Opt(e.Principal)}),Ht=e.Record({extension_operations:e.Opt(e.Vec(Wt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),jt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Ht))}),Qt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Jt=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Fe,MakeProposal:w,StakeMaturity:Qt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Yt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Jt)}),Xt=e.Record({created_neuron_id:e.Opt(_)}),Kt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),$t=e.Record({refreshed_neuron_id:e.Opt(_)}),Zt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),It=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Dt=e.Record({transfer_block_height:e.Nat64}),Lt=e.Variant({Error:R,Split:Xt,Follow:e.Record({}),DisburseMaturity:Kt,ClaimOrRefresh:$t,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Qe,RemoveNeuronPermission:e.Record({}),StakeMaturity:Zt,MergeMaturity:It,Disburse:Dt,AddNeuronPermission:e.Record({})}),es=e.Record({command:e.Opt(Lt)}),ts=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([pt],[lt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[S],["query"]),get_maturity_modulation:e.Func([e.Record({})],[mt],[]),get_metadata:e.Func([e.Record({})],[Ot],["query"]),get_metrics:e.Func([ze],[We],["composite_query"]),get_metrics_replicated:e.Func([ze],[We],[]),get_mode:e.Func([e.Record({})],[He],["query"]),get_nervous_system_parameters:e.Func([e.Null],[h],["query"]),get_neuron:e.Func([Rt],[je],["query"]),get_proposal:e.Func([Qe],[ht],["query"]),get_root_canister_status:e.Func([e.Null],[Vt],[]),get_running_sns_version:e.Func([e.Record({})],[wt],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Tt],["query"]),get_timers:e.Func([e.Record({})],[Pt],["query"]),get_upgrade_journal:e.Func([bt],[Ct],["query"]),list_nervous_system_functions:e.Func([],[Ft],["query"]),list_neurons:e.Func([Mt],[kt],["query"]),list_proposals:e.Func([Et],[Ut],["query"]),list_topics:e.Func([Bt],[jt],["query"]),manage_neuron:e.Func([Yt],[es],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ts],[e.Record({})],[])})};var ns=class e extends b.Canister{static create(t){let{service:s,certifiedService:n,canisterId:o}=(0,b.createServices)({options:t,idlFactory:cn,certifiedIdlFactory:rn});return new e(o,s,n)}listNeurons=async t=>{let{principal:s,limit:n,beforeNeuronId:o}=t,{neurons:c}=await this.caller(t).list_neurons({of_principal:(0,b.toNullable)(s),limit:n??100,start_page_at:(0,b.toNullable)(o)});return c};listProposals=async t=>{let{certified:s}=t;return await this.caller({certified:s}).list_proposals(Zs(t))};listTopics=async t=>{let{certified:s}=t;return await this.caller({certified:s}).list_topics({})};getProposal=async t=>{let{proposalId:s}=t,{result:n}=await this.caller(t).get_proposal({proposal_id:(0,b.toNullable)(s)}),o=(0,b.fromNullable)(n);if(o===void 0||"Error"in o)throw new P((o==null?void 0:o.Error.error_message)??"Response type not supported");return o.Proposal};listNervousSystemFunctions=t=>this.caller(t).list_nervous_system_functions();metadata=t=>this.caller(t).get_metadata({});nervousSystemParameters=t=>this.caller(t).get_nervous_system_parameters(null);getNeuron=async t=>{let{neuronId:s}=t,{result:n}=await this.caller(t).get_neuron({neuron_id:(0,b.toNullable)(s)}),o=(0,b.fromNullable)(n);if(o===void 0||"Error"in o)throw new P((o==null?void 0:o.Error.error_message)??"Response type not supported");return o.Neuron};queryNeuron=async t=>{try{return await this.getNeuron(t)}catch(s){if(s instanceof Error&&s.message.includes("No neuron for given NeuronId"))return;throw s}};manageNeuron=async t=>{let s=await this.caller({certified:!0}).manage_neuron(t);return this.assertManageNeuronError(s),s};addNeuronPermissions=async t=>{let s=Us(t);await this.manageNeuron(s)};removeNeuronPermissions=async t=>{let s=Bs(t);await this.manageNeuron(s)};splitNeuron=async t=>{let s=Gs(t),{command:n}=await this.manageNeuron(s),o=(0,b.fromNullable)(n),c=a=>`Split neuron failed (${a})`;if(o===void 0)throw new P(c("no response"));if("Split"in o){let a=o.Split,p=(0,b.fromNullable)(a.created_neuron_id);if(p!==void 0)return p;throw new P(c("no id"))}throw new P(c("unknown"))};disburse=async t=>{let s=qs(t);await this.manageNeuron(s)};startDissolving=async t=>{let s=zs(t);await this.manageNeuron(s)};stopDissolving=async t=>{let s=Ws(t);await this.manageNeuron(s)};stakeMaturity=async({neuronId:t,percentageToStake:s})=>{(0,b.assertPercentageNumber)(s??100);let n=Hs({neuronId:t,percentageToStake:s});await this.manageNeuron(n)};disburseMaturity=async t=>{(0,b.assertPercentageNumber)(t.percentageToDisburse);let s=js(t);await this.manageNeuron(s)};autoStakeMaturity=async t=>{let s=Qs(t);await this.manageNeuron(s)};setDissolveTimestamp=async t=>{let s=Js(t);await this.manageNeuron(s)};increaseDissolveDelay=async t=>{let s=Ys(t);await this.manageNeuron(s)};setTopicFollowees=async t=>{let s=Xs(t);await this.manageNeuron(s)};setFollowing=async t=>{let s=Ks(t);await this.manageNeuron(s)};registerVote=async t=>{let s=$s(t);await this.manageNeuron(s)};refreshNeuron=async t=>{let s=bs({subaccount:t.id});await this.manageNeuron(s)};claimNeuron=async({memo:t,controller:s,subaccount:n})=>{let o=bs({subaccount:n,memo:t,controller:s}),{command:c}=await this.manageNeuron(o),a=(0,b.fromNullable)(c);if(a===void 0)throw new P("Claim neuron failed");if("ClaimOrRefresh"in a){let p=(0,b.fromNullable)(a.ClaimOrRefresh.refreshed_neuron_id);if(p===void 0)throw new P("Claim neuron failed");return p}throw new P("Claim neuron failed")};assertManageNeuronError=({command:t})=>{let[s]=t;if(s!==void 0&&"Error"in s)throw new P(s.Error.error_message)}};var Be=require("@dfinity/utils");var pn=({IDL:e})=>{let t=e.Rec(),s=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),n=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)}),o=e.Record({versions:e.Vec(n)}),c=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),p=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:p}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),i=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(i),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(n),new_target_version:e.Opt(n),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(n)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(n),expected_version:e.Opt(n),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(o)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(n),new_target_version:e.Opt(n)}),B=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(B)}),_=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(_)}),G=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),g=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(G),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(g),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(g),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(n)}),R=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(i),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),ge=e.Record({canister_ids:e.Vec(e.Principal)}),Re=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),ne=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),oe=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ge,TransferSnsTreasuryFunds:Re,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:ne,MintSnsTokens:ye,AdvanceSnsTargetVersion:oe,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(R),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(_),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(_)}),$=e.Record({to_account:e.Opt(i),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(_)}),Ce=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Fe=e.Record({topic_following:e.Vec(Ce)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(i)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(i),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Fe,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(i),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({id:e.Opt(_),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Ce))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(c),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(C),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(n),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,F)),target_version:e.Opt(n),genesis_timestamp_seconds:e.Nat64}),nt=e.Record({id:e.Opt(_),amount_e8s:e.Opt(e.Nat64)}),ot=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),at=e.Record({target_version:e.Opt(n)}),rt=e.Record({}),it=e.Record({principals:e.Vec(e.Principal)}),ct=e.Record({nns_neuron_hotkeys:e.Opt(it),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),pt=e.Variant({NeuronsFund:ct,Direct:e.Record({})}),_t=e.Record({neuron_ids:e.Vec(_)}),dt=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(pt),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(_t),neuron_id:e.Opt(_)}),ut=e.Record({neuron_recipes:e.Vec(dt)}),lt=e.Record({neuron_recipes:e.Opt(ut)}),mt=e.Record({id:e.Opt(_),status:e.Int32}),Ot=e.Record({swap_neurons:e.Vec(mt)}),ze=e.Variant({Ok:Ot,Err:e.Int32}),Nt=e.Record({claim_swap_neurons_result:e.Opt(ze)}),gt=e.Record({maturity_modulation:e.Opt(f)}),We=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),He=e.Record({time_window_seconds:e.Opt(e.Nat64)}),Rt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),yt=e.Variant({Ok:Rt,Err:R}),je=e.Record({get_metrics_result:e.Opt(yt)}),Qe=e.Record({mode:e.Opt(e.Int32)}),ft=e.Record({neuron_id:e.Opt(_)}),ht=e.Variant({Error:R,Neuron:F}),vt=e.Record({result:e.Opt(ht)}),Je=e.Record({proposal_id:e.Opt(m)}),xt=e.Variant({Error:R,Proposal:T}),St=e.Record({result:e.Opt(xt)}),Vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),wt=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Tt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),Pt=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),bt=e.Record({memory_metrics:e.Opt(Vt),status:wt,memory_size:e.Nat,cycles:e.Nat,settings:Tt,query_stats:e.Opt(Pt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ct=e.Record({deployed_version:e.Opt(n),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(n)}))}),Ft=e.Record({sns_initialization_parameters:e.Text}),Mt=e.Record({timers:e.Opt(s)}),kt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),At=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(n),target_version:e.Opt(n),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Et=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Ut=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(_)}),Bt=e.Record({neurons:e.Vec(F)}),Gt=e.Record({topic:e.Opt(a)}),qt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(Gt)),include_status:e.Vec(e.Int32)}),zt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Wt=e.Record({}),Ht=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),jt=e.Variant({TreasuryManager:e.Null}),Qt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Ht),description:e.Opt(e.Text),extension_type:e.Opt(jt)}),Jt=e.Record({spec:e.Opt(Qt),canister_id:e.Opt(e.Principal)}),Yt=e.Record({extension_operations:e.Opt(e.Vec(Jt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),Xt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Yt))}),Kt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),$t=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Fe,MakeProposal:w,StakeMaturity:Kt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Zt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt($t)}),It=e.Record({created_neuron_id:e.Opt(_)}),Dt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Lt=e.Record({refreshed_neuron_id:e.Opt(_)}),es=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ts=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),vs=e.Record({transfer_block_height:e.Nat64}),xs=e.Variant({Error:R,Split:It,Follow:e.Record({}),DisburseMaturity:Dt,ClaimOrRefresh:Lt,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Je,RemoveNeuronPermission:e.Record({}),StakeMaturity:es,MergeMaturity:ts,Disburse:vs,AddNeuronPermission:e.Record({})}),Ss=e.Record({command:e.Opt(xs)}),Vs=e.Record({recipient:e.Opt(i),amount_e8s:e.Opt(e.Nat64)}),ws=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([nt],[ot],[]),advance_target_version:e.Func([at],[rt],[]),claim_swap_neurons:e.Func([lt],[Nt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[S],[]),get_maturity_modulation:e.Func([e.Record({})],[gt],[]),get_metadata:e.Func([e.Record({})],[We],[]),get_metrics:e.Func([He],[je],[]),get_metrics_replicated:e.Func([He],[je],[]),get_mode:e.Func([e.Record({})],[Qe],[]),get_nervous_system_parameters:e.Func([e.Null],[h],[]),get_neuron:e.Func([ft],[vt],[]),get_proposal:e.Func([Je],[St],[]),get_root_canister_status:e.Func([e.Null],[bt],[]),get_running_sns_version:e.Func([e.Record({})],[Ct],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ft],[]),get_timers:e.Func([e.Record({})],[Mt],[]),get_upgrade_journal:e.Func([kt],[At],[]),list_nervous_system_functions:e.Func([],[Et],[]),list_neurons:e.Func([Ut],[Bt],[]),list_proposals:e.Func([qt],[zt],[]),list_topics:e.Func([Wt],[Xt],[]),manage_neuron:e.Func([Zt],[Ss],[]),mint_tokens:e.Func([Vs],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ws],[e.Record({})],[]),update_neuron:e.Func([F],[e.Opt(R)],[])})};var _n=({IDL:e})=>{let t=e.Rec(),s=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),n=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)}),o=e.Record({versions:e.Vec(n)}),c=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),a=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),p=e.Record({topic:e.Opt(a),validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:p}),d=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),l=e.Record({subaccount:e.Vec(e.Nat8)}),i=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(l)}),N=e.Record({name:e.Opt(e.Text),original_amount_e8s:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64),account:e.Opt(i),ledger_canister_id:e.Opt(e.Principal),treasury:e.Int32,timestamp_seconds:e.Opt(e.Nat64)}),y=e.Record({governance_total_potential_voting_power:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),C=e.Record({treasury_metrics:e.Vec(N),not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,voting_power_metrics:e.Opt(y),not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),f=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),M=e.Record({old_target_version:e.Opt(n),new_target_version:e.Opt(n),is_advanced_automatically:e.Opt(e.Bool)}),O=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),k=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(n)})})),human_readable:e.Opt(e.Text)}),m=e.Record({id:e.Nat64}),A=e.Record({current_version:e.Opt(n),expected_version:e.Opt(n),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:m,BehindTargetVersion:e.Record({})}))}),E=e.Record({upgrade_steps:e.Opt(o)}),U=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(n),new_target_version:e.Opt(n)}),B=e.Record({event:e.Opt(e.Variant({TargetVersionSet:M,UpgradeStepsReset:O,UpgradeOutcome:k,UpgradeStarted:A,UpgradeStepsRefreshed:E,TargetVersionReset:U})),timestamp_seconds:e.Opt(e.Nat64)}),v=e.Record({entries:e.Vec(B)}),_=e.Record({id:e.Vec(e.Nat8)}),x=e.Record({followees:e.Vec(_)}),G=e.Record({followees:e.Vec(e.Tuple(e.Nat64,x))}),g=e.Record({permissions:e.Vec(e.Int32)}),q=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),h=e.Record({default_followees:e.Opt(G),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),automatically_advance_target_version:e.Opt(e.Bool),neuron_claimer_permissions:e.Opt(g),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(g),voting_rewards_parameters:e.Opt(q),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),S=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(m)}),z=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(n)}),R=e.Record({error_message:e.Text,error_type:e.Int32}),W=e.Record({human_readable:e.Opt(e.Text)}),ae=e.Record({e8s:e.Opt(e.Nat64)}),re=e.Record({xdrs_per_icp:e.Opt(W),icps_per_token:e.Opt(W),tokens:e.Opt(ae)}),ie=e.Record({token:e.Opt(e.Int32),account:e.Opt(i),valuation_factors:e.Opt(re),timestamp_seconds:e.Opt(e.Nat64)}),H=e.Record({valuation:e.Opt(ie)}),j=e.Record({archive_wasm_hash:e.Opt(e.Vec(e.Nat8)),root_wasm_hash:e.Opt(e.Vec(e.Nat8)),swap_wasm_hash:e.Opt(e.Vec(e.Nat8)),ledger_wasm_hash:e.Opt(e.Vec(e.Nat8)),governance_wasm_hash:e.Opt(e.Vec(e.Nat8)),index_wasm_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({target_version:e.Opt(j)}),pe=e.Variant({TransferSnsTreasuryFunds:H,MintSnsTokens:H,AdvanceSnsTargetVersion:ce}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),Q=e.Record({basis_points:e.Opt(e.Nat64)}),L=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),J=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)});t.fill(e.Variant({Int:e.Int64,Map:e.Vec(e.Tuple(e.Text,t)),Nat:e.Nat64,Blob:e.Vec(e.Nat8),Bool:e.Bool,Text:e.Text,Array:e.Vec(t)}));let de=e.Record({value:e.Opt(t)}),ue=e.Record({extension_canister_id:e.Opt(e.Principal),operation_name:e.Opt(e.Text),operation_arg:e.Opt(de)}),V=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Opt(e.Principal)}),ee=e.Variant({Chunked:V,Bytes:e.Vec(e.Nat8)}),le=e.Record({value:e.Opt(t)}),me=e.Record({extension_canister_id:e.Opt(e.Principal),wasm:e.Opt(ee),canister_upgrade_arg:e.Opt(le)}),Oe=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,a))}),te=e.Record({value:e.Opt(t)}),Ne=e.Record({chunked_canister_wasm:e.Opt(V),extension_init:e.Opt(te)}),ge=e.Record({canister_ids:e.Vec(e.Principal)}),Re=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),se=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),chunked_canister_wasm:e.Opt(V),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),ne=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),ye=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(l),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),oe=e.Record({new_target:e.Opt(j)}),Y=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),fe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),he=e.Record({token_symbol:e.Opt(e.Text),transfer_fee:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text)}),ve=e.Record({motion_text:e.Text}),xe=e.Variant({ManageNervousSystemParameters:h,AddGenericNervousSystemFunction:d,ManageDappCanisterSettings:J,ExecuteExtensionOperation:ue,UpgradeExtension:me,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:Oe,RegisterExtension:Ne,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ge,TransferSnsTreasuryFunds:Re,UpgradeSnsControlledCanister:se,DeregisterDappCanisters:ne,MintSnsTokens:ye,AdvanceSnsTargetVersion:oe,Unspecified:e.Record({}),ManageSnsMetadata:Y,ExecuteGenericNervousSystemFunction:fe,ManageLedgerParameters:he,Motion:ve}),w=e.Record({url:e.Text,title:e.Text,action:e.Opt(xe),summary:e.Text}),Se=e.Record({current_deadline_timestamp_seconds:e.Nat64}),T=e.Record({id:e.Opt(m),payload_text_rendering:e.Opt(e.Text),topic:e.Opt(a),action:e.Nat64,failure_reason:e.Opt(R),action_auxiliary:e.Opt(pe),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(Q),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(L),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(w),proposer:e.Opt(_),wait_for_quiet_state:e.Opt(Se),minimum_yes_proportion_of_exercised:e.Opt(Q),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),X=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),K=e.Record({function_id:e.Nat64,followees:e.Vec(_)}),$=e.Record({to_account:e.Opt(i),percentage_to_disburse:e.Nat32}),Ve=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),we=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Te=e.Record({dissolve_timestamp_seconds:e.Nat64}),Pe=e.Variant({ChangeAutoStakeMaturity:Ve,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:we,SetDissolveTimestamp:Te}),Z=e.Record({operation:e.Opt(Pe)}),I=e.Record({vote:e.Int32,proposal:e.Opt(m)}),be=e.Record({alias:e.Opt(e.Text),neuron_id:e.Opt(_)}),Ce=e.Record({topic:e.Opt(a),followees:e.Vec(be)}),Fe=e.Record({topic_following:e.Vec(Ce)}),Ke=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(i)}),$e=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ze=e.Variant({MemoAndController:$e,NeuronId:e.Record({})}),Me=e.Record({by:e.Opt(Ze)}),ke=e.Record({permissions_to_remove:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ae=e.Record({permissions_to_add:e.Opt(g),principal_id:e.Opt(e.Principal)}),Ee=e.Record({percentage_to_merge:e.Nat32}),Ie=e.Record({e8s:e.Nat64}),Ue=e.Record({to_account:e.Opt(i),amount:e.Opt(Ie)}),De=e.Variant({Split:X,Follow:K,DisburseMaturity:$,Configure:Z,RegisterVote:I,SetFollowing:Fe,SyncCommand:e.Record({}),MakeProposal:w,FinalizeDisburseMaturity:Ke,ClaimOrRefreshNeuron:Me,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Le=e.Record({command:e.Opt(De),timestamp:e.Nat64}),et=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),tt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),st=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(i),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),F=e.Record({id:e.Opt(_),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(et),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,topic_followees:e.Opt(e.Record({topic_id_to_followees:e.Vec(e.Tuple(e.Int32,Ce))})),source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(tt),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(st),followees:e.Vec(e.Tuple(e.Nat64,x)),neuron_fees_e8s:e.Nat64}),hs=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(c),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,d)),metrics:e.Opt(C),maturity_modulation:e.Opt(f),upgrade_journal:e.Opt(v),mode:e.Int32,parameters:e.Opt(h),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(n),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(S),pending_version:e.Opt(z),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,T)),in_flight_commands:e.Vec(e.Tuple(e.Text,Le)),sns_metadata:e.Opt(Y),neurons:e.Vec(e.Tuple(e.Text,F)),target_version:e.Opt(n),genesis_timestamp_seconds:e.Nat64}),nt=e.Record({id:e.Opt(_),amount_e8s:e.Opt(e.Nat64)}),ot=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),at=e.Record({target_version:e.Opt(n)}),rt=e.Record({}),it=e.Record({principals:e.Vec(e.Principal)}),ct=e.Record({nns_neuron_hotkeys:e.Opt(it),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),pt=e.Variant({NeuronsFund:ct,Direct:e.Record({})}),_t=e.Record({neuron_ids:e.Vec(_)}),dt=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(pt),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(_t),neuron_id:e.Opt(_)}),ut=e.Record({neuron_recipes:e.Vec(dt)}),lt=e.Record({neuron_recipes:e.Opt(ut)}),mt=e.Record({id:e.Opt(_),status:e.Int32}),Ot=e.Record({swap_neurons:e.Vec(mt)}),ze=e.Variant({Ok:Ot,Err:e.Int32}),Nt=e.Record({claim_swap_neurons_result:e.Opt(ze)}),gt=e.Record({maturity_modulation:e.Opt(f)}),We=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),He=e.Record({time_window_seconds:e.Opt(e.Nat64)}),Rt=e.Record({treasury_metrics:e.Opt(e.Vec(N)),voting_power_metrics:e.Opt(y),last_ledger_block_timestamp:e.Opt(e.Nat64),num_recently_executed_proposals:e.Opt(e.Nat64),num_recently_submitted_proposals:e.Opt(e.Nat64),genesis_timestamp_seconds:e.Opt(e.Nat64)}),yt=e.Variant({Ok:Rt,Err:R}),je=e.Record({get_metrics_result:e.Opt(yt)}),Qe=e.Record({mode:e.Opt(e.Int32)}),ft=e.Record({neuron_id:e.Opt(_)}),ht=e.Variant({Error:R,Neuron:F}),vt=e.Record({result:e.Opt(ht)}),Je=e.Record({proposal_id:e.Opt(m)}),xt=e.Variant({Error:R,Proposal:T}),St=e.Record({result:e.Opt(xt)}),Vt=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),wt=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Tt=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),Pt=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),bt=e.Record({memory_metrics:e.Opt(Vt),status:wt,memory_size:e.Nat,cycles:e.Nat,settings:Tt,query_stats:e.Opt(Pt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ct=e.Record({deployed_version:e.Opt(n),pending_version:e.Opt(e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(n)}))}),Ft=e.Record({sns_initialization_parameters:e.Text}),Mt=e.Record({timers:e.Opt(s)}),kt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),At=e.Record({upgrade_journal:e.Opt(v),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(n),target_version:e.Opt(n),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Et=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(d)}),Ut=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(_)}),Bt=e.Record({neurons:e.Vec(F)}),Gt=e.Record({topic:e.Opt(a)}),qt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(m),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_topics:e.Opt(e.Vec(Gt)),include_status:e.Vec(e.Int32)}),zt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(T),include_topic_filtering:e.Opt(e.Bool)}),Wt=e.Record({}),Ht=e.Variant({TreasuryManagerWithdraw:e.Null,TreasuryManagerDeposit:e.Null}),jt=e.Variant({TreasuryManager:e.Null}),Qt=e.Record({topic:e.Opt(a),operation_type:e.Opt(Ht),description:e.Opt(e.Text),extension_type:e.Opt(jt)}),Jt=e.Record({spec:e.Opt(Qt),canister_id:e.Opt(e.Principal)}),Yt=e.Record({extension_operations:e.Opt(e.Vec(Jt)),native_functions:e.Opt(e.Vec(d)),topic:e.Opt(a),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(d))}),Xt=e.Record({uncategorized_functions:e.Opt(e.Vec(d)),topics:e.Opt(e.Vec(Yt))}),Kt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),$t=e.Variant({Split:X,Follow:K,DisburseMaturity:$,ClaimOrRefresh:Me,Configure:Z,RegisterVote:I,SetFollowing:Fe,MakeProposal:w,StakeMaturity:Kt,RemoveNeuronPermissions:ke,AddNeuronPermissions:Ae,MergeMaturity:Ee,Disburse:Ue}),Zt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt($t)}),It=e.Record({created_neuron_id:e.Opt(_)}),Dt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Lt=e.Record({refreshed_neuron_id:e.Opt(_)}),es=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ts=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),vs=e.Record({transfer_block_height:e.Nat64}),xs=e.Variant({Error:R,Split:It,Follow:e.Record({}),DisburseMaturity:Dt,ClaimOrRefresh:Lt,Configure:e.Record({}),RegisterVote:e.Record({}),SetFollowing:e.Record({}),MakeProposal:Je,RemoveNeuronPermission:e.Record({}),StakeMaturity:es,MergeMaturity:ts,Disburse:vs,AddNeuronPermission:e.Record({})}),Ss=e.Record({command:e.Opt(xs)}),Vs=e.Record({recipient:e.Opt(i),amount_e8s:e.Opt(e.Nat64)}),ws=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([nt],[ot],[]),advance_target_version:e.Func([at],[rt],[]),claim_swap_neurons:e.Func([lt],[Nt],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[S],["query"]),get_maturity_modulation:e.Func([e.Record({})],[gt],[]),get_metadata:e.Func([e.Record({})],[We],["query"]),get_metrics:e.Func([He],[je],["composite_query"]),get_metrics_replicated:e.Func([He],[je],[]),get_mode:e.Func([e.Record({})],[Qe],["query"]),get_nervous_system_parameters:e.Func([e.Null],[h],["query"]),get_neuron:e.Func([ft],[vt],["query"]),get_proposal:e.Func([Je],[St],["query"]),get_root_canister_status:e.Func([e.Null],[bt],[]),get_running_sns_version:e.Func([e.Record({})],[Ct],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ft],["query"]),get_timers:e.Func([e.Record({})],[Mt],["query"]),get_upgrade_journal:e.Func([kt],[At],["query"]),list_nervous_system_functions:e.Func([],[Et],["query"]),list_neurons:e.Func([Ut],[Bt],["query"]),list_proposals:e.Func([qt],[zt],["query"]),list_topics:e.Func([Wt],[Xt],["query"]),manage_neuron:e.Func([Zt],[Ss],[]),mint_tokens:e.Func([Vs],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ws],[e.Record({})],[]),update_neuron:e.Func([F],[e.Opt(R)],[])})};var ms=class e extends Be.Canister{static create(t){let{service:s,certifiedService:n,canisterId:o}=(0,Be.createServices)({options:t,idlFactory:_n,certifiedIdlFactory:pn});return new e(o,s,n)}addMaturity=async t=>{let{id:s,amountE8s:n}=t,{new_maturity_e8s:o}=await this.caller(t).add_maturity({id:(0,Be.toNullable)(s),amount_e8s:(0,Be.toNullable)(n)}),c=(0,Be.fromNullable)(o);if((0,Be.isNullish)(c)||c<n)throw new P("No maturity added")}};var Os=require("@dfinity/utils");var dn=({IDL:e})=>{let t=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),s=e.Record({extension_canister_ids:e.Vec(e.Principal)}),n=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(t),testflight:e.Bool,extensions:e.Opt(s),archive_canister_ids:e.Vec(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)}),o=e.Record({canister_id:e.Principal}),c=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),a=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),p=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),u=e.Record({freezing_threshold:e.Opt(e.Nat),wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat),log_visibility:e.Opt(p),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),l=e.Record({memory_metrics:e.Opt(c),status:a,memory_size:e.Nat,cycles:e.Nat,settings:u,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),i=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),N=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),y=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:i,canister_id:e.Principal,chunked_canister_wasm:e.Opt(N)}),C=e.Record({update_canister_list:e.Opt(e.Bool)}),f=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),M=e.Record({memory_metrics:e.Opt(c),status:a,memory_size:e.Nat,cycles:e.Nat,settings:f,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),O=e.Record({status:e.Opt(M),canister_id:e.Opt(e.Principal)}),k=e.Record({root:e.Opt(O),swap:e.Opt(O),ledger:e.Opt(O),index:e.Opt(O),governance:e.Opt(O),dapps:e.Vec(O),archives:e.Vec(O)}),m=e.Record({timers:e.Opt(t)}),A=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),extensions:e.Opt(s),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),E=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)}),U=e.Record({failure_reason:e.Opt(e.Text)}),B=e.Record({canister_id:e.Opt(e.Principal)}),v=e.Record({canister_ids:e.Vec(e.Principal)}),_=e.Record({canister_id:e.Opt(e.Principal)}),x=e.Record({code:e.Opt(e.Int32),description:e.Text}),G=e.Variant({Ok:e.Record({}),Err:x}),g=e.Record({result:e.Opt(G)}),q=e.Record({canister_ids:e.Opt(v),controller_principal_ids:e.Vec(e.Principal)}),h=e.Record({err:e.Opt(x),dapp_canister_id:e.Opt(e.Principal)}),S=e.Record({failed_updates:e.Vec(h)});return e.Service({canister_status:e.Func([o],[l],[]),change_canister:e.Func([y],[],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([C],[k],[]),get_timers:e.Func([e.Record({})],[m],[]),list_sns_canisters:e.Func([e.Record({})],[A],[]),manage_dapp_canister_settings:e.Func([E],[U],[]),register_dapp_canister:e.Func([B],[e.Record({})],[]),register_dapp_canisters:e.Func([v],[e.Record({})],[]),register_extension:e.Func([_],[g],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([q],[S],[])})};var un=({IDL:e})=>{let t=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),s=e.Record({extension_canister_ids:e.Vec(e.Principal)}),n=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(t),testflight:e.Bool,extensions:e.Opt(s),archive_canister_ids:e.Vec(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)}),o=e.Record({canister_id:e.Principal}),c=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),a=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),p=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),u=e.Record({freezing_threshold:e.Opt(e.Nat),wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat),log_visibility:e.Opt(p),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),l=e.Record({memory_metrics:e.Opt(c),status:a,memory_size:e.Nat,cycles:e.Nat,settings:u,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),i=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),N=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),y=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:i,canister_id:e.Principal,chunked_canister_wasm:e.Opt(N)}),C=e.Record({update_canister_list:e.Opt(e.Bool)}),f=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),M=e.Record({memory_metrics:e.Opt(c),status:a,memory_size:e.Nat,cycles:e.Nat,settings:f,query_stats:e.Opt(d),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),O=e.Record({status:e.Opt(M),canister_id:e.Opt(e.Principal)}),k=e.Record({root:e.Opt(O),swap:e.Opt(O),ledger:e.Opt(O),index:e.Opt(O),governance:e.Opt(O),dapps:e.Vec(O),archives:e.Vec(O)}),m=e.Record({timers:e.Opt(t)}),A=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),extensions:e.Opt(s),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),E=e.Record({freezing_threshold:e.Opt(e.Nat64),wasm_memory_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),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)}),U=e.Record({failure_reason:e.Opt(e.Text)}),B=e.Record({canister_id:e.Opt(e.Principal)}),v=e.Record({canister_ids:e.Vec(e.Principal)}),_=e.Record({canister_id:e.Opt(e.Principal)}),x=e.Record({code:e.Opt(e.Int32),description:e.Text}),G=e.Variant({Ok:e.Record({}),Err:x}),g=e.Record({result:e.Opt(G)}),q=e.Record({canister_ids:e.Opt(v),controller_principal_ids:e.Vec(e.Principal)}),h=e.Record({err:e.Opt(x),dapp_canister_id:e.Opt(e.Principal)}),S=e.Record({failed_updates:e.Vec(h)});return e.Service({canister_status:e.Func([o],[l],[]),change_canister:e.Func([y],[],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([C],[k],[]),get_timers:e.Func([e.Record({})],[m],["query"]),list_sns_canisters:e.Func([e.Record({})],[A],["query"]),manage_dapp_canister_settings:e.Func([E],[U],[]),register_dapp_canister:e.Func([B],[e.Record({})],[]),register_dapp_canisters:e.Func([v],[e.Record({})],[]),register_extension:e.Func([_],[g],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([q],[S],[])})};var os=class e extends Os.Canister{static create(t){let{service:s,certifiedService:n,canisterId:o}=(0,Os.createServices)({options:t,idlFactory:un,certifiedIdlFactory:dn});return new e(o,s,n)}listSnsCanisters=({certified:t=!0})=>this.caller({certified:t}).list_sns_canisters({})};var fs=require("@dfinity/ledger-icrc"),qe=require("@dfinity/utils");var us=require("@dfinity/utils");var as=require("@dfinity/utils");function Zn(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function gs(e,...t){if(!Zn(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 Fs(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 ln(e,t){gs(e);let s=t.outputLen;if(e.length<s)throw new Error("digestInto() expects output buffer of length at least "+s)}function ds(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Rs(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Ge(e,t){return e<<32-t|e>>>t}function In(e){if(typeof e!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function Ms(e){return typeof e=="string"&&(e=In(e)),gs(e),e}var Ns=class{};function mn(e){let t=n=>e().update(Ms(n)).digest(),s=e();return t.outputLen=s.outputLen,t.blockLen=s.blockLen,t.create=()=>e(),t}function Dn(e,t,s,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,s,n);let o=BigInt(32),c=BigInt(4294967295),a=Number(s>>o&c),p=Number(s&c),u=n?4:0,d=n?0:4;e.setUint32(t+u,a,n),e.setUint32(t+d,p,n)}function On(e,t,s){return e&t^~e&s}function Nn(e,t,s){return e&t^e&s^t&s}var ys=class extends Ns{constructor(t,s,n,o){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=s,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(t),this.view=Rs(this.buffer)}update(t){Fs(this),t=Ms(t),gs(t);let{view:s,buffer:n,blockLen:o}=this,c=t.length;for(let a=0;a<c;){let p=Math.min(o-this.pos,c-a);if(p===o){let u=Rs(t);for(;o<=c-a;a+=o)this.process(u,a);continue}n.set(t.subarray(a,a+p),this.pos),this.pos+=p,a+=p,this.pos===o&&(this.process(s,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Fs(this),ln(t,this),this.finished=!0;let{buffer:s,view:n,blockLen:o,isLE:c}=this,{pos:a}=this;s[a++]=128,ds(this.buffer.subarray(a)),this.padOffset>o-a&&(this.process(n,0),a=0);for(let i=a;i<o;i++)s[i]=0;Dn(n,o-8,BigInt(this.length*8),c),this.process(n,0);let p=Rs(t),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let d=u/4,l=this.get();if(d>l.length)throw new Error("_sha2: outputLen bigger than state");for(let i=0;i<d;i++)p.setUint32(4*i,l[i],c)}digest(){let{buffer:t,outputLen:s}=this;this.digestInto(t);let n=t.slice(0,s);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:s,buffer:n,length:o,finished:c,destroyed:a,pos:p}=this;return t.destroyed=a,t.finished=c,t.length=o,t.pos=p,o%s&&t.buffer.set(n),t}clone(){return this._cloneInto()}},Ye=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Ln=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]),Xe=new Uint32Array(64),ks=class extends ys{constructor(t=32){super(64,t,8,!1),this.A=Ye[0]|0,this.B=Ye[1]|0,this.C=Ye[2]|0,this.D=Ye[3]|0,this.E=Ye[4]|0,this.F=Ye[5]|0,this.G=Ye[6]|0,this.H=Ye[7]|0}get(){let{A:t,B:s,C:n,D:o,E:c,F:a,G:p,H:u}=this;return[t,s,n,o,c,a,p,u]}set(t,s,n,o,c,a,p,u){this.A=t|0,this.B=s|0,this.C=n|0,this.D=o|0,this.E=c|0,this.F=a|0,this.G=p|0,this.H=u|0}process(t,s){for(let i=0;i<16;i++,s+=4)Xe[i]=t.getUint32(s,!1);for(let i=16;i<64;i++){let N=Xe[i-15],y=Xe[i-2],C=Ge(N,7)^Ge(N,18)^N>>>3,f=Ge(y,17)^Ge(y,19)^y>>>10;Xe[i]=f+Xe[i-7]+C+Xe[i-16]|0}let{A:n,B:o,C:c,D:a,E:p,F:u,G:d,H:l}=this;for(let i=0;i<64;i++){let N=Ge(p,6)^Ge(p,11)^Ge(p,25),y=l+N+On(p,u,d)+Ln[i]+Xe[i]|0,f=(Ge(n,2)^Ge(n,13)^Ge(n,22))+Nn(n,o,c)|0;l=d,d=u,u=p,p=a+y|0,a=c,c=o,o=n,n=y+f|0}n=n+this.A|0,o=o+this.B|0,c=c+this.C|0,a=a+this.D|0,p=p+this.E|0,u=u+this.F|0,d=d+this.G|0,l=l+this.H|0,this.set(n,o,c,a,p,u,d,l)}roundClean(){ds(Xe)}destroy(){this.set(0,0,0,0,0,0,0,0),ds(this.buffer)}};var gn=mn(()=>new ks);var As=({index:e,controller:t})=>{let n=[12,...(0,as.asciiStringToByteArray)("neuron-stake"),...t.toUint8Array(),...(0,as.numberToUint8Array)(e)],o=gn.create();return o.update((0,as.arrayOfNumberToUint8Array)(n)),o.digest()};var ls=class{root;governance;ledger;swap;index;certified;constructor({root:t,governance:s,ledger:n,swap:o,index:c,certified:a}){this.root=t,this.governance=s,this.ledger=n,this.swap=o,this.index=c,this.certified=a}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId,indexCanisterId:this.index.canisterId}}listNeurons=t=>this.governance.listNeurons(this.mergeParams(t));listProposals=t=>this.governance.listProposals(this.mergeParams(t));getProposal=t=>this.governance.getProposal(this.mergeParams(t));listNervousSystemFunctions=t=>this.governance.listNervousSystemFunctions(this.mergeParams(t));metadata=t=>Promise.all([this.governance.metadata(this.mergeParams(t)),this.ledger.metadata(this.mergeParams(t))]);nervousSystemParameters=t=>this.governance.nervousSystemParameters(this.mergeParams(t));ledgerMetadata=t=>this.ledger.metadata(this.mergeParams(t));transactionFee=t=>this.ledger.transactionFee(this.mergeParams(t));totalTokensSupply=t=>this.ledger.totalTokensSupply(this.mergeParams(t));balance=t=>this.ledger.balance(this.mergeParams(t));transfer=t=>this.ledger.transfer(t);getNeuron=t=>this.governance.getNeuron(this.mergeParams(t));queryNeuron=t=>this.governance.queryNeuron(this.mergeParams(t));nextNeuronAccount=async t=>{for(let s=0;s<65536;s++){let n=As({index:s,controller:t}),o={id:n},c=await this.governance.queryNeuron({neuronId:o,certified:!1});if(c===void 0&&(c=await this.governance.queryNeuron({neuronId:o,certified:!0}),c===void 0))return{account:{...this.owner,subaccount:n},index:BigInt(s)}}throw new P("No more neuron accounts available")};stakeNeuron=async({stakeE8s:t,source:s,controller:n,createdAt:o,fee:c})=>{this.assertCertified("stakeNeuron");let{account:a,index:p}=await this.nextNeuronAccount(n);if(a.subaccount===void 0)throw new P("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:t,to:{owner:a.owner,subaccount:(0,us.toNullable)(a.subaccount)},from_subaccount:s.subaccount,memo:(0,us.bigIntToUint8Array)(p),created_at_time:o,fee:c}),this.governance.claimNeuron({memo:BigInt(p),controller:n,subaccount:a.subaccount})};increaseStakeNeuron=async({stakeE8s:t,source:s,neuronId:n})=>(this.assertCertified("stakeNeuron"),await this.ledger.transfer({amount:t,to:{...this.owner,subaccount:(0,us.toNullable)(Uint8Array.from(n.id))},from_subaccount:s.subaccount}),this.governance.refreshNeuron(n));getNeuronBalance=t=>{let s={...this.owner,subaccount:Uint8Array.from(t.id)};return this.ledger.balance({...s,certified:this.certified})};addNeuronPermissions=t=>this.governance.addNeuronPermissions(t);refreshNeuron=t=>this.governance.refreshNeuron(t);claimNeuron=t=>this.governance.claimNeuron(t);removeNeuronPermissions=t=>this.governance.removeNeuronPermissions(t);splitNeuron=t=>this.governance.splitNeuron(t);disburse=t=>this.governance.disburse(t);startDissolving=t=>this.governance.startDissolving(t);stopDissolving=t=>this.governance.stopDissolving(t);setDissolveTimestamp=t=>this.governance.setDissolveTimestamp(t);increaseDissolveDelay=t=>this.governance.increaseDissolveDelay(t);setTopicFollowees=t=>this.governance.setTopicFollowees(t);setFollowing=t=>this.governance.setFollowing(t);registerVote=t=>this.governance.registerVote(t);swapState=t=>this.swap.state(this.mergeParams(t));notifyPaymentFailure=()=>this.swap.notifyPaymentFailure();notifyParticipation=t=>this.swap.notifyParticipation(t);getUserCommitment=t=>this.swap.getUserCommitment(this.mergeParams(t));getOpenTicket=t=>this.swap.getOpenTicket(this.mergeParams(t));newSaleTicket=t=>this.swap.newSaleTicket(t);getLifecycle=t=>this.swap.getLifecycle(this.mergeParams(t));getFinalizationStatus=t=>this.swap.getFinalizationStatus(this.mergeParams(t));getSaleParameters=t=>this.swap.getSaleParameters(this.mergeParams(t));getDerivedState=t=>this.swap.getDerivedState(this.mergeParams(t));getTransactions=t=>this.index.getTransactions(t);stakeMaturity=t=>this.governance.stakeMaturity(t);disburseMaturity=t=>this.governance.disburseMaturity(t);autoStakeMaturity=t=>this.governance.autoStakeMaturity(t);mergeParams(t){return{...t,certified:this.certified}}assertCertified=t=>{if(!this.certified)throw new P(`Call to ${t} needs to be certified`)};get owner(){return{owner:this.canisterIds.governanceCanisterId}}};var D=require("@dfinity/utils");var Rn=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),s=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)}),n=e.Record({serialized_representation:e.Opt(e.Text)}),o=e.Record({coefficient_intervals:e.Vec(s),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(n)}),c=e.Record({iso_codes:e.Vec(e.Text)}),a=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(o),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(c),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),p=e.Record({source_principal_id:e.Opt(e.Principal)}),u=e.Record({block_height:e.Opt(e.Nat64)}),d=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:u,Err:d}),i=e.Record({result:e.Opt(l)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),y=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),C=e.Record({failed_updates:e.Vec(y)}),f=e.Variant({Ok:C,Err:N}),M=e.Record({possibility:e.Opt(f)}),O=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),k=e.Record({error_message:e.Text,error_type:e.Int32}),m=e.Record({governance_error:e.Opt(k)}),A=e.Variant({Ok:m,Err:N}),E=e.Record({possibility:e.Opt(A)}),U=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),B=e.Record({message:e.Opt(e.Text)}),v=e.Variant({Ok:U,Err:B}),_=e.Record({possibility:e.Opt(v)}),x=e.Variant({Ok:e.Record({}),Err:N}),G=e.Record({possibility:e.Opt(x)}),g=e.Record({set_dapp_controllers_call_result:e.Opt(M),create_sns_neuron_recipes_result:e.Opt(O),settle_community_fund_participation_result:e.Opt(E),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(_),set_mode_call_result:e.Opt(G),sweep_icp_result:e.Opt(O),claim_neuron_result:e.Opt(O),sweep_sns_result:e.Opt(O)}),q=e.Record({auto_finalize_swap_response:e.Opt(g),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),h=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),z=e.Record({icp:e.Opt(S),has_created_neuron_recipes:e.Opt(e.Bool)}),R=e.Record({buyer_state:e.Opt(z)}),W=e.Record({buyers_total:e.Nat64}),ae=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),re=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ie=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),H=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),j=e.Record({memory_metrics:e.Opt(ae),status:re,memory_size:e.Nat,cycles:e.Nat,settings:ie,query_stats:e.Opt(H),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),pe=e.Record({init:e.Opt(a)}),_e=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),Q=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),L=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(Q),amount_icp_e8s:e.Nat64}),J=e.Record({ticket:e.Opt(L)}),de=e.Record({error_type:e.Opt(e.Int32)}),ue=e.Variant({Ok:J,Err:de}),V=e.Record({result:e.Opt(ue)}),ee=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),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)}),le=e.Record({params:e.Opt(ee)}),me=e.Record({id:e.Vec(e.Nat8)}),Oe=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(me)}),te=e.Record({principals:e.Vec(e.Principal)}),Ne=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(te),nns_neuron_id:e.Nat64}),ge=e.Record({buyer_principal:e.Text}),Re=e.Variant({CommunityFund:Ne,Direct:ge}),se=e.Record({sns:e.Opt(S),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Oe),investor:e.Opt(Re)}),ne=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),ye=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(te),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),oe=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(ye)}),Y=e.Record({auto_finalize_swap_response:e.Opt(g),neuron_recipes:e.Vec(se),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),timers:e.Opt(ne),cf_participants:e.Vec(oe),init:e.Opt(a),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,z)),params:e.Opt(ee),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),fe=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),he=e.Record({swap:e.Opt(Y),derived:e.Opt(fe)}),ve=e.Record({timers:e.Opt(ne)}),xe=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),w=e.Record({cf_participants:e.Vec(oe)}),Se=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),T=e.Record({participation:e.Opt(z),participant_id:e.Opt(e.Principal)}),X=e.Record({participants:e.Vec(T)}),K=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),$=e.Record({sns_neuron_recipes:e.Vec(se)}),Ve=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),we=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),Te=e.Record({invalid_user_amount:e.Opt(we),existing_ticket:e.Opt(L),error_type:e.Int32}),Pe=e.Variant({Ok:J,Err:Te}),Z=e.Record({result:e.Opt(Pe)}),I=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),be=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([p],[i],[]),finalize_swap:e.Func([e.Record({})],[g],[]),get_auto_finalization_status:e.Func([e.Record({})],[q],[]),get_buyer_state:e.Func([h],[R],[]),get_buyers_total:e.Func([e.Record({})],[W],[]),get_canister_status:e.Func([e.Record({})],[j],[]),get_derived_state:e.Func([e.Record({})],[ce],[]),get_init:e.Func([e.Record({})],[pe],[]),get_lifecycle:e.Func([e.Record({})],[_e],[]),get_open_ticket:e.Func([e.Record({})],[V],[]),get_sale_parameters:e.Func([e.Record({})],[le],[]),get_state:e.Func([e.Record({})],[he],[]),get_timers:e.Func([e.Record({})],[ve],[]),list_community_fund_participants:e.Func([xe],[w],[]),list_direct_participants:e.Func([Se],[X],[]),list_sns_neuron_recipes:e.Func([K],[$],[]),new_sale_ticket:e.Func([Ve],[Z],[]),notify_payment_failure:e.Func([e.Record({})],[J],[]),refresh_buyer_tokens:e.Func([I],[be],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var yn=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),s=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)}),n=e.Record({serialized_representation:e.Opt(e.Text)}),o=e.Record({coefficient_intervals:e.Vec(s),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(n)}),c=e.Record({iso_codes:e.Vec(e.Text)}),a=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(o),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(c),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),p=e.Record({source_principal_id:e.Opt(e.Principal)}),u=e.Record({block_height:e.Opt(e.Nat64)}),d=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:u,Err:d}),i=e.Record({result:e.Opt(l)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),y=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),C=e.Record({failed_updates:e.Vec(y)}),f=e.Variant({Ok:C,Err:N}),M=e.Record({possibility:e.Opt(f)}),O=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),k=e.Record({error_message:e.Text,error_type:e.Int32}),m=e.Record({governance_error:e.Opt(k)}),A=e.Variant({Ok:m,Err:N}),E=e.Record({possibility:e.Opt(A)}),U=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),B=e.Record({message:e.Opt(e.Text)}),v=e.Variant({Ok:U,Err:B}),_=e.Record({possibility:e.Opt(v)}),x=e.Variant({Ok:e.Record({}),Err:N}),G=e.Record({possibility:e.Opt(x)}),g=e.Record({set_dapp_controllers_call_result:e.Opt(M),create_sns_neuron_recipes_result:e.Opt(O),settle_community_fund_participation_result:e.Opt(E),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(_),set_mode_call_result:e.Opt(G),sweep_icp_result:e.Opt(O),claim_neuron_result:e.Opt(O),sweep_sns_result:e.Opt(O)}),q=e.Record({auto_finalize_swap_response:e.Opt(g),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),h=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),z=e.Record({icp:e.Opt(S),has_created_neuron_recipes:e.Opt(e.Bool)}),R=e.Record({buyer_state:e.Opt(z)}),W=e.Record({buyers_total:e.Nat64}),ae=e.Record({wasm_binary_size:e.Opt(e.Nat),wasm_chunk_store_size:e.Opt(e.Nat),canister_history_size:e.Opt(e.Nat),stable_memory_size:e.Opt(e.Nat),snapshots_size:e.Opt(e.Nat),wasm_memory_size:e.Opt(e.Nat),global_memory_size:e.Opt(e.Nat),custom_sections_size:e.Opt(e.Nat)}),re=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ie=e.Record({freezing_threshold:e.Nat,wasm_memory_threshold:e.Opt(e.Nat),controllers:e.Vec(e.Principal),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Nat,compute_allocation:e.Nat}),H=e.Record({response_payload_bytes_total:e.Opt(e.Nat),num_instructions_total:e.Opt(e.Nat),num_calls_total:e.Opt(e.Nat),request_payload_bytes_total:e.Opt(e.Nat)}),j=e.Record({memory_metrics:e.Opt(ae),status:re,memory_size:e.Nat,cycles:e.Nat,settings:ie,query_stats:e.Opt(H),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ce=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),pe=e.Record({init:e.Opt(a)}),_e=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),Q=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),L=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(Q),amount_icp_e8s:e.Nat64}),J=e.Record({ticket:e.Opt(L)}),de=e.Record({error_type:e.Opt(e.Int32)}),ue=e.Variant({Ok:J,Err:de}),V=e.Record({result:e.Opt(ue)}),ee=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),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)}),le=e.Record({params:e.Opt(ee)}),me=e.Record({id:e.Vec(e.Nat8)}),Oe=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(me)}),te=e.Record({principals:e.Vec(e.Principal)}),Ne=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(te),nns_neuron_id:e.Nat64}),ge=e.Record({buyer_principal:e.Text}),Re=e.Variant({CommunityFund:Ne,Direct:ge}),se=e.Record({sns:e.Opt(S),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Oe),investor:e.Opt(Re)}),ne=e.Record({last_spawned_timestamp_seconds:e.Opt(e.Nat64),last_reset_timestamp_seconds:e.Opt(e.Nat64),requires_periodic_tasks:e.Opt(e.Bool)}),ye=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(te),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),oe=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(ye)}),Y=e.Record({auto_finalize_swap_response:e.Opt(g),neuron_recipes:e.Vec(se),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),timers:e.Opt(ne),cf_participants:e.Vec(oe),init:e.Opt(a),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,z)),params:e.Opt(ee),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),fe=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),he=e.Record({swap:e.Opt(Y),derived:e.Opt(fe)}),ve=e.Record({timers:e.Opt(ne)}),xe=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),w=e.Record({cf_participants:e.Vec(oe)}),Se=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),T=e.Record({participation:e.Opt(z),participant_id:e.Opt(e.Principal)}),X=e.Record({participants:e.Vec(T)}),K=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),$=e.Record({sns_neuron_recipes:e.Vec(se)}),Ve=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),we=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),Te=e.Record({invalid_user_amount:e.Opt(we),existing_ticket:e.Opt(L),error_type:e.Int32}),Pe=e.Variant({Ok:J,Err:Te}),Z=e.Record({result:e.Opt(Pe)}),I=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),be=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([p],[i],[]),finalize_swap:e.Func([e.Record({})],[g],[]),get_auto_finalization_status:e.Func([e.Record({})],[q],["query"]),get_buyer_state:e.Func([h],[R],["query"]),get_buyers_total:e.Func([e.Record({})],[W],[]),get_canister_status:e.Func([e.Record({})],[j],[]),get_derived_state:e.Func([e.Record({})],[ce],["query"]),get_init:e.Func([e.Record({})],[pe],["query"]),get_lifecycle:e.Func([e.Record({})],[_e],["query"]),get_open_ticket:e.Func([e.Record({})],[V],["query"]),get_sale_parameters:e.Func([e.Record({})],[le],["query"]),get_state:e.Func([e.Record({})],[he],["query"]),get_timers:e.Func([e.Record({})],[ve],["query"]),list_community_fund_participants:e.Func([xe],[w],["query"]),list_direct_participants:e.Func([Se],[X],["query"]),list_sns_neuron_recipes:e.Func([K],[$],["query"]),new_sale_ticket:e.Func([Ve],[Z],[]),notify_payment_failure:e.Func([e.Record({})],[J],[]),refresh_buyer_tokens:e.Func([I],[be],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var fn=({subaccount:e,amount_icp_e8s:t})=>({subaccount:e===void 0?[]:[e],amount_icp_e8s:t});var hn=require("@dfinity/utils"),vn=e=>{if(typeof e=="object"&&(0,hn.nonNullish)(e)&&"message"in e){let t=e.message;return t.includes("has no update method")||t.includes("has no query method")}return!1};var rs=class e extends D.Canister{static create(t){let{service:s,certifiedService:n,canisterId:o}=(0,D.createServices)({options:t,idlFactory:yn,certifiedIdlFactory:Rn});return new e(o,s,n)}state=t=>this.caller(t).get_state({});notifyPaymentFailure=async()=>{let{ticket:t}=await this.caller({certified:!0}).notify_payment_failure({});return(0,D.fromNullable)(t)};notifyParticipation=async t=>await this.caller({certified:!0}).refresh_buyer_tokens(t);getUserCommitment=async t=>{let{buyer_state:s}=await this.caller({certified:t.certified}).get_buyer_state({principal_id:t.principal_id});return(0,D.fromNullable)(s)};getDerivedState=({certified:t})=>this.caller({certified:t}).get_derived_state({});getSaleParameters=({certified:t})=>this.caller({certified:t}).get_sale_parameters({});getOpenTicket=async t=>{var c;let{result:s}=await this.caller({certified:t.certified}).get_open_ticket({}),n=(0,D.fromDefinedNullable)(s);if("Ok"in n)return(0,D.fromNullable)(n.Ok.ticket);let o=(0,D.fromDefinedNullable)((c=n==null?void 0:n.Err)==null?void 0:c.error_type);throw new _s(o)};newSaleTicket=async t=>{let s=fn(t),{result:n}=await this.caller({certified:!0}).new_sale_ticket(s),o=(0,D.fromDefinedNullable)(n);if("Ok"in o)return(0,D.fromDefinedNullable)(o.Ok.ticket);let c=o.Err;throw new ps({errorType:c.error_type,invalidUserAmount:(0,D.fromNullable)(c.invalid_user_amount??[]),existingTicket:(0,D.fromNullable)(c.existing_ticket??[])})};getLifecycle=t=>this.caller(t).get_lifecycle({});getFinalizationStatus=async t=>{try{return await this.caller(t).get_auto_finalization_status({})}catch(s){throw vn(s)?new cs("getFinalizationStatus"):s}}};var to=async({agent:e,rootOptions:t,certified:s=!0})=>{let n=os.create({...t,agent:e}),{ledger:o,swap:c,governance:a,index:p}=await n.listSnsCanisters({certified:s}),u=(0,qe.fromNullable)(a),d=(0,qe.fromNullable)(o),l=(0,qe.fromNullable)(c),i=(0,qe.fromNullable)(p);return(0,qe.assertNonNullish)(u),(0,qe.assertNonNullish)(d),(0,qe.assertNonNullish)(l),(0,qe.assertNonNullish)(i),new ls({root:n,governance:ns.create({canisterId:u,agent:e}),ledger:fs.IcrcLedgerCanister.create({canisterId:d,agent:e}),swap:rs.create({canisterId:l,agent:e}),index:fs.IcrcIndexCanister.create({canisterId:i,agent:e}),certified:s})};0&&(module.exports={GetOpenTicketErrorType,NewSaleTicketResponseErrorType,SnsGovernanceCanister,SnsGovernanceError,SnsGovernanceTestCanister,SnsNeuronPermissionType,SnsProposalDecisionStatus,SnsProposalRewardStatus,SnsRootCanister,SnsSwapCanister,SnsSwapGetOpenTicketError,SnsSwapLifecycle,SnsSwapNewTicketError,SnsVote,SnsWrapper,UnsupportedMethodError,fromCandidAction,initSnsWrapper,neuronSubaccount});
|
|
2
2
|
/*! Bundled license information:
|
|
3
3
|
|
|
4
4
|
@noble/hashes/esm/utils.js:
|