@dfinity/sns 3.3.0 → 3.4.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.certified.idl.js +8 -0
- package/dist/candid/sns_governance.d.ts +4 -0
- package/dist/candid/sns_governance.did +6 -1
- package/dist/candid/sns_governance.idl.js +8 -0
- package/dist/candid/sns_governance_test.certified.idl.js +8 -0
- package/dist/candid/sns_governance_test.d.ts +4 -0
- package/dist/candid/sns_governance_test.did +6 -1
- package/dist/candid/sns_governance_test.idl.js +8 -0
- 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-XBBCPB3E.js → chunk-CMVA2R27.js} +2 -2
- package/dist/esm/chunk-IVTJXPAO.js +2 -0
- package/dist/esm/chunk-IVTJXPAO.js.map +7 -0
- package/dist/esm/governance.canister.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +3 -3
- package/dist/esm/sns.js +1 -1
- package/dist/types/types/actions.d.ts +5 -0
- package/package.json +3 -3
- package/dist/esm/chunk-ZISK2527.js +0 -2
- package/dist/esm/chunk-ZISK2527.js.map +0 -7
- /package/dist/esm/{chunk-XBBCPB3E.js.map → chunk-CMVA2R27.js.map} +0 -0
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var ts=Object.defineProperty;var $s=Object.getOwnPropertyDescriptor;var Xs=Object.getOwnPropertyNames;var Ks=Object.prototype.hasOwnProperty;var Zs=(e,s)=>{for(var t in s)ts(e,t,{get:s[t],enumerable:!0})},Is=(e,s,t,n)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of Xs(s))!Ks.call(e,o)&&o!==t&&ts(e,o,{get:()=>s[o],enumerable:!(n=$s(s,o))||n.enumerable});return e};var Ds=e=>Is(ts({},"__esModule",{value:!0}),e);var Rn={};Zs(Rn,{GetOpenTicketErrorType:()=>bs,NewSaleTicketResponseErrorType:()=>Cs,SnsGovernanceCanister:()=>Ft,SnsGovernanceError:()=>b,SnsGovernanceTestCanister:()=>Qt,SnsNeuronPermissionType:()=>Ps,SnsProposalDecisionStatus:()=>Ts,SnsProposalRewardStatus:()=>Vs,SnsRootCanister:()=>At,SnsSwapCanister:()=>Gt,SnsSwapGetOpenTicketError:()=>zt,SnsSwapLifecycle:()=>xs,SnsSwapNewTicketError:()=>Bt,SnsVote:()=>ws,SnsWrapper:()=>Wt,UnsupportedMethodError:()=>Et,fromCandidAction:()=>hs,initSnsWrapper:()=>On,neuronSubaccount:()=>is});module.exports=Ds(Rn);var d=require("@dfinity/utils");var Mt=({neuronId:{id:e},command:s})=>({subaccount:e,command:[s]}),Ut=({neuronId:e,operation:s})=>Mt({neuronId:e,command:{Configure:{operation:[s]}}}),cs=({owner:e,subaccount:s})=>({owner:(0,d.toNullable)(e),subaccount:s===void 0?[]:(0,d.toNullable)({subaccount:s})}),_s=({neuronId:e,permissions:s,principal:t})=>Mt({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(s)}],principal_id:[t]}}}),ps=({neuronId:e,permissions:s,principal:t})=>Mt({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(s)}],principal_id:[t]}}}),ds=({neuronId:e,memo:s,amount:t})=>Mt({neuronId:e,command:{Split:{memo:s,amount_e8s:t}}}),us=({neuronId:e,amount:s,toAccount:t})=>Mt({neuronId:e,command:{Disburse:{to_account:t===void 0?[]:(0,d.toNullable)(cs(t)),amount:s===void 0?[]:[{e8s:s}]}}}),ls=e=>Ut({neuronId:e,operation:{StartDissolving:{}}}),ms=e=>Ut({neuronId:e,operation:{StopDissolving:{}}}),Ns=({neuronId:e,percentageToStake:s})=>Mt({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,d.toNullable)(s)}}}),Os=({neuronId:e,percentageToDisburse:s,toAccount:t})=>Mt({neuronId:e,command:{DisburseMaturity:{to_account:t===void 0?[]:(0,d.toNullable)(cs(t)),percentage_to_disburse:s}}}),Rs=({neuronId:e,autoStake:s})=>Ut({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:s}}}),gs=({neuronId:e,dissolveTimestampSeconds:s})=>Ut({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:s}}}),ys=({neuronId:e,additionalDissolveDelaySeconds:s})=>Ut({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:s}}}),fs=({neuronId:e,functionId:s,followees:t})=>({subaccount:e.id,command:[{Follow:{function_id:s,followees:t}}]}),vs=({neuronId:e,proposalId:s,vote:t})=>({subaccount:e.id,command:[{RegisterVote:{vote:t,proposal:[s]}}]}),ss=({subaccount:e,memo:s,controller:t})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[s===void 0?{NeuronId:{}}:{MemoAndController:{memo:s,controller:(0,d.toNullable)(t)}}]}}]}),Ss=({excludeType:e,beforeProposal:s,includeRewardStatus:t,includeStatus:n,limit:o})=>({exclude_type:BigUint64Array.from(e??[]),before_proposal:(0,d.toNullable)(s),include_reward_status:Int32Array.from(t??[]),include_status:Int32Array.from(n??[]),limit:o??10}),hs=e=>{if("ManageNervousSystemParameters"in e)return{ManageNervousSystemParameters:_n(e.ManageNervousSystemParameters)};if("AddGenericNervousSystemFunction"in e)return{AddGenericNervousSystemFunction:rn(e.AddGenericNervousSystemFunction)};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:nn(e.TransferSnsTreasuryFunds)};if("UpgradeSnsControlledCanister"in e)return{UpgradeSnsControlledCanister:sn(e.UpgradeSnsControlledCanister)};if("DeregisterDappCanisters"in e)return{DeregisterDappCanisters:e.DeregisterDappCanisters};if("Unspecified"in e)return{Unspecified:e.Unspecified};if("ManageSnsMetadata"in e)return{ManageSnsMetadata:en(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)}`)},en=e=>({url:(0,d.fromNullable)(e.url),logo:(0,d.fromNullable)(e.logo),name:(0,d.fromNullable)(e.name),description:(0,d.fromNullable)(e.description)}),tn=e=>{if(e!==void 0)return{wasm_module_hash:e.wasm_module_hash,store_canister_id:(0,d.fromNullable)(e.store_canister_id),chunk_hashes_list:e.chunk_hashes_list}},sn=e=>({new_canister_wasm:e.new_canister_wasm,chunked_canister_wasm:tn((0,d.fromNullable)(e.chunked_canister_wasm)),canister_id:(0,d.fromNullable)(e.canister_id),canister_upgrade_arg:(0,d.fromNullable)(e.canister_upgrade_arg),mode:(0,d.fromNullable)(e.mode)}),nn=e=>({from_treasury:e.from_treasury,to_principal:(0,d.fromNullable)(e.to_principal),to_subaccount:(0,d.fromNullable)(e.to_subaccount),memo:(0,d.fromNullable)(e.memo),amount_e8s:e.amount_e8s}),on=e=>({validator_canister_id:(0,d.fromNullable)(e.validator_canister_id),target_canister_id:(0,d.fromNullable)(e.target_canister_id),validator_method_name:(0,d.fromNullable)(e.validator_method_name),target_method_name:(0,d.fromNullable)(e.target_method_name),topic:(0,d.fromNullable)(e.topic)}),an=e=>{if(e!==void 0){if("NativeNervousSystemFunction"in e)return{NativeNervousSystemFunction:e.NativeNervousSystemFunction};if("GenericNervousSystemFunction"in e)return{GenericNervousSystemFunction:on(e.GenericNervousSystemFunction)};throw new Error(`Unknown FunctionType ${JSON.stringify(e)}`)}},rn=e=>({id:e.id,name:e.name,description:(0,d.fromNullable)(e.description),function_type:an((0,d.fromNullable)(e.function_type))}),cn=e=>e&&{final_reward_rate_basis_points:(0,d.fromNullable)(e.final_reward_rate_basis_points),initial_reward_rate_basis_points:(0,d.fromNullable)(e.initial_reward_rate_basis_points),reward_rate_transition_duration_seconds:(0,d.fromNullable)(e.reward_rate_transition_duration_seconds),round_duration_seconds:(0,d.fromNullable)(e.round_duration_seconds)},_n=e=>({default_followees:(0,d.fromNullable)(e.default_followees),max_dissolve_delay_seconds:(0,d.fromNullable)(e.max_dissolve_delay_seconds),max_dissolve_delay_bonus_percentage:(0,d.fromNullable)(e.max_dissolve_delay_bonus_percentage),max_followees_per_function:(0,d.fromNullable)(e.max_followees_per_function),neuron_claimer_permissions:(0,d.fromNullable)(e.neuron_claimer_permissions),neuron_minimum_stake_e8s:(0,d.fromNullable)(e.neuron_minimum_stake_e8s),max_neuron_age_for_age_bonus:(0,d.fromNullable)(e.max_neuron_age_for_age_bonus),initial_voting_period_seconds:(0,d.fromNullable)(e.initial_voting_period_seconds),neuron_minimum_dissolve_delay_to_vote_seconds:(0,d.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote_seconds),reject_cost_e8s:(0,d.fromNullable)(e.reject_cost_e8s),max_proposals_to_keep_per_action:(0,d.fromNullable)(e.max_proposals_to_keep_per_action),wait_for_quiet_deadline_increase_seconds:(0,d.fromNullable)(e.wait_for_quiet_deadline_increase_seconds),max_number_of_neurons:(0,d.fromNullable)(e.max_number_of_neurons),transaction_fee_e8s:(0,d.fromNullable)(e.transaction_fee_e8s),max_number_of_proposals_with_ballots:(0,d.fromNullable)(e.max_number_of_proposals_with_ballots),max_age_bonus_percentage:(0,d.fromNullable)(e.max_age_bonus_percentage),neuron_grantable_permissions:(0,d.fromNullable)(e.neuron_grantable_permissions),voting_rewards_parameters:cn((0,d.fromNullable)(e.voting_rewards_parameters)),max_number_of_principals_per_neuron:(0,d.fromNullable)(e.max_number_of_principals_per_neuron),automatically_advance_target_version:(0,d.fromNullable)(e.automatically_advance_target_version)});var Ps=(c=>(c[c.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",c[c.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",c[c.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",c[c.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",c[c.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",c[c.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",c[c.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",c[c.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",c[c.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",c[c.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",c[c.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",c))(Ps||{}),Vs=(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))(Vs||{}),Ts=(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))(Ts||{}),ws=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(ws||{});var xs=(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))(xs||{}),bs=(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))(bs||{}),Cs=(i=>(i[i.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",i[i.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",i[i.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",i[i.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",i[i.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",i[i.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",i[i.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",i))(Cs||{});var Et=class extends Error{constructor(t){super();this.methodName=t}};var b=class extends Error{};var Bt=class extends Error{constructor({errorType:s,invalidUserAmount:t,existingTicket:n}){super(),this.errorType=s,this.invalidUserAmount=t,this.existingTicket=n}},zt=class extends Error{constructor(t){super();this.errorType=t}};var C=require("@dfinity/utils");var ks=({IDL:e})=>{let 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)}),t=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(t)}),o=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(n)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),V=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,V))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),T=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(u)}),oe=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),M=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(M),icps_per_token:e.Opt(M),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({canister_ids:e.Vec(e.Principal)}),W=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),ue=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)}),le=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(ue),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),me=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),te=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Ne=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Oe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),se=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)}),Re=e.Record({motion_text:e.Text}),ge=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ee,TransferSnsTreasuryFunds:W,UpgradeSnsControlledCanister:le,DeregisterDappCanisters:me,MintSnsTokens:te,AdvanceSnsTargetVersion:Ne,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:Oe,ManageLedgerParameters:se,Motion:Re}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(ge),summary:e.Text}),ne=e.Record({current_deadline_timestamp_seconds:e.Nat64}),h=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(ne),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),J=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),F=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),ye=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),fe=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ve=e.Record({dissolve_timestamp_seconds:e.Nat64}),Se=e.Variant({ChangeAutoStakeMaturity:ye,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:fe,SetDissolveTimestamp:ve}),H=e.Record({operation:e.Opt(Se)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),he=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Pe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Pe,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),Te=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(Te)}),we=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:x,FinalizeDisburseMaturity:he,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),xe=e.Record({command:e.Opt(we),timestamp:e.Nat64}),Ge=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ue=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Ee=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ge),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ue),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Ee),followees:e.Vec(e.Tuple(e.Nat64,V)),neuron_fees_e8s:e.Nat64}),Kt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(o),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(T),pending_version:e.Opt(oe),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,h)),in_flight_commands:e.Vec(e.Tuple(e.Text,xe)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),Be=e.Record({principals:e.Vec(e.Principal)}),ze=e.Record({nns_neuron_hotkeys:e.Opt(Be),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),je=e.Variant({NeuronsFund:ze,Direct:e.Record({})}),We=e.Record({neuron_ids:e.Vec(p)}),Qe=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(je),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(We),neuron_id:e.Opt(p)}),Je=e.Record({neuron_recipes:e.Vec(Qe)}),Ye=e.Record({neuron_recipes:e.Opt(Je)}),He=e.Record({id:e.Opt(p),status:e.Int32}),$e=e.Record({swap_neurons:e.Vec(He)}),Xe=e.Variant({Ok:$e,Err:e.Int32}),Ke=e.Record({claim_swap_neurons_result:e.Opt(Xe)}),Ze=e.Record({maturity_modulation:e.Opt(l)}),Ie=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),De=e.Record({mode:e.Opt(e.Int32)}),Le=e.Record({neuron_id:e.Opt(p)}),et=e.Variant({Error:O,Neuron:A}),tt=e.Record({result:e.Opt(et)}),Me=e.Record({proposal_id:e.Opt(u)}),st=e.Variant({Error:O,Proposal:h}),nt=e.Record({result:e.Opt(st)}),ot=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Fe=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}),at=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)}),rt=e.Record({status:ot,memory_size:e.Nat,cycles:e.Nat,settings:Fe,query_stats:e.Opt(at),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),it=e.Record({deployed_version:e.Opt(t),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(t)}))}),ct=e.Record({sns_initialization_parameters:e.Text}),_t=e.Record({timers:e.Opt(s)}),pt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),dt=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),ut=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),lt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),mt=e.Record({neurons:e.Vec(A)}),Nt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Ot=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(h)}),Rt=e.Record({}),gt=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),yt=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(gt))}),ft=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),vt=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:x,StakeMaturity:ft,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),St=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(vt)}),ht=e.Record({created_neuron_id:e.Opt(p)}),Pt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Vt=e.Record({refreshed_neuron_id:e.Opt(p)}),Tt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),wt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),xt=e.Record({transfer_block_height:e.Nat64}),bt=e.Variant({Error:O,Split:ht,Follow:e.Record({}),DisburseMaturity:Pt,ClaimOrRefresh:Vt,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Me,RemoveNeuronPermission:e.Record({}),StakeMaturity:Tt,MergeMaturity:wt,Disburse:xt,AddNeuronPermission:e.Record({})}),Ct=e.Record({command:e.Opt(bt)}),kt=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([Ye],[Ke],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[T],[]),get_maturity_modulation:e.Func([e.Record({})],[Ze],[]),get_metadata:e.Func([e.Record({})],[Ie],[]),get_mode:e.Func([e.Record({})],[De],[]),get_nervous_system_parameters:e.Func([e.Null],[f],[]),get_neuron:e.Func([Le],[tt],[]),get_proposal:e.Func([Me],[nt],[]),get_root_canister_status:e.Func([e.Null],[rt],[]),get_running_sns_version:e.Func([e.Record({})],[it],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[ct],[]),get_timers:e.Func([e.Record({})],[_t],[]),get_upgrade_journal:e.Func([pt],[dt],[]),list_nervous_system_functions:e.Func([],[ut],[]),list_neurons:e.Func([lt],[mt],[]),list_proposals:e.Func([Nt],[Ot],[]),list_topics:e.Func([Rt],[yt],[]),manage_neuron:e.Func([St],[Ct],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([kt],[e.Record({})],[])})};var Ms=({IDL:e})=>{let 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)}),t=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(t)}),o=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(n)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),V=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,V))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),T=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(u)}),oe=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),M=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(M),icps_per_token:e.Opt(M),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({canister_ids:e.Vec(e.Principal)}),W=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),ue=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)}),le=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(ue),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),me=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),te=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Ne=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Oe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),se=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)}),Re=e.Record({motion_text:e.Text}),ge=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ee,TransferSnsTreasuryFunds:W,UpgradeSnsControlledCanister:le,DeregisterDappCanisters:me,MintSnsTokens:te,AdvanceSnsTargetVersion:Ne,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:Oe,ManageLedgerParameters:se,Motion:Re}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(ge),summary:e.Text}),ne=e.Record({current_deadline_timestamp_seconds:e.Nat64}),h=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(ne),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),J=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),F=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),ye=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),fe=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ve=e.Record({dissolve_timestamp_seconds:e.Nat64}),Se=e.Variant({ChangeAutoStakeMaturity:ye,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:fe,SetDissolveTimestamp:ve}),H=e.Record({operation:e.Opt(Se)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),he=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Pe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Pe,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),Te=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(Te)}),we=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:x,FinalizeDisburseMaturity:he,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),xe=e.Record({command:e.Opt(we),timestamp:e.Nat64}),Ge=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ue=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Ee=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ge),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ue),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Ee),followees:e.Vec(e.Tuple(e.Nat64,V)),neuron_fees_e8s:e.Nat64}),Kt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(o),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(T),pending_version:e.Opt(oe),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,h)),in_flight_commands:e.Vec(e.Tuple(e.Text,xe)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),Be=e.Record({principals:e.Vec(e.Principal)}),ze=e.Record({nns_neuron_hotkeys:e.Opt(Be),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),je=e.Variant({NeuronsFund:ze,Direct:e.Record({})}),We=e.Record({neuron_ids:e.Vec(p)}),Qe=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(je),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(We),neuron_id:e.Opt(p)}),Je=e.Record({neuron_recipes:e.Vec(Qe)}),Ye=e.Record({neuron_recipes:e.Opt(Je)}),He=e.Record({id:e.Opt(p),status:e.Int32}),$e=e.Record({swap_neurons:e.Vec(He)}),Xe=e.Variant({Ok:$e,Err:e.Int32}),Ke=e.Record({claim_swap_neurons_result:e.Opt(Xe)}),Ze=e.Record({maturity_modulation:e.Opt(l)}),Ie=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),De=e.Record({mode:e.Opt(e.Int32)}),Le=e.Record({neuron_id:e.Opt(p)}),et=e.Variant({Error:O,Neuron:A}),tt=e.Record({result:e.Opt(et)}),Me=e.Record({proposal_id:e.Opt(u)}),st=e.Variant({Error:O,Proposal:h}),nt=e.Record({result:e.Opt(st)}),ot=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Fe=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}),at=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)}),rt=e.Record({status:ot,memory_size:e.Nat,cycles:e.Nat,settings:Fe,query_stats:e.Opt(at),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),it=e.Record({deployed_version:e.Opt(t),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(t)}))}),ct=e.Record({sns_initialization_parameters:e.Text}),_t=e.Record({timers:e.Opt(s)}),pt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),dt=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),ut=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),lt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),mt=e.Record({neurons:e.Vec(A)}),Nt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Ot=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(h)}),Rt=e.Record({}),gt=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),yt=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(gt))}),ft=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),vt=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:x,StakeMaturity:ft,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),St=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(vt)}),ht=e.Record({created_neuron_id:e.Opt(p)}),Pt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Vt=e.Record({refreshed_neuron_id:e.Opt(p)}),Tt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),wt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),xt=e.Record({transfer_block_height:e.Nat64}),bt=e.Variant({Error:O,Split:ht,Follow:e.Record({}),DisburseMaturity:Pt,ClaimOrRefresh:Vt,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Me,RemoveNeuronPermission:e.Record({}),StakeMaturity:Tt,MergeMaturity:wt,Disburse:xt,AddNeuronPermission:e.Record({})}),Ct=e.Record({command:e.Opt(bt)}),kt=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([Ye],[Ke],[]),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([],[T],["query"]),get_maturity_modulation:e.Func([e.Record({})],[Ze],[]),get_metadata:e.Func([e.Record({})],[Ie],["query"]),get_mode:e.Func([e.Record({})],[De],["query"]),get_nervous_system_parameters:e.Func([e.Null],[f],["query"]),get_neuron:e.Func([Le],[tt],["query"]),get_proposal:e.Func([Me],[nt],["query"]),get_root_canister_status:e.Func([e.Null],[rt],[]),get_running_sns_version:e.Func([e.Record({})],[it],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[ct],["query"]),get_timers:e.Func([e.Record({})],[_t],["query"]),get_upgrade_journal:e.Func([pt],[dt],["query"]),list_nervous_system_functions:e.Func([],[ut],["query"]),list_neurons:e.Func([lt],[mt],["query"]),list_proposals:e.Func([Nt],[Ot],["query"]),list_topics:e.Func([Rt],[yt],["query"]),manage_neuron:e.Func([St],[Ct],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([kt],[e.Record({})],[])})};var Ft=class e extends C.Canister{constructor(){super(...arguments);this.listNeurons=async t=>{let{principal:n,limit:o,beforeNeuronId:r}=t,{neurons:a}=await this.caller(t).list_neurons({of_principal:(0,C.toNullable)(n),limit:o??100,start_page_at:(0,C.toNullable)(r)});return a};this.listProposals=async t=>{let{certified:n}=t;return await this.caller({certified:n}).list_proposals(Ss(t))};this.listTopics=async t=>{let{certified:n}=t;return await this.caller({certified:n}).list_topics({})};this.getProposal=async t=>{let{proposalId:n}=t,{result:o}=await this.caller(t).get_proposal({proposal_id:(0,C.toNullable)(n)}),r=(0,C.fromNullable)(o);if(r===void 0||"Error"in r)throw new b((r==null?void 0:r.Error.error_message)??"Response type not supported");return r.Proposal};this.listNervousSystemFunctions=async t=>this.caller(t).list_nervous_system_functions();this.metadata=t=>this.caller(t).get_metadata({});this.nervousSystemParameters=t=>this.caller(t).get_nervous_system_parameters(null);this.getNeuron=async t=>{let{neuronId:n}=t,{result:o}=await this.caller(t).get_neuron({neuron_id:(0,C.toNullable)(n)}),r=(0,C.fromNullable)(o);if(r===void 0||"Error"in r)throw new b((r==null?void 0:r.Error.error_message)??"Response type not supported");return r.Neuron};this.queryNeuron=async t=>{try{return await this.getNeuron(t)}catch(n){if(n instanceof Error&&n.message.includes("No neuron for given NeuronId"))return;throw n}};this.manageNeuron=async t=>{let n=await this.caller({certified:!0}).manage_neuron(t);return this.assertManageNeuronError(n),n};this.addNeuronPermissions=async t=>{let n=_s(t);await this.manageNeuron(n)};this.removeNeuronPermissions=async t=>{let n=ps(t);await this.manageNeuron(n)};this.splitNeuron=async t=>{let n=ds(t),{command:o}=await this.manageNeuron(n),r=(0,C.fromNullable)(o),a=i=>`Split neuron failed (${i})`;if(r===void 0)throw new b(a("no response"));if("Split"in r){let i=r.Split,_=(0,C.fromNullable)(i.created_neuron_id);if(_!==void 0)return _;throw new b(a("no id"))}throw new b(a("unknown"))};this.disburse=async t=>{let n=us(t);await this.manageNeuron(n)};this.startDissolving=async t=>{let n=ls(t);await this.manageNeuron(n)};this.stopDissolving=async t=>{let n=ms(t);await this.manageNeuron(n)};this.stakeMaturity=async({neuronId:t,percentageToStake:n})=>{(0,C.assertPercentageNumber)(n??100);let o=Ns({neuronId:t,percentageToStake:n});await this.manageNeuron(o)};this.disburseMaturity=async t=>{(0,C.assertPercentageNumber)(t.percentageToDisburse);let n=Os(t);await this.manageNeuron(n)};this.autoStakeMaturity=async t=>{let n=Rs(t);await this.manageNeuron(n)};this.setDissolveTimestamp=async t=>{let n=gs(t);await this.manageNeuron(n)};this.increaseDissolveDelay=async t=>{let n=ys(t);await this.manageNeuron(n)};this.setTopicFollowees=async t=>{let n=fs(t);await this.manageNeuron(n)};this.registerVote=async t=>{let n=vs(t);await this.manageNeuron(n)};this.refreshNeuron=async t=>{let n=ss({subaccount:t.id});await this.manageNeuron(n)};this.claimNeuron=async({memo:t,controller:n,subaccount:o})=>{let r=ss({subaccount:o,memo:t,controller:n}),{command:a}=await this.manageNeuron(r),i=(0,C.fromNullable)(a);if(i===void 0)throw new b("Claim neuron failed");if("ClaimOrRefresh"in i){let _=(0,C.fromNullable)(i.ClaimOrRefresh.refreshed_neuron_id);if(_===void 0)throw new b("Claim neuron failed");return _}throw new b("Claim neuron failed")};this.assertManageNeuronError=({command:t})=>{let n=t[0];if(n!==void 0&&"Error"in n)throw new b(n.Error.error_message)}}static create(t){let{service:n,certifiedService:o,canisterId:r}=(0,C.createServices)({options:t,idlFactory:Ms,certifiedIdlFactory:ks});return new e(r,n,o)}};var be=require("@dfinity/utils");var Fs=({IDL:e})=>{let 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)}),t=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(t)}),o=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(n)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),V=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,V))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),T=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(u)}),oe=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),M=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(M),icps_per_token:e.Opt(M),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({canister_ids:e.Vec(e.Principal)}),W=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),ue=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)}),le=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(ue),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),me=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),te=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Ne=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Oe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),se=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)}),Re=e.Record({motion_text:e.Text}),ge=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ee,TransferSnsTreasuryFunds:W,UpgradeSnsControlledCanister:le,DeregisterDappCanisters:me,MintSnsTokens:te,AdvanceSnsTargetVersion:Ne,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:Oe,ManageLedgerParameters:se,Motion:Re}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(ge),summary:e.Text}),ne=e.Record({current_deadline_timestamp_seconds:e.Nat64}),h=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(ne),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),J=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),F=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),ye=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),fe=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ve=e.Record({dissolve_timestamp_seconds:e.Nat64}),Se=e.Variant({ChangeAutoStakeMaturity:ye,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:fe,SetDissolveTimestamp:ve}),H=e.Record({operation:e.Opt(Se)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),he=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Pe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Pe,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),Te=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(Te)}),we=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:x,FinalizeDisburseMaturity:he,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),xe=e.Record({command:e.Opt(we),timestamp:e.Nat64}),Ge=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ue=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Ee=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ge),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ue),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Ee),followees:e.Vec(e.Tuple(e.Nat64,V)),neuron_fees_e8s:e.Nat64}),Kt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(o),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(T),pending_version:e.Opt(oe),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,h)),in_flight_commands:e.Vec(e.Tuple(e.Text,xe)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),Be=e.Record({id:e.Opt(p),amount_e8s:e.Opt(e.Nat64)}),ze=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),je=e.Record({target_version:e.Opt(t)}),We=e.Record({}),Qe=e.Record({principals:e.Vec(e.Principal)}),Je=e.Record({nns_neuron_hotkeys:e.Opt(Qe),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),Ye=e.Variant({NeuronsFund:Je,Direct:e.Record({})}),He=e.Record({neuron_ids:e.Vec(p)}),$e=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(Ye),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(He),neuron_id:e.Opt(p)}),Xe=e.Record({neuron_recipes:e.Vec($e)}),Ke=e.Record({neuron_recipes:e.Opt(Xe)}),Ze=e.Record({id:e.Opt(p),status:e.Int32}),Ie=e.Record({swap_neurons:e.Vec(Ze)}),De=e.Variant({Ok:Ie,Err:e.Int32}),Le=e.Record({claim_swap_neurons_result:e.Opt(De)}),et=e.Record({maturity_modulation:e.Opt(l)}),tt=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Me=e.Record({mode:e.Opt(e.Int32)}),st=e.Record({neuron_id:e.Opt(p)}),nt=e.Variant({Error:O,Neuron:A}),ot=e.Record({result:e.Opt(nt)}),Fe=e.Record({proposal_id:e.Opt(u)}),at=e.Variant({Error:O,Proposal:h}),rt=e.Record({result:e.Opt(at)}),it=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ct=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}),_t=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)}),pt=e.Record({status:it,memory_size:e.Nat,cycles:e.Nat,settings:ct,query_stats:e.Opt(_t),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),dt=e.Record({deployed_version:e.Opt(t),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(t)}))}),ut=e.Record({sns_initialization_parameters:e.Text}),lt=e.Record({timers:e.Opt(s)}),mt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Nt=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Ot=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),Rt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),gt=e.Record({neurons:e.Vec(A)}),yt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),ft=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(h)}),vt=e.Record({}),St=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),ht=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(St))}),Pt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Vt=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:x,StakeMaturity:Pt,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),Tt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Vt)}),wt=e.Record({created_neuron_id:e.Opt(p)}),xt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),bt=e.Record({refreshed_neuron_id:e.Opt(p)}),Ct=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),kt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Zt=e.Record({transfer_block_height:e.Nat64}),It=e.Variant({Error:O,Split:wt,Follow:e.Record({}),DisburseMaturity:xt,ClaimOrRefresh:bt,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Fe,RemoveNeuronPermission:e.Record({}),StakeMaturity:Ct,MergeMaturity:kt,Disburse:Zt,AddNeuronPermission:e.Record({})}),Dt=e.Record({command:e.Opt(It)}),Lt=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),es=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([Be],[ze],[]),advance_target_version:e.Func([je],[We],[]),claim_swap_neurons:e.Func([Ke],[Le],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[T],[]),get_maturity_modulation:e.Func([e.Record({})],[et],[]),get_metadata:e.Func([e.Record({})],[tt],[]),get_mode:e.Func([e.Record({})],[Me],[]),get_nervous_system_parameters:e.Func([e.Null],[f],[]),get_neuron:e.Func([st],[ot],[]),get_proposal:e.Func([Fe],[rt],[]),get_root_canister_status:e.Func([e.Null],[pt],[]),get_running_sns_version:e.Func([e.Record({})],[dt],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[ut],[]),get_timers:e.Func([e.Record({})],[lt],[]),get_upgrade_journal:e.Func([mt],[Nt],[]),list_nervous_system_functions:e.Func([],[Ot],[]),list_neurons:e.Func([Rt],[gt],[]),list_proposals:e.Func([yt],[ft],[]),list_topics:e.Func([vt],[ht],[]),manage_neuron:e.Func([Tt],[Dt],[]),mint_tokens:e.Func([Lt],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([es],[e.Record({})],[]),update_neuron:e.Func([A],[e.Opt(O)],[])})};var As=({IDL:e})=>{let 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)}),t=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(t)}),o=e.Record({upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(n)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(n)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),V=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,V))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),T=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(u)}),oe=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),M=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(M),icps_per_token:e.Opt(M),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({canister_ids:e.Vec(e.Principal)}),W=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),ue=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)}),le=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(ue),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),me=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),te=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Ne=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Oe=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),se=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)}),Re=e.Record({motion_text:e.Text}),ge=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:ee,TransferSnsTreasuryFunds:W,UpgradeSnsControlledCanister:le,DeregisterDappCanisters:me,MintSnsTokens:te,AdvanceSnsTargetVersion:Ne,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:Oe,ManageLedgerParameters:se,Motion:Re}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(ge),summary:e.Text}),ne=e.Record({current_deadline_timestamp_seconds:e.Nat64}),h=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(ne),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),J=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),F=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),ye=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),fe=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ve=e.Record({dissolve_timestamp_seconds:e.Nat64}),Se=e.Variant({ChangeAutoStakeMaturity:ye,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:fe,SetDissolveTimestamp:ve}),H=e.Record({operation:e.Opt(Se)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),he=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Pe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Pe,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),Te=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(Te)}),we=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:x,FinalizeDisburseMaturity:he,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),xe=e.Record({command:e.Opt(we),timestamp:e.Nat64}),Ge=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ue=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Ee=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ge),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ue),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Ee),followees:e.Vec(e.Tuple(e.Nat64,V)),neuron_fees_e8s:e.Nat64}),Kt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(o),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(T),pending_version:e.Opt(oe),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,h)),in_flight_commands:e.Vec(e.Tuple(e.Text,xe)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),Be=e.Record({id:e.Opt(p),amount_e8s:e.Opt(e.Nat64)}),ze=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),je=e.Record({target_version:e.Opt(t)}),We=e.Record({}),Qe=e.Record({principals:e.Vec(e.Principal)}),Je=e.Record({nns_neuron_hotkeys:e.Opt(Qe),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),Ye=e.Variant({NeuronsFund:Je,Direct:e.Record({})}),He=e.Record({neuron_ids:e.Vec(p)}),$e=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(Ye),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(He),neuron_id:e.Opt(p)}),Xe=e.Record({neuron_recipes:e.Vec($e)}),Ke=e.Record({neuron_recipes:e.Opt(Xe)}),Ze=e.Record({id:e.Opt(p),status:e.Int32}),Ie=e.Record({swap_neurons:e.Vec(Ze)}),De=e.Variant({Ok:Ie,Err:e.Int32}),Le=e.Record({claim_swap_neurons_result:e.Opt(De)}),et=e.Record({maturity_modulation:e.Opt(l)}),tt=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Me=e.Record({mode:e.Opt(e.Int32)}),st=e.Record({neuron_id:e.Opt(p)}),nt=e.Variant({Error:O,Neuron:A}),ot=e.Record({result:e.Opt(nt)}),Fe=e.Record({proposal_id:e.Opt(u)}),at=e.Variant({Error:O,Proposal:h}),rt=e.Record({result:e.Opt(at)}),it=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ct=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}),_t=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)}),pt=e.Record({status:it,memory_size:e.Nat,cycles:e.Nat,settings:ct,query_stats:e.Opt(_t),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),dt=e.Record({deployed_version:e.Opt(t),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(t)}))}),ut=e.Record({sns_initialization_parameters:e.Text}),lt=e.Record({timers:e.Opt(s)}),mt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Nt=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(n),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Ot=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),Rt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),gt=e.Record({neurons:e.Vec(A)}),yt=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),ft=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(h)}),vt=e.Record({}),St=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),ht=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(St))}),Pt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Vt=e.Variant({Split:J,Follow:F,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:x,StakeMaturity:Pt,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),Tt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Vt)}),wt=e.Record({created_neuron_id:e.Opt(p)}),xt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),bt=e.Record({refreshed_neuron_id:e.Opt(p)}),Ct=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),kt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Zt=e.Record({transfer_block_height:e.Nat64}),It=e.Variant({Error:O,Split:wt,Follow:e.Record({}),DisburseMaturity:xt,ClaimOrRefresh:bt,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Fe,RemoveNeuronPermission:e.Record({}),StakeMaturity:Ct,MergeMaturity:kt,Disburse:Zt,AddNeuronPermission:e.Record({})}),Dt=e.Record({command:e.Opt(It)}),Lt=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),es=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([Be],[ze],[]),advance_target_version:e.Func([je],[We],[]),claim_swap_neurons:e.Func([Ke],[Le],[]),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([],[T],["query"]),get_maturity_modulation:e.Func([e.Record({})],[et],[]),get_metadata:e.Func([e.Record({})],[tt],["query"]),get_mode:e.Func([e.Record({})],[Me],["query"]),get_nervous_system_parameters:e.Func([e.Null],[f],["query"]),get_neuron:e.Func([st],[ot],["query"]),get_proposal:e.Func([Fe],[rt],["query"]),get_root_canister_status:e.Func([e.Null],[pt],[]),get_running_sns_version:e.Func([e.Record({})],[dt],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[ut],["query"]),get_timers:e.Func([e.Record({})],[lt],["query"]),get_upgrade_journal:e.Func([mt],[Nt],["query"]),list_nervous_system_functions:e.Func([],[Ot],["query"]),list_neurons:e.Func([Rt],[gt],["query"]),list_proposals:e.Func([yt],[ft],["query"]),list_topics:e.Func([vt],[ht],["query"]),manage_neuron:e.Func([Tt],[Dt],[]),mint_tokens:e.Func([Lt],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([es],[e.Record({})],[]),update_neuron:e.Func([A],[e.Opt(O)],[])})};var Qt=class e extends be.Canister{constructor(){super(...arguments);this.addMaturity=async t=>{let{id:n,amountE8s:o}=t,{new_maturity_e8s:r}=await this.caller(t).add_maturity({id:(0,be.toNullable)(n),amount_e8s:(0,be.toNullable)(o)}),a=(0,be.fromNullable)(r);if((0,be.isNullish)(a)||a<o)throw new b("No maturity added")}}static create(t){let{service:n,certifiedService:o,canisterId:r}=(0,be.createServices)({options:t,idlFactory:As,certifiedIdlFactory:Fs});return new e(r,n,o)}};var Jt=require("@dfinity/utils");var qs=({IDL:e})=>{let 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)}),t=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(s),testflight:e.Bool,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}),o=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),a=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(r),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),i=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)}),_=e.Record({status:o,memory_size:e.Nat,cycles:e.Nat,settings:a,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),N=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),l=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:N,canister_id:e.Principal,chunked_canister_wasm:e.Opt(l),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),g=e.Record({update_canister_list:e.Opt(e.Bool)}),v=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}),u=e.Record({status:o,memory_size:e.Nat,cycles:e.Nat,settings:v,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),m=e.Record({status:e.Opt(u),canister_id:e.Opt(e.Principal)}),q=e.Record({root:e.Opt(m),swap:e.Opt(m),ledger:e.Opt(m),index:e.Opt(m),governance:e.Opt(m),dapps:e.Vec(m),archives:e.Vec(m)}),S=e.Record({timers:e.Opt(s)}),G=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),P=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)}),p=e.Record({failure_reason:e.Opt(e.Text)}),V=e.Record({canister_id:e.Opt(e.Principal)}),k=e.Record({canister_ids:e.Vec(e.Principal)}),y=e.Record({canister_ids:e.Opt(k),controller_principal_ids:e.Vec(e.Principal)}),U=e.Record({code:e.Opt(e.Int32),description:e.Text}),f=e.Record({err:e.Opt(U),dapp_canister_id:e.Opt(e.Principal)}),T=e.Record({failed_updates:e.Vec(f)});return e.Service({canister_status:e.Func([n],[_],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([g],[q],[]),get_timers:e.Func([e.Record({})],[S],[]),list_sns_canisters:e.Func([e.Record({})],[G],[]),manage_dapp_canister_settings:e.Func([P],[p],[]),register_dapp_canister:e.Func([V],[e.Record({})],[]),register_dapp_canisters:e.Func([k],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([y],[T],[])})};var Gs=({IDL:e})=>{let 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)}),t=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(s),testflight:e.Bool,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}),o=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),a=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(r),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),i=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)}),_=e.Record({status:o,memory_size:e.Nat,cycles:e.Nat,settings:a,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),N=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),l=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:N,canister_id:e.Principal,chunked_canister_wasm:e.Opt(l),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),g=e.Record({update_canister_list:e.Opt(e.Bool)}),v=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}),u=e.Record({status:o,memory_size:e.Nat,cycles:e.Nat,settings:v,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),m=e.Record({status:e.Opt(u),canister_id:e.Opt(e.Principal)}),q=e.Record({root:e.Opt(m),swap:e.Opt(m),ledger:e.Opt(m),index:e.Opt(m),governance:e.Opt(m),dapps:e.Vec(m),archives:e.Vec(m)}),S=e.Record({timers:e.Opt(s)}),G=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),P=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)}),p=e.Record({failure_reason:e.Opt(e.Text)}),V=e.Record({canister_id:e.Opt(e.Principal)}),k=e.Record({canister_ids:e.Vec(e.Principal)}),y=e.Record({canister_ids:e.Opt(k),controller_principal_ids:e.Vec(e.Principal)}),U=e.Record({code:e.Opt(e.Int32),description:e.Text}),f=e.Record({err:e.Opt(U),dapp_canister_id:e.Opt(e.Principal)}),T=e.Record({failed_updates:e.Vec(f)});return e.Service({canister_status:e.Func([n],[_],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([g],[q],[]),get_timers:e.Func([e.Record({})],[S],["query"]),list_sns_canisters:e.Func([e.Record({})],[G],["query"]),manage_dapp_canister_settings:e.Func([P],[p],[]),register_dapp_canister:e.Func([V],[e.Record({})],[]),register_dapp_canisters:e.Func([k],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([y],[T],[])})};var At=class e extends Jt.Canister{constructor(){super(...arguments);this.listSnsCanisters=async({certified:t=!0})=>this.caller({certified:t}).list_sns_canisters({})}static create(t){let{service:n,certifiedService:o,canisterId:r}=(0,Jt.createServices)({options:t,idlFactory:Gs,certifiedIdlFactory:qs});return new e(r,n,o)}};var Xt=require("@dfinity/ledger-icrc"),ke=require("@dfinity/utils");var jt=require("@dfinity/utils");var qt=require("@dfinity/utils");function dn(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function ns(e,...s){if(!dn(e))throw new Error("Uint8Array expected");if(s.length>0&&!s.includes(e.length))throw new Error(`Uint8Array expected of length ${s}, not of length=${e.length}`)}function os(e,s=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(s&&e.finished)throw new Error("Hash#digest() has already been called")}function Us(e,s){ns(e);let t=s.outputLen;if(e.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Ht=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Ce=(e,s)=>e<<32-s|e>>>s;var Xn=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function un(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function as(e){return typeof e=="string"&&(e=un(e)),ns(e),e}var Yt=class{clone(){return this._cloneInto()}},Kn={}.toString;function Es(e){let s=n=>e().update(as(n)).digest(),t=e();return s.outputLen=t.outputLen,s.blockLen=t.blockLen,s.create=()=>e(),s}function ln(e,s,t,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(s,t,n);let o=BigInt(32),r=BigInt(4294967295),a=Number(t>>o&r),i=Number(t&r),_=n?4:0,N=n?0:4;e.setUint32(s+_,a,n),e.setUint32(s+N,i,n)}var Bs=(e,s,t)=>e&s^~e&t,zs=(e,s,t)=>e&s^e&t^s&t,$t=class extends Yt{constructor(s,t,n,o){super(),this.blockLen=s,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(s),this.view=Ht(this.buffer)}update(s){os(this);let{view:t,buffer:n,blockLen:o}=this;s=as(s);let r=s.length;for(let a=0;a<r;){let i=Math.min(o-this.pos,r-a);if(i===o){let _=Ht(s);for(;o<=r-a;a+=o)this.process(_,a);continue}n.set(s.subarray(a,a+i),this.pos),this.pos+=i,a+=i,this.pos===o&&(this.process(t,0),this.pos=0)}return this.length+=s.length,this.roundClean(),this}digestInto(s){os(this),Us(s,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:r}=this,{pos:a}=this;t[a++]=128,this.buffer.subarray(a).fill(0),this.padOffset>o-a&&(this.process(n,0),a=0);for(let c=a;c<o;c++)t[c]=0;ln(n,o-8,BigInt(this.length*8),r),this.process(n,0);let i=Ht(s),_=this.outputLen;if(_%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let N=_/4,l=this.get();if(N>l.length)throw new Error("_sha2: outputLen bigger than state");for(let c=0;c<N;c++)i.setUint32(4*c,l[c],r)}digest(){let{buffer:s,outputLen:t}=this;this.digestInto(s);let n=s.slice(0,t);return this.destroy(),n}_cloneInto(s){s||(s=new this.constructor),s.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:r,destroyed:a,pos:i}=this;return s.length=o,s.pos=i,s.finished=r,s.destroyed=a,o%t&&s.buffer.set(n),s}};var mn=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Ae=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),qe=new Uint32Array(64),rs=class extends $t{constructor(){super(64,32,8,!1),this.A=Ae[0]|0,this.B=Ae[1]|0,this.C=Ae[2]|0,this.D=Ae[3]|0,this.E=Ae[4]|0,this.F=Ae[5]|0,this.G=Ae[6]|0,this.H=Ae[7]|0}get(){let{A:s,B:t,C:n,D:o,E:r,F:a,G:i,H:_}=this;return[s,t,n,o,r,a,i,_]}set(s,t,n,o,r,a,i,_){this.A=s|0,this.B=t|0,this.C=n|0,this.D=o|0,this.E=r|0,this.F=a|0,this.G=i|0,this.H=_|0}process(s,t){for(let c=0;c<16;c++,t+=4)qe[c]=s.getUint32(t,!1);for(let c=16;c<64;c++){let g=qe[c-15],v=qe[c-2],u=Ce(g,7)^Ce(g,18)^g>>>3,m=Ce(v,17)^Ce(v,19)^v>>>10;qe[c]=m+qe[c-7]+u+qe[c-16]|0}let{A:n,B:o,C:r,D:a,E:i,F:_,G:N,H:l}=this;for(let c=0;c<64;c++){let g=Ce(i,6)^Ce(i,11)^Ce(i,25),v=l+g+Bs(i,_,N)+mn[c]+qe[c]|0,m=(Ce(n,2)^Ce(n,13)^Ce(n,22))+zs(n,o,r)|0;l=N,N=_,_=i,i=a+v|0,a=r,r=o,o=n,n=v+m|0}n=n+this.A|0,o=o+this.B|0,r=r+this.C|0,a=a+this.D|0,i=i+this.E|0,_=_+this.F|0,N=N+this.G|0,l=l+this.H|0,this.set(n,o,r,a,i,_,N,l)}roundClean(){qe.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var js=Es(()=>new rs);var is=({index:e,controller:s})=>{let n=[12,...(0,qt.asciiStringToByteArray)("neuron-stake"),...s.toUint8Array(),...(0,qt.numberToUint8Array)(e)],o=js.create();return o.update((0,qt.arrayOfNumberToUint8Array)(n)),o.digest()};var Wt=class{constructor({root:s,governance:t,ledger:n,swap:o,index:r,certified:a}){this.listNeurons=s=>this.governance.listNeurons(this.mergeParams(s));this.listProposals=s=>this.governance.listProposals(this.mergeParams(s));this.getProposal=s=>this.governance.getProposal(this.mergeParams(s));this.listNervousSystemFunctions=s=>this.governance.listNervousSystemFunctions(this.mergeParams(s));this.metadata=s=>Promise.all([this.governance.metadata(this.mergeParams(s)),this.ledger.metadata(this.mergeParams(s))]);this.nervousSystemParameters=s=>this.governance.nervousSystemParameters(this.mergeParams(s));this.ledgerMetadata=s=>this.ledger.metadata(this.mergeParams(s));this.transactionFee=s=>this.ledger.transactionFee(this.mergeParams(s));this.totalTokensSupply=s=>this.ledger.totalTokensSupply(this.mergeParams(s));this.balance=s=>this.ledger.balance(this.mergeParams(s));this.transfer=s=>this.ledger.transfer(s);this.getNeuron=s=>this.governance.getNeuron(this.mergeParams(s));this.queryNeuron=s=>this.governance.queryNeuron(this.mergeParams(s));this.nextNeuronAccount=async s=>{for(let t=0;t<65536;t++){let n=is({index:t,controller:s}),o={id:n},r=await this.governance.queryNeuron({neuronId:o,certified:!1});if(r===void 0&&(r=await this.governance.queryNeuron({neuronId:o,certified:!0}),r===void 0))return{account:{...this.owner,subaccount:n},index:BigInt(t)}}throw new b("No more neuron accounts available")};this.stakeNeuron=async({stakeE8s:s,source:t,controller:n,createdAt:o,fee:r})=>{this.assertCertified("stakeNeuron");let{account:a,index:i}=await this.nextNeuronAccount(n);if(a.subaccount===void 0)throw new b("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:s,to:{owner:a.owner,subaccount:(0,jt.toNullable)(a.subaccount)},from_subaccount:t.subaccount,memo:(0,jt.bigIntToUint8Array)(i),created_at_time:o,fee:r}),this.governance.claimNeuron({memo:BigInt(i),controller:n,subaccount:a.subaccount})};this.increaseStakeNeuron=async({stakeE8s:s,source:t,neuronId:n})=>(this.assertCertified("stakeNeuron"),await this.ledger.transfer({amount:s,to:{...this.owner,subaccount:(0,jt.toNullable)(Uint8Array.from(n.id))},from_subaccount:t.subaccount}),this.governance.refreshNeuron(n));this.getNeuronBalance=async s=>{let t={...this.owner,subaccount:Uint8Array.from(s.id)};return this.ledger.balance({...t,certified:this.certified})};this.addNeuronPermissions=s=>this.governance.addNeuronPermissions(s);this.refreshNeuron=s=>this.governance.refreshNeuron(s);this.claimNeuron=s=>this.governance.claimNeuron(s);this.removeNeuronPermissions=s=>this.governance.removeNeuronPermissions(s);this.splitNeuron=s=>this.governance.splitNeuron(s);this.disburse=s=>this.governance.disburse(s);this.startDissolving=s=>this.governance.startDissolving(s);this.stopDissolving=s=>this.governance.stopDissolving(s);this.setDissolveTimestamp=s=>this.governance.setDissolveTimestamp(s);this.increaseDissolveDelay=s=>this.governance.increaseDissolveDelay(s);this.setTopicFollowees=s=>this.governance.setTopicFollowees(s);this.registerVote=async s=>this.governance.registerVote(s);this.swapState=s=>this.swap.state(this.mergeParams(s));this.notifyPaymentFailure=()=>this.swap.notifyPaymentFailure();this.notifyParticipation=s=>this.swap.notifyParticipation(s);this.getUserCommitment=s=>this.swap.getUserCommitment(this.mergeParams(s));this.getOpenTicket=s=>this.swap.getOpenTicket(this.mergeParams(s));this.newSaleTicket=s=>this.swap.newSaleTicket(s);this.getLifecycle=s=>this.swap.getLifecycle(this.mergeParams(s));this.getFinalizationStatus=s=>this.swap.getFinalizationStatus(this.mergeParams(s));this.getSaleParameters=s=>this.swap.getSaleParameters(this.mergeParams(s));this.getDerivedState=s=>this.swap.getDerivedState(this.mergeParams(s));this.getTransactions=s=>this.index.getTransactions(s);this.stakeMaturity=s=>this.governance.stakeMaturity(s);this.disburseMaturity=s=>this.governance.disburseMaturity(s);this.autoStakeMaturity=s=>this.governance.autoStakeMaturity(s);this.assertCertified=s=>{if(!this.certified)throw new b(`Call to ${s} needs to be certified`)};this.root=s,this.governance=t,this.ledger=n,this.swap=o,this.index=r,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}}mergeParams(s){return{...s,certified:this.certified}}get owner(){return{owner:this.canisterIds.governanceCanisterId}}};var L=require("@dfinity/utils");var Ws=({IDL:e})=>{let s=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),t=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(t),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)}),r=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(s),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(r),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),i=e.Record({source_principal_id:e.Opt(e.Principal)}),_=e.Record({block_height:e.Opt(e.Nat64)}),N=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:_,Err:N}),c=e.Record({result:e.Opt(l)}),g=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(g),dapp_canister_id:e.Opt(e.Principal)}),u=e.Record({failed_updates:e.Vec(v)}),m=e.Variant({Ok:u,Err:g}),q=e.Record({possibility:e.Opt(m)}),S=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),G=e.Record({error_message:e.Text,error_type:e.Int32}),P=e.Record({governance_error:e.Opt(G)}),p=e.Variant({Ok:P,Err:g}),V=e.Record({possibility:e.Opt(p)}),k=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),y=e.Record({message:e.Opt(e.Text)}),U=e.Variant({Ok:k,Err:y}),f=e.Record({possibility:e.Opt(U)}),T=e.Variant({Ok:e.Record({}),Err:g}),oe=e.Record({possibility:e.Opt(T)}),O=e.Record({set_dapp_controllers_call_result:e.Opt(q),create_sns_neuron_recipes_result:e.Opt(S),settle_community_fund_participation_result:e.Opt(V),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(f),set_mode_call_result:e.Opt(oe),sweep_icp_result:e.Opt(S),claim_neuron_result:e.Opt(S),sweep_sns_result:e.Opt(S)}),w=e.Record({auto_finalize_swap_response:e.Opt(O),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),R=e.Record({principal_id:e.Opt(e.Principal)}),M=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}),E=e.Record({icp:e.Opt(M),has_created_neuron_recipes:e.Opt(e.Bool)}),ae=e.Record({buyer_state:e.Opt(E)}),re=e.Record({buyers_total:e.Nat64}),B=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),z=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}),ie=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)}),ce=e.Record({status:B,memory_size:e.Nat,cycles:e.Nat,settings:z,query_stats:e.Opt(ie),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),_e=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)}),j=e.Record({init:e.Opt(a)}),pe=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)}),de=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),ee=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(de),amount_icp_e8s:e.Nat64}),W=e.Record({ticket:e.Opt(ee)}),ue=e.Record({error_type:e.Opt(e.Int32)}),le=e.Variant({Ok:W,Err:ue}),me=e.Record({result:e.Opt(le)}),te=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(s),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)}),Ne=e.Record({params:e.Opt(te)}),Q=e.Record({id:e.Vec(e.Nat8)}),Oe=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(Q)}),se=e.Record({principals:e.Vec(e.Principal)}),Re=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(se),nns_neuron_id:e.Nat64}),ge=e.Record({buyer_principal:e.Text}),x=e.Variant({CommunityFund:Re,Direct:ge}),ne=e.Record({sns:e.Opt(M),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Oe),investor:e.Opt(x)}),h=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)}),J=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(se),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),F=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(J)}),Y=e.Record({auto_finalize_swap_response:e.Opt(O),neuron_recipes:e.Vec(ne),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(h),cf_participants:e.Vec(F),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,E)),params:e.Opt(te),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),ye=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)}),fe=e.Record({swap:e.Opt(Y),derived:e.Opt(ye)}),ve=e.Record({timers:e.Opt(h)}),Se=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),H=e.Record({cf_participants:e.Vec(F)}),$=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),he=e.Record({participation:e.Opt(E),participant_id:e.Opt(e.Principal)}),Pe=e.Record({participants:e.Vec(he)}),Ve=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),X=e.Record({sns_neuron_recipes:e.Vec(ne)}),K=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),Z=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),I=e.Record({invalid_user_amount:e.Opt(Z),existing_ticket:e.Opt(ee),error_type:e.Int32}),Te=e.Variant({Ok:W,Err:I}),D=e.Record({result:e.Opt(Te)}),we=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),xe=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([i],[c],[]),finalize_swap:e.Func([e.Record({})],[O],[]),get_auto_finalization_status:e.Func([e.Record({})],[w],[]),get_buyer_state:e.Func([R],[ae],[]),get_buyers_total:e.Func([e.Record({})],[re],[]),get_canister_status:e.Func([e.Record({})],[ce],[]),get_derived_state:e.Func([e.Record({})],[_e],[]),get_init:e.Func([e.Record({})],[j],[]),get_lifecycle:e.Func([e.Record({})],[pe],[]),get_open_ticket:e.Func([e.Record({})],[me],[]),get_sale_parameters:e.Func([e.Record({})],[Ne],[]),get_state:e.Func([e.Record({})],[fe],[]),get_timers:e.Func([e.Record({})],[ve],[]),list_community_fund_participants:e.Func([Se],[H],[]),list_direct_participants:e.Func([$],[Pe],[]),list_sns_neuron_recipes:e.Func([Ve],[X],[]),new_sale_ticket:e.Func([K],[D],[]),notify_payment_failure:e.Func([e.Record({})],[W],[]),refresh_buyer_tokens:e.Func([we],[xe],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var Qs=({IDL:e})=>{let s=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),t=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(t),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)}),r=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(s),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(r),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),i=e.Record({source_principal_id:e.Opt(e.Principal)}),_=e.Record({block_height:e.Opt(e.Nat64)}),N=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:_,Err:N}),c=e.Record({result:e.Opt(l)}),g=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(g),dapp_canister_id:e.Opt(e.Principal)}),u=e.Record({failed_updates:e.Vec(v)}),m=e.Variant({Ok:u,Err:g}),q=e.Record({possibility:e.Opt(m)}),S=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),G=e.Record({error_message:e.Text,error_type:e.Int32}),P=e.Record({governance_error:e.Opt(G)}),p=e.Variant({Ok:P,Err:g}),V=e.Record({possibility:e.Opt(p)}),k=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),y=e.Record({message:e.Opt(e.Text)}),U=e.Variant({Ok:k,Err:y}),f=e.Record({possibility:e.Opt(U)}),T=e.Variant({Ok:e.Record({}),Err:g}),oe=e.Record({possibility:e.Opt(T)}),O=e.Record({set_dapp_controllers_call_result:e.Opt(q),create_sns_neuron_recipes_result:e.Opt(S),settle_community_fund_participation_result:e.Opt(V),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(f),set_mode_call_result:e.Opt(oe),sweep_icp_result:e.Opt(S),claim_neuron_result:e.Opt(S),sweep_sns_result:e.Opt(S)}),w=e.Record({auto_finalize_swap_response:e.Opt(O),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),R=e.Record({principal_id:e.Opt(e.Principal)}),M=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}),E=e.Record({icp:e.Opt(M),has_created_neuron_recipes:e.Opt(e.Bool)}),ae=e.Record({buyer_state:e.Opt(E)}),re=e.Record({buyers_total:e.Nat64}),B=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),z=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}),ie=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)}),ce=e.Record({status:B,memory_size:e.Nat,cycles:e.Nat,settings:z,query_stats:e.Opt(ie),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),_e=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)}),j=e.Record({init:e.Opt(a)}),pe=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)}),de=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),ee=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(de),amount_icp_e8s:e.Nat64}),W=e.Record({ticket:e.Opt(ee)}),ue=e.Record({error_type:e.Opt(e.Int32)}),le=e.Variant({Ok:W,Err:ue}),me=e.Record({result:e.Opt(le)}),te=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(s),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)}),Ne=e.Record({params:e.Opt(te)}),Q=e.Record({id:e.Vec(e.Nat8)}),Oe=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(Q)}),se=e.Record({principals:e.Vec(e.Principal)}),Re=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(se),nns_neuron_id:e.Nat64}),ge=e.Record({buyer_principal:e.Text}),x=e.Variant({CommunityFund:Re,Direct:ge}),ne=e.Record({sns:e.Opt(M),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Oe),investor:e.Opt(x)}),h=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)}),J=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(se),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),F=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(J)}),Y=e.Record({auto_finalize_swap_response:e.Opt(O),neuron_recipes:e.Vec(ne),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(h),cf_participants:e.Vec(F),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,E)),params:e.Opt(te),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),ye=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)}),fe=e.Record({swap:e.Opt(Y),derived:e.Opt(ye)}),ve=e.Record({timers:e.Opt(h)}),Se=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),H=e.Record({cf_participants:e.Vec(F)}),$=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),he=e.Record({participation:e.Opt(E),participant_id:e.Opt(e.Principal)}),Pe=e.Record({participants:e.Vec(he)}),Ve=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),X=e.Record({sns_neuron_recipes:e.Vec(ne)}),K=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),Z=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),I=e.Record({invalid_user_amount:e.Opt(Z),existing_ticket:e.Opt(ee),error_type:e.Int32}),Te=e.Variant({Ok:W,Err:I}),D=e.Record({result:e.Opt(Te)}),we=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),xe=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([i],[c],[]),finalize_swap:e.Func([e.Record({})],[O],[]),get_auto_finalization_status:e.Func([e.Record({})],[w],["query"]),get_buyer_state:e.Func([R],[ae],["query"]),get_buyers_total:e.Func([e.Record({})],[re],[]),get_canister_status:e.Func([e.Record({})],[ce],[]),get_derived_state:e.Func([e.Record({})],[_e],["query"]),get_init:e.Func([e.Record({})],[j],["query"]),get_lifecycle:e.Func([e.Record({})],[pe],["query"]),get_open_ticket:e.Func([e.Record({})],[me],["query"]),get_sale_parameters:e.Func([e.Record({})],[Ne],["query"]),get_state:e.Func([e.Record({})],[fe],["query"]),get_timers:e.Func([e.Record({})],[ve],["query"]),list_community_fund_participants:e.Func([Se],[H],["query"]),list_direct_participants:e.Func([$],[Pe],["query"]),list_sns_neuron_recipes:e.Func([Ve],[X],["query"]),new_sale_ticket:e.Func([K],[D],[]),notify_payment_failure:e.Func([e.Record({})],[W],[]),refresh_buyer_tokens:e.Func([we],[xe],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var Js=({subaccount:e,amount_icp_e8s:s})=>({subaccount:e===void 0?[]:[e],amount_icp_e8s:s});var Ys=require("@dfinity/utils"),Hs=e=>{if(typeof e=="object"&&(0,Ys.nonNullish)(e)&&"message"in e){let s=e.message;return s.includes("has no update method")||s.includes("has no query method")}return!1};var Gt=class e extends L.Canister{constructor(){super(...arguments);this.state=t=>this.caller(t).get_state({});this.notifyPaymentFailure=async()=>{let{ticket:t}=await this.caller({certified:!0}).notify_payment_failure({});return(0,L.fromNullable)(t)};this.notifyParticipation=async t=>await this.caller({certified:!0}).refresh_buyer_tokens(t);this.getUserCommitment=async t=>{let{buyer_state:n}=await this.caller({certified:t.certified}).get_buyer_state({principal_id:t.principal_id});return(0,L.fromNullable)(n)};this.getDerivedState=async({certified:t})=>this.caller({certified:t}).get_derived_state({});this.getSaleParameters=async({certified:t})=>this.caller({certified:t}).get_sale_parameters({});this.getOpenTicket=async t=>{var a;let{result:n}=await this.caller({certified:t.certified}).get_open_ticket({}),o=(0,L.fromDefinedNullable)(n);if("Ok"in o)return(0,L.fromNullable)(o.Ok.ticket);let r=(0,L.fromDefinedNullable)((a=o==null?void 0:o.Err)==null?void 0:a.error_type);throw new zt(r)};this.newSaleTicket=async t=>{let n=Js(t),{result:o}=await this.caller({certified:!0}).new_sale_ticket(n),r=(0,L.fromDefinedNullable)(o);if("Ok"in r)return(0,L.fromDefinedNullable)(r.Ok.ticket);let a=r.Err;throw new Bt({errorType:a.error_type,invalidUserAmount:(0,L.fromNullable)(a.invalid_user_amount??[]),existingTicket:(0,L.fromNullable)(a.existing_ticket??[])})};this.getLifecycle=async t=>this.caller(t).get_lifecycle({});this.getFinalizationStatus=async t=>{try{return await this.caller(t).get_auto_finalization_status({})}catch(n){throw Hs(n)?new Et("getFinalizationStatus"):n}}}static create(t){let{service:n,certifiedService:o,canisterId:r}=(0,L.createServices)({options:t,idlFactory:Qs,certifiedIdlFactory:Ws});return new e(r,n,o)}};var On=async({agent:e,rootOptions:s,certified:t=!0})=>{let n=At.create({...s,agent:e}),{ledger:o,swap:r,governance:a,index:i}=await n.listSnsCanisters({certified:t}),_=(0,ke.fromNullable)(a),N=(0,ke.fromNullable)(o),l=(0,ke.fromNullable)(r),c=(0,ke.fromNullable)(i);return(0,ke.assertNonNullish)(_),(0,ke.assertNonNullish)(N),(0,ke.assertNonNullish)(l),(0,ke.assertNonNullish)(c),new Wt({root:n,governance:Ft.create({canisterId:_,agent:e}),ledger:Xt.IcrcLedgerCanister.create({canisterId:N,agent:e}),swap:Gt.create({canisterId:l,agent:e}),index:Xt.IcrcIndexCanister.create({canisterId:c,agent:e}),certified:t})};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 ss=Object.defineProperty;var Xs=Object.getOwnPropertyDescriptor;var Ks=Object.getOwnPropertyNames;var Zs=Object.prototype.hasOwnProperty;var Is=(e,s)=>{for(var t in s)ss(e,t,{get:s[t],enumerable:!0})},Ds=(e,s,t,o)=>{if(s&&typeof s=="object"||typeof s=="function")for(let n of Ks(s))!Zs.call(e,n)&&n!==t&&ss(e,n,{get:()=>s[n],enumerable:!(o=Xs(s,n))||o.enumerable});return e};var Ls=e=>Ds(ss({},"__esModule",{value:!0}),e);var go={};Is(go,{GetOpenTicketErrorType:()=>Cs,NewSaleTicketResponseErrorType:()=>ks,SnsGovernanceCanister:()=>At,SnsGovernanceError:()=>b,SnsGovernanceTestCanister:()=>Jt,SnsNeuronPermissionType:()=>Ts,SnsProposalDecisionStatus:()=>ws,SnsProposalRewardStatus:()=>Vs,SnsRootCanister:()=>qt,SnsSwapCanister:()=>Ut,SnsSwapGetOpenTicketError:()=>jt,SnsSwapLifecycle:()=>bs,SnsSwapNewTicketError:()=>zt,SnsVote:()=>xs,SnsWrapper:()=>Qt,UnsupportedMethodError:()=>Bt,fromCandidAction:()=>Ps,initSnsWrapper:()=>Ro,neuronSubaccount:()=>cs});module.exports=Ls(go);var d=require("@dfinity/utils");var Mt=({neuronId:{id:e},command:s})=>({subaccount:e,command:[s]}),Et=({neuronId:e,operation:s})=>Mt({neuronId:e,command:{Configure:{operation:[s]}}}),_s=({owner:e,subaccount:s})=>({owner:(0,d.toNullable)(e),subaccount:s===void 0?[]:(0,d.toNullable)({subaccount:s})}),ps=({neuronId:e,permissions:s,principal:t})=>Mt({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(s)}],principal_id:[t]}}}),ds=({neuronId:e,permissions:s,principal:t})=>Mt({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(s)}],principal_id:[t]}}}),us=({neuronId:e,memo:s,amount:t})=>Mt({neuronId:e,command:{Split:{memo:s,amount_e8s:t}}}),ls=({neuronId:e,amount:s,toAccount:t})=>Mt({neuronId:e,command:{Disburse:{to_account:t===void 0?[]:(0,d.toNullable)(_s(t)),amount:s===void 0?[]:[{e8s:s}]}}}),ms=e=>Et({neuronId:e,operation:{StartDissolving:{}}}),Ns=e=>Et({neuronId:e,operation:{StopDissolving:{}}}),Os=({neuronId:e,percentageToStake:s})=>Mt({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,d.toNullable)(s)}}}),Rs=({neuronId:e,percentageToDisburse:s,toAccount:t})=>Mt({neuronId:e,command:{DisburseMaturity:{to_account:t===void 0?[]:(0,d.toNullable)(_s(t)),percentage_to_disburse:s}}}),gs=({neuronId:e,autoStake:s})=>Et({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:s}}}),ys=({neuronId:e,dissolveTimestampSeconds:s})=>Et({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:s}}}),fs=({neuronId:e,additionalDissolveDelaySeconds:s})=>Et({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:s}}}),vs=({neuronId:e,functionId:s,followees:t})=>({subaccount:e.id,command:[{Follow:{function_id:s,followees:t}}]}),Ss=({neuronId:e,proposalId:s,vote:t})=>({subaccount:e.id,command:[{RegisterVote:{vote:t,proposal:[s]}}]}),os=({subaccount:e,memo:s,controller:t})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[s===void 0?{NeuronId:{}}:{MemoAndController:{memo:s,controller:(0,d.toNullable)(t)}}]}}]}),hs=({excludeType:e,beforeProposal:s,includeRewardStatus:t,includeStatus:o,limit:n})=>({exclude_type:BigUint64Array.from(e??[]),before_proposal:(0,d.toNullable)(s),include_reward_status:Int32Array.from(t??[]),include_status:Int32Array.from(o??[]),limit:n??10}),Ps=e=>{if("ManageNervousSystemParameters"in e)return{ManageNervousSystemParameters:_o(e.ManageNervousSystemParameters)};if("AddGenericNervousSystemFunction"in e)return{AddGenericNervousSystemFunction:io(e.AddGenericNervousSystemFunction)};if("SetTopicsForCustomProposals"in e)return{SetTopicsForCustomProposals:e.SetTopicsForCustomProposals};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:no(e.TransferSnsTreasuryFunds)};if("UpgradeSnsControlledCanister"in e)return{UpgradeSnsControlledCanister:oo(e.UpgradeSnsControlledCanister)};if("DeregisterDappCanisters"in e)return{DeregisterDappCanisters:e.DeregisterDappCanisters};if("Unspecified"in e)return{Unspecified:e.Unspecified};if("ManageSnsMetadata"in e)return{ManageSnsMetadata:to(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)}`)},to=e=>({url:(0,d.fromNullable)(e.url),logo:(0,d.fromNullable)(e.logo),name:(0,d.fromNullable)(e.name),description:(0,d.fromNullable)(e.description)}),so=e=>{if(e!==void 0)return{wasm_module_hash:e.wasm_module_hash,store_canister_id:(0,d.fromNullable)(e.store_canister_id),chunk_hashes_list:e.chunk_hashes_list}},oo=e=>({new_canister_wasm:e.new_canister_wasm,chunked_canister_wasm:so((0,d.fromNullable)(e.chunked_canister_wasm)),canister_id:(0,d.fromNullable)(e.canister_id),canister_upgrade_arg:(0,d.fromNullable)(e.canister_upgrade_arg),mode:(0,d.fromNullable)(e.mode)}),no=e=>({from_treasury:e.from_treasury,to_principal:(0,d.fromNullable)(e.to_principal),to_subaccount:(0,d.fromNullable)(e.to_subaccount),memo:(0,d.fromNullable)(e.memo),amount_e8s:e.amount_e8s}),ao=e=>({validator_canister_id:(0,d.fromNullable)(e.validator_canister_id),target_canister_id:(0,d.fromNullable)(e.target_canister_id),validator_method_name:(0,d.fromNullable)(e.validator_method_name),target_method_name:(0,d.fromNullable)(e.target_method_name),topic:(0,d.fromNullable)(e.topic)}),ro=e=>{if(e!==void 0){if("NativeNervousSystemFunction"in e)return{NativeNervousSystemFunction:e.NativeNervousSystemFunction};if("GenericNervousSystemFunction"in e)return{GenericNervousSystemFunction:ao(e.GenericNervousSystemFunction)};throw new Error(`Unknown FunctionType ${JSON.stringify(e)}`)}},io=e=>({id:e.id,name:e.name,description:(0,d.fromNullable)(e.description),function_type:ro((0,d.fromNullable)(e.function_type))}),co=e=>e&&{final_reward_rate_basis_points:(0,d.fromNullable)(e.final_reward_rate_basis_points),initial_reward_rate_basis_points:(0,d.fromNullable)(e.initial_reward_rate_basis_points),reward_rate_transition_duration_seconds:(0,d.fromNullable)(e.reward_rate_transition_duration_seconds),round_duration_seconds:(0,d.fromNullable)(e.round_duration_seconds)},_o=e=>({default_followees:(0,d.fromNullable)(e.default_followees),max_dissolve_delay_seconds:(0,d.fromNullable)(e.max_dissolve_delay_seconds),max_dissolve_delay_bonus_percentage:(0,d.fromNullable)(e.max_dissolve_delay_bonus_percentage),max_followees_per_function:(0,d.fromNullable)(e.max_followees_per_function),neuron_claimer_permissions:(0,d.fromNullable)(e.neuron_claimer_permissions),neuron_minimum_stake_e8s:(0,d.fromNullable)(e.neuron_minimum_stake_e8s),max_neuron_age_for_age_bonus:(0,d.fromNullable)(e.max_neuron_age_for_age_bonus),initial_voting_period_seconds:(0,d.fromNullable)(e.initial_voting_period_seconds),neuron_minimum_dissolve_delay_to_vote_seconds:(0,d.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote_seconds),reject_cost_e8s:(0,d.fromNullable)(e.reject_cost_e8s),max_proposals_to_keep_per_action:(0,d.fromNullable)(e.max_proposals_to_keep_per_action),wait_for_quiet_deadline_increase_seconds:(0,d.fromNullable)(e.wait_for_quiet_deadline_increase_seconds),max_number_of_neurons:(0,d.fromNullable)(e.max_number_of_neurons),transaction_fee_e8s:(0,d.fromNullable)(e.transaction_fee_e8s),max_number_of_proposals_with_ballots:(0,d.fromNullable)(e.max_number_of_proposals_with_ballots),max_age_bonus_percentage:(0,d.fromNullable)(e.max_age_bonus_percentage),neuron_grantable_permissions:(0,d.fromNullable)(e.neuron_grantable_permissions),voting_rewards_parameters:co((0,d.fromNullable)(e.voting_rewards_parameters)),max_number_of_principals_per_neuron:(0,d.fromNullable)(e.max_number_of_principals_per_neuron),automatically_advance_target_version:(0,d.fromNullable)(e.automatically_advance_target_version)});var Ts=(c=>(c[c.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",c[c.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",c[c.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",c[c.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",c[c.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",c[c.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",c[c.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",c[c.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",c[c.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",c[c.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",c[c.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",c))(Ts||{}),Vs=(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))(Vs||{}),ws=(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))(ws||{}),xs=(o=>(o[o.Unspecified=0]="Unspecified",o[o.Yes=1]="Yes",o[o.No=2]="No",o))(xs||{});var bs=(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))(bs||{}),Cs=(o=>(o[o.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",o[o.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",o[o.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",o))(Cs||{}),ks=(i=>(i[i.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",i[i.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",i[i.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",i[i.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",i[i.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",i[i.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",i[i.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",i))(ks||{});var Bt=class extends Error{constructor(t){super();this.methodName=t}};var b=class extends Error{};var zt=class extends Error{constructor({errorType:s,invalidUserAmount:t,existingTicket:o}){super(),this.errorType=s,this.invalidUserAmount=t,this.existingTicket=o}},jt=class extends Error{constructor(t){super();this.errorType=t}};var C=require("@dfinity/utils");var Fs=({IDL:e})=>{let 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)}),t=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(t)}),n=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(o)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),T=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,T))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),V=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(u)}),ne=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),F=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(F),icps_per_token:e.Opt(F),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,r))}),W=e.Record({canister_ids:e.Vec(e.Principal)}),ue=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),le=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)}),me=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(le),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),te=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Ne=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Oe=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),se=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Re=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)}),ge=e.Record({motion_text:e.Text}),ye=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:ee,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:W,TransferSnsTreasuryFunds:ue,UpgradeSnsControlledCanister:me,DeregisterDappCanisters:te,MintSnsTokens:Ne,AdvanceSnsTargetVersion:Oe,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:se,ManageLedgerParameters:Re,Motion:ge}),h=e.Record({url:e.Text,title:e.Text,action:e.Opt(ye),summary:e.Text}),oe=e.Record({current_deadline_timestamp_seconds:e.Nat64}),x=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(h),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(oe),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),M=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),J=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),fe=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),ve=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Se=e.Record({dissolve_timestamp_seconds:e.Nat64}),he=e.Variant({ChangeAutoStakeMaturity:fe,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:ve,SetDissolveTimestamp:Se}),H=e.Record({operation:e.Opt(he)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),Pe=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Te=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Te,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),we=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(we)}),xe=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:h,FinalizeDisburseMaturity:Pe,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),Ge=e.Record({command:e.Opt(xe),timestamp:e.Nat64}),Ue=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ee=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Be=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ue),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ee),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Be),followees:e.Vec(e.Tuple(e.Nat64,T)),neuron_fees_e8s:e.Nat64}),Zt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(n),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(V),pending_version:e.Opt(ne),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,x)),in_flight_commands:e.Vec(e.Tuple(e.Text,Ge)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),ze=e.Record({principals:e.Vec(e.Principal)}),je=e.Record({nns_neuron_hotkeys:e.Opt(ze),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),We=e.Variant({NeuronsFund:je,Direct:e.Record({})}),Qe=e.Record({neuron_ids:e.Vec(p)}),Je=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(We),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(Qe),neuron_id:e.Opt(p)}),Ye=e.Record({neuron_recipes:e.Vec(Je)}),He=e.Record({neuron_recipes:e.Opt(Ye)}),$e=e.Record({id:e.Opt(p),status:e.Int32}),Xe=e.Record({swap_neurons:e.Vec($e)}),Ke=e.Variant({Ok:Xe,Err:e.Int32}),Ze=e.Record({claim_swap_neurons_result:e.Opt(Ke)}),Ie=e.Record({maturity_modulation:e.Opt(l)}),De=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Le=e.Record({mode:e.Opt(e.Int32)}),et=e.Record({neuron_id:e.Opt(p)}),tt=e.Variant({Error:O,Neuron:A}),st=e.Record({result:e.Opt(tt)}),Fe=e.Record({proposal_id:e.Opt(u)}),ot=e.Variant({Error:O,Proposal:x}),nt=e.Record({result:e.Opt(ot)}),at=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Me=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}),rt=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)}),it=e.Record({status:at,memory_size:e.Nat,cycles:e.Nat,settings:Me,query_stats:e.Opt(rt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ct=e.Record({deployed_version:e.Opt(t),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(t)}))}),_t=e.Record({sns_initialization_parameters:e.Text}),pt=e.Record({timers:e.Opt(s)}),dt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),ut=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),lt=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),mt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),Nt=e.Record({neurons:e.Vec(A)}),Ot=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Rt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(x)}),gt=e.Record({}),yt=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),ft=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(yt))}),vt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),St=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:h,StakeMaturity:vt,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),ht=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(St)}),Pt=e.Record({created_neuron_id:e.Opt(p)}),Tt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Vt=e.Record({refreshed_neuron_id:e.Opt(p)}),wt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),xt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),bt=e.Record({transfer_block_height:e.Nat64}),Ct=e.Variant({Error:O,Split:Pt,Follow:e.Record({}),DisburseMaturity:Tt,ClaimOrRefresh:Vt,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Fe,RemoveNeuronPermission:e.Record({}),StakeMaturity:wt,MergeMaturity:xt,Disburse:bt,AddNeuronPermission:e.Record({})}),kt=e.Record({command:e.Opt(Ct)}),Ft=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([He],[Ze],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[V],[]),get_maturity_modulation:e.Func([e.Record({})],[Ie],[]),get_metadata:e.Func([e.Record({})],[De],[]),get_mode:e.Func([e.Record({})],[Le],[]),get_nervous_system_parameters:e.Func([e.Null],[f],[]),get_neuron:e.Func([et],[st],[]),get_proposal:e.Func([Fe],[nt],[]),get_root_canister_status:e.Func([e.Null],[it],[]),get_running_sns_version:e.Func([e.Record({})],[ct],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[_t],[]),get_timers:e.Func([e.Record({})],[pt],[]),get_upgrade_journal:e.Func([dt],[ut],[]),list_nervous_system_functions:e.Func([],[lt],[]),list_neurons:e.Func([mt],[Nt],[]),list_proposals:e.Func([Ot],[Rt],[]),list_topics:e.Func([gt],[ft],[]),manage_neuron:e.Func([ht],[kt],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([Ft],[e.Record({})],[])})};var Ms=({IDL:e})=>{let 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)}),t=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(t)}),n=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(o)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),T=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,T))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),V=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(u)}),ne=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),F=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(F),icps_per_token:e.Opt(F),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,r))}),W=e.Record({canister_ids:e.Vec(e.Principal)}),ue=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),le=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)}),me=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(le),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),te=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Ne=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Oe=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),se=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Re=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)}),ge=e.Record({motion_text:e.Text}),ye=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:ee,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:W,TransferSnsTreasuryFunds:ue,UpgradeSnsControlledCanister:me,DeregisterDappCanisters:te,MintSnsTokens:Ne,AdvanceSnsTargetVersion:Oe,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:se,ManageLedgerParameters:Re,Motion:ge}),h=e.Record({url:e.Text,title:e.Text,action:e.Opt(ye),summary:e.Text}),oe=e.Record({current_deadline_timestamp_seconds:e.Nat64}),x=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(h),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(oe),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),M=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),J=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),fe=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),ve=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Se=e.Record({dissolve_timestamp_seconds:e.Nat64}),he=e.Variant({ChangeAutoStakeMaturity:fe,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:ve,SetDissolveTimestamp:Se}),H=e.Record({operation:e.Opt(he)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),Pe=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Te=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Te,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),we=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(we)}),xe=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:h,FinalizeDisburseMaturity:Pe,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),Ge=e.Record({command:e.Opt(xe),timestamp:e.Nat64}),Ue=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ee=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Be=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ue),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ee),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Be),followees:e.Vec(e.Tuple(e.Nat64,T)),neuron_fees_e8s:e.Nat64}),Zt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(n),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(V),pending_version:e.Opt(ne),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,x)),in_flight_commands:e.Vec(e.Tuple(e.Text,Ge)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),ze=e.Record({principals:e.Vec(e.Principal)}),je=e.Record({nns_neuron_hotkeys:e.Opt(ze),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),We=e.Variant({NeuronsFund:je,Direct:e.Record({})}),Qe=e.Record({neuron_ids:e.Vec(p)}),Je=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(We),stake_e8s:e.Opt(e.Nat64),followees:e.Opt(Qe),neuron_id:e.Opt(p)}),Ye=e.Record({neuron_recipes:e.Vec(Je)}),He=e.Record({neuron_recipes:e.Opt(Ye)}),$e=e.Record({id:e.Opt(p),status:e.Int32}),Xe=e.Record({swap_neurons:e.Vec($e)}),Ke=e.Variant({Ok:Xe,Err:e.Int32}),Ze=e.Record({claim_swap_neurons_result:e.Opt(Ke)}),Ie=e.Record({maturity_modulation:e.Opt(l)}),De=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Le=e.Record({mode:e.Opt(e.Int32)}),et=e.Record({neuron_id:e.Opt(p)}),tt=e.Variant({Error:O,Neuron:A}),st=e.Record({result:e.Opt(tt)}),Fe=e.Record({proposal_id:e.Opt(u)}),ot=e.Variant({Error:O,Proposal:x}),nt=e.Record({result:e.Opt(ot)}),at=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Me=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}),rt=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)}),it=e.Record({status:at,memory_size:e.Nat,cycles:e.Nat,settings:Me,query_stats:e.Opt(rt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ct=e.Record({deployed_version:e.Opt(t),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(t)}))}),_t=e.Record({sns_initialization_parameters:e.Text}),pt=e.Record({timers:e.Opt(s)}),dt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),ut=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),lt=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),mt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),Nt=e.Record({neurons:e.Vec(A)}),Ot=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Rt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(x)}),gt=e.Record({}),yt=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),ft=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(yt))}),vt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),St=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:h,StakeMaturity:vt,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),ht=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(St)}),Pt=e.Record({created_neuron_id:e.Opt(p)}),Tt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Vt=e.Record({refreshed_neuron_id:e.Opt(p)}),wt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),xt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),bt=e.Record({transfer_block_height:e.Nat64}),Ct=e.Variant({Error:O,Split:Pt,Follow:e.Record({}),DisburseMaturity:Tt,ClaimOrRefresh:Vt,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Fe,RemoveNeuronPermission:e.Record({}),StakeMaturity:wt,MergeMaturity:xt,Disburse:bt,AddNeuronPermission:e.Record({})}),kt=e.Record({command:e.Opt(Ct)}),Ft=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([He],[Ze],[]),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([],[V],["query"]),get_maturity_modulation:e.Func([e.Record({})],[Ie],[]),get_metadata:e.Func([e.Record({})],[De],["query"]),get_mode:e.Func([e.Record({})],[Le],["query"]),get_nervous_system_parameters:e.Func([e.Null],[f],["query"]),get_neuron:e.Func([et],[st],["query"]),get_proposal:e.Func([Fe],[nt],["query"]),get_root_canister_status:e.Func([e.Null],[it],[]),get_running_sns_version:e.Func([e.Record({})],[ct],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[_t],["query"]),get_timers:e.Func([e.Record({})],[pt],["query"]),get_upgrade_journal:e.Func([dt],[ut],["query"]),list_nervous_system_functions:e.Func([],[lt],["query"]),list_neurons:e.Func([mt],[Nt],["query"]),list_proposals:e.Func([Ot],[Rt],["query"]),list_topics:e.Func([gt],[ft],["query"]),manage_neuron:e.Func([ht],[kt],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([Ft],[e.Record({})],[])})};var At=class e extends C.Canister{constructor(){super(...arguments);this.listNeurons=async t=>{let{principal:o,limit:n,beforeNeuronId:r}=t,{neurons:a}=await this.caller(t).list_neurons({of_principal:(0,C.toNullable)(o),limit:n??100,start_page_at:(0,C.toNullable)(r)});return a};this.listProposals=async t=>{let{certified:o}=t;return await this.caller({certified:o}).list_proposals(hs(t))};this.listTopics=async t=>{let{certified:o}=t;return await this.caller({certified:o}).list_topics({})};this.getProposal=async t=>{let{proposalId:o}=t,{result:n}=await this.caller(t).get_proposal({proposal_id:(0,C.toNullable)(o)}),r=(0,C.fromNullable)(n);if(r===void 0||"Error"in r)throw new b((r==null?void 0:r.Error.error_message)??"Response type not supported");return r.Proposal};this.listNervousSystemFunctions=async t=>this.caller(t).list_nervous_system_functions();this.metadata=t=>this.caller(t).get_metadata({});this.nervousSystemParameters=t=>this.caller(t).get_nervous_system_parameters(null);this.getNeuron=async t=>{let{neuronId:o}=t,{result:n}=await this.caller(t).get_neuron({neuron_id:(0,C.toNullable)(o)}),r=(0,C.fromNullable)(n);if(r===void 0||"Error"in r)throw new b((r==null?void 0:r.Error.error_message)??"Response type not supported");return r.Neuron};this.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}};this.manageNeuron=async t=>{let o=await this.caller({certified:!0}).manage_neuron(t);return this.assertManageNeuronError(o),o};this.addNeuronPermissions=async t=>{let o=ps(t);await this.manageNeuron(o)};this.removeNeuronPermissions=async t=>{let o=ds(t);await this.manageNeuron(o)};this.splitNeuron=async t=>{let o=us(t),{command:n}=await this.manageNeuron(o),r=(0,C.fromNullable)(n),a=i=>`Split neuron failed (${i})`;if(r===void 0)throw new b(a("no response"));if("Split"in r){let i=r.Split,_=(0,C.fromNullable)(i.created_neuron_id);if(_!==void 0)return _;throw new b(a("no id"))}throw new b(a("unknown"))};this.disburse=async t=>{let o=ls(t);await this.manageNeuron(o)};this.startDissolving=async t=>{let o=ms(t);await this.manageNeuron(o)};this.stopDissolving=async t=>{let o=Ns(t);await this.manageNeuron(o)};this.stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,C.assertPercentageNumber)(o??100);let n=Os({neuronId:t,percentageToStake:o});await this.manageNeuron(n)};this.disburseMaturity=async t=>{(0,C.assertPercentageNumber)(t.percentageToDisburse);let o=Rs(t);await this.manageNeuron(o)};this.autoStakeMaturity=async t=>{let o=gs(t);await this.manageNeuron(o)};this.setDissolveTimestamp=async t=>{let o=ys(t);await this.manageNeuron(o)};this.increaseDissolveDelay=async t=>{let o=fs(t);await this.manageNeuron(o)};this.setTopicFollowees=async t=>{let o=vs(t);await this.manageNeuron(o)};this.registerVote=async t=>{let o=Ss(t);await this.manageNeuron(o)};this.refreshNeuron=async t=>{let o=os({subaccount:t.id});await this.manageNeuron(o)};this.claimNeuron=async({memo:t,controller:o,subaccount:n})=>{let r=os({subaccount:n,memo:t,controller:o}),{command:a}=await this.manageNeuron(r),i=(0,C.fromNullable)(a);if(i===void 0)throw new b("Claim neuron failed");if("ClaimOrRefresh"in i){let _=(0,C.fromNullable)(i.ClaimOrRefresh.refreshed_neuron_id);if(_===void 0)throw new b("Claim neuron failed");return _}throw new b("Claim neuron failed")};this.assertManageNeuronError=({command:t})=>{let o=t[0];if(o!==void 0&&"Error"in o)throw new b(o.Error.error_message)}}static create(t){let{service:o,certifiedService:n,canisterId:r}=(0,C.createServices)({options:t,idlFactory:Ms,certifiedIdlFactory:Fs});return new e(r,o,n)}};var be=require("@dfinity/utils");var As=({IDL:e})=>{let 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)}),t=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(t)}),n=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(o)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),T=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,T))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),V=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(u)}),ne=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),F=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(F),icps_per_token:e.Opt(F),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,r))}),W=e.Record({canister_ids:e.Vec(e.Principal)}),ue=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),le=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)}),me=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(le),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),te=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Ne=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Oe=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),se=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Re=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)}),ge=e.Record({motion_text:e.Text}),ye=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:ee,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:W,TransferSnsTreasuryFunds:ue,UpgradeSnsControlledCanister:me,DeregisterDappCanisters:te,MintSnsTokens:Ne,AdvanceSnsTargetVersion:Oe,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:se,ManageLedgerParameters:Re,Motion:ge}),h=e.Record({url:e.Text,title:e.Text,action:e.Opt(ye),summary:e.Text}),oe=e.Record({current_deadline_timestamp_seconds:e.Nat64}),x=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(h),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(oe),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),M=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),J=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),fe=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),ve=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Se=e.Record({dissolve_timestamp_seconds:e.Nat64}),he=e.Variant({ChangeAutoStakeMaturity:fe,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:ve,SetDissolveTimestamp:Se}),H=e.Record({operation:e.Opt(he)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),Pe=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Te=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Te,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),we=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(we)}),xe=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:h,FinalizeDisburseMaturity:Pe,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),Ge=e.Record({command:e.Opt(xe),timestamp:e.Nat64}),Ue=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ee=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Be=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ue),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ee),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Be),followees:e.Vec(e.Tuple(e.Nat64,T)),neuron_fees_e8s:e.Nat64}),Zt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(n),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(V),pending_version:e.Opt(ne),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,x)),in_flight_commands:e.Vec(e.Tuple(e.Text,Ge)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),ze=e.Record({id:e.Opt(p),amount_e8s:e.Opt(e.Nat64)}),je=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),We=e.Record({target_version:e.Opt(t)}),Qe=e.Record({}),Je=e.Record({principals:e.Vec(e.Principal)}),Ye=e.Record({nns_neuron_hotkeys:e.Opt(Je),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),He=e.Variant({NeuronsFund:Ye,Direct:e.Record({})}),$e=e.Record({neuron_ids:e.Vec(p)}),Xe=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(He),stake_e8s:e.Opt(e.Nat64),followees:e.Opt($e),neuron_id:e.Opt(p)}),Ke=e.Record({neuron_recipes:e.Vec(Xe)}),Ze=e.Record({neuron_recipes:e.Opt(Ke)}),Ie=e.Record({id:e.Opt(p),status:e.Int32}),De=e.Record({swap_neurons:e.Vec(Ie)}),Le=e.Variant({Ok:De,Err:e.Int32}),et=e.Record({claim_swap_neurons_result:e.Opt(Le)}),tt=e.Record({maturity_modulation:e.Opt(l)}),st=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({mode:e.Opt(e.Int32)}),ot=e.Record({neuron_id:e.Opt(p)}),nt=e.Variant({Error:O,Neuron:A}),at=e.Record({result:e.Opt(nt)}),Me=e.Record({proposal_id:e.Opt(u)}),rt=e.Variant({Error:O,Proposal:x}),it=e.Record({result:e.Opt(rt)}),ct=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),_t=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)}),dt=e.Record({status:ct,memory_size:e.Nat,cycles:e.Nat,settings:_t,query_stats:e.Opt(pt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ut=e.Record({deployed_version:e.Opt(t),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(t)}))}),lt=e.Record({sns_initialization_parameters:e.Text}),mt=e.Record({timers:e.Opt(s)}),Nt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Ot=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Rt=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),gt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),yt=e.Record({neurons:e.Vec(A)}),ft=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),vt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(x)}),St=e.Record({}),ht=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),Pt=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(ht))}),Tt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Vt=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:h,StakeMaturity:Tt,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),wt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Vt)}),xt=e.Record({created_neuron_id:e.Opt(p)}),bt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Ct=e.Record({refreshed_neuron_id:e.Opt(p)}),kt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ft=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),It=e.Record({transfer_block_height:e.Nat64}),Dt=e.Variant({Error:O,Split:xt,Follow:e.Record({}),DisburseMaturity:bt,ClaimOrRefresh:Ct,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Me,RemoveNeuronPermission:e.Record({}),StakeMaturity:kt,MergeMaturity:Ft,Disburse:It,AddNeuronPermission:e.Record({})}),Lt=e.Record({command:e.Opt(Dt)}),es=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),ts=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([ze],[je],[]),advance_target_version:e.Func([We],[Qe],[]),claim_swap_neurons:e.Func([Ze],[et],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[V],[]),get_maturity_modulation:e.Func([e.Record({})],[tt],[]),get_metadata:e.Func([e.Record({})],[st],[]),get_mode:e.Func([e.Record({})],[Fe],[]),get_nervous_system_parameters:e.Func([e.Null],[f],[]),get_neuron:e.Func([ot],[at],[]),get_proposal:e.Func([Me],[it],[]),get_root_canister_status:e.Func([e.Null],[dt],[]),get_running_sns_version:e.Func([e.Record({})],[ut],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[lt],[]),get_timers:e.Func([e.Record({})],[mt],[]),get_upgrade_journal:e.Func([Nt],[Ot],[]),list_nervous_system_functions:e.Func([],[Rt],[]),list_neurons:e.Func([gt],[yt],[]),list_proposals:e.Func([ft],[vt],[]),list_topics:e.Func([St],[Pt],[]),manage_neuron:e.Func([wt],[Lt],[]),mint_tokens:e.Func([es],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ts],[e.Record({})],[]),update_neuron:e.Func([A],[e.Opt(O)],[])})};var qs=({IDL:e})=>{let 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)}),t=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(t)}),n=e.Record({upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),requested_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Variant({DappCanisterManagement:e.Null,DaoCommunitySettings:e.Null,ApplicationBusinessLogic:e.Null,CriticalDappOperations:e.Null,TreasuryAssetManagement:e.Null,Governance:e.Null,SnsFrameworkManagement:e.Null}),a=e.Record({topic:e.Opt(r),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)}),i=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:a}),_=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(i)}),N=e.Record({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,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}),l=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),c=e.Record({old_target_version:e.Opt(t),new_target_version:e.Opt(t),is_advanced_automatically:e.Opt(e.Bool)}),g=e.Record({human_readable:e.Opt(e.Text),upgrade_steps:e.Opt(o)}),v=e.Record({status:e.Opt(e.Variant({Success:e.Record({}),Timeout:e.Record({}),ExternalFailure:e.Record({}),InvalidState:e.Record({version:e.Opt(t)})})),human_readable:e.Opt(e.Text)}),u=e.Record({id:e.Nat64}),m=e.Record({current_version:e.Opt(t),expected_version:e.Opt(t),reason:e.Opt(e.Variant({UpgradeSnsToNextVersionProposal:u,BehindTargetVersion:e.Record({})}))}),q=e.Record({upgrade_steps:e.Opt(o)}),S=e.Record({human_readable:e.Opt(e.Text),old_target_version:e.Opt(t),new_target_version:e.Opt(t)}),G=e.Record({event:e.Opt(e.Variant({TargetVersionSet:c,UpgradeStepsReset:g,UpgradeOutcome:v,UpgradeStarted:m,UpgradeStepsRefreshed:q,TargetVersionReset:S})),timestamp_seconds:e.Opt(e.Nat64)}),P=e.Record({entries:e.Vec(G)}),p=e.Record({id:e.Vec(e.Nat8)}),T=e.Record({followees:e.Vec(p)}),k=e.Record({followees:e.Vec(e.Tuple(e.Nat64,T))}),y=e.Record({permissions:e.Vec(e.Int32)}),U=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)}),f=e.Record({default_followees:e.Opt(k),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(y),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(y),voting_rewards_parameters:e.Opt(U),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),V=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(u)}),ne=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Opt(e.Nat64),target_version:e.Opt(t)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),w=e.Record({subaccount:e.Vec(e.Nat8)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(w)}),F=e.Record({human_readable:e.Opt(e.Text)}),E=e.Record({e8s:e.Opt(e.Nat64)}),ae=e.Record({xdrs_per_icp:e.Opt(F),icps_per_token:e.Opt(F),tokens:e.Opt(E)}),re=e.Record({token:e.Opt(e.Int32),account:e.Opt(R),valuation_factors:e.Opt(ae),timestamp_seconds:e.Opt(e.Nat64)}),B=e.Record({valuation:e.Opt(re)}),z=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))}),ie=e.Record({target_version:e.Opt(z)}),ce=e.Variant({TransferSnsTreasuryFunds:B,MintSnsTokens:B,AdvanceSnsTargetVersion:ie}),_e=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),j=e.Record({basis_points:e.Opt(e.Nat64)}),pe=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),de=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)}),ee=e.Record({custom_function_id_to_topic:e.Vec(e.Tuple(e.Nat64,r))}),W=e.Record({canister_ids:e.Vec(e.Principal)}),ue=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),le=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)}),me=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(le),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),te=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Ne=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(w),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),Oe=e.Record({new_target:e.Opt(z)}),Q=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),se=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Re=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)}),ge=e.Record({motion_text:e.Text}),ye=e.Variant({ManageNervousSystemParameters:f,AddGenericNervousSystemFunction:_,ManageDappCanisterSettings:de,RemoveGenericNervousSystemFunction:e.Nat64,SetTopicsForCustomProposals:ee,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:W,TransferSnsTreasuryFunds:ue,UpgradeSnsControlledCanister:me,DeregisterDappCanisters:te,MintSnsTokens:Ne,AdvanceSnsTargetVersion:Oe,Unspecified:e.Record({}),ManageSnsMetadata:Q,ExecuteGenericNervousSystemFunction:se,ManageLedgerParameters:Re,Motion:ge}),h=e.Record({url:e.Text,title:e.Text,action:e.Opt(ye),summary:e.Text}),oe=e.Record({current_deadline_timestamp_seconds:e.Nat64}),x=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(O),action_auxiliary:e.Opt(ce),ballots:e.Vec(e.Tuple(e.Text,_e)),minimum_yes_proportion_of_total:e.Opt(j),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(pe),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(h),proposer:e.Opt(p),wait_for_quiet_state:e.Opt(oe),minimum_yes_proportion_of_exercised:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),M=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),J=e.Record({function_id:e.Nat64,followees:e.Vec(p)}),Y=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),fe=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),ve=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Se=e.Record({dissolve_timestamp_seconds:e.Nat64}),he=e.Variant({ChangeAutoStakeMaturity:fe,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:ve,SetDissolveTimestamp:Se}),H=e.Record({operation:e.Opt(he)}),$=e.Record({vote:e.Int32,proposal:e.Opt(u)}),Pe=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),Te=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),Ve=e.Variant({MemoAndController:Te,NeuronId:e.Record({})}),X=e.Record({by:e.Opt(Ve)}),K=e.Record({permissions_to_remove:e.Opt(y),principal_id:e.Opt(e.Principal)}),Z=e.Record({permissions_to_add:e.Opt(y),principal_id:e.Opt(e.Principal)}),I=e.Record({percentage_to_merge:e.Nat32}),we=e.Record({e8s:e.Nat64}),D=e.Record({to_account:e.Opt(R),amount:e.Opt(we)}),xe=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,Configure:H,RegisterVote:$,SyncCommand:e.Record({}),MakeProposal:h,FinalizeDisburseMaturity:Pe,ClaimOrRefreshNeuron:X,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),Ge=e.Record({command:e.Opt(xe),timestamp:e.Nat64}),Ue=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Ee=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),Be=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)}),A=e.Record({id:e.Opt(p),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(Ue),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,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(Ee),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(Be),followees:e.Vec(e.Tuple(e.Nat64,T)),neuron_fees_e8s:e.Nat64}),Zt=e.Record({root_canister_id:e.Opt(e.Principal),timers:e.Opt(s),cached_upgrade_steps:e.Opt(n),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,_)),metrics:e.Opt(N),maturity_modulation:e.Opt(l),upgrade_journal:e.Opt(P),mode:e.Int32,parameters:e.Opt(f),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(t),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(V),pending_version:e.Opt(ne),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,x)),in_flight_commands:e.Vec(e.Tuple(e.Text,Ge)),sns_metadata:e.Opt(Q),neurons:e.Vec(e.Tuple(e.Text,A)),target_version:e.Opt(t),genesis_timestamp_seconds:e.Nat64}),ze=e.Record({id:e.Opt(p),amount_e8s:e.Opt(e.Nat64)}),je=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),We=e.Record({target_version:e.Opt(t)}),Qe=e.Record({}),Je=e.Record({principals:e.Vec(e.Principal)}),Ye=e.Record({nns_neuron_hotkeys:e.Opt(Je),nns_neuron_controller:e.Opt(e.Principal),nns_neuron_id:e.Opt(e.Nat64)}),He=e.Variant({NeuronsFund:Ye,Direct:e.Record({})}),$e=e.Record({neuron_ids:e.Vec(p)}),Xe=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),participant:e.Opt(He),stake_e8s:e.Opt(e.Nat64),followees:e.Opt($e),neuron_id:e.Opt(p)}),Ke=e.Record({neuron_recipes:e.Vec(Xe)}),Ze=e.Record({neuron_recipes:e.Opt(Ke)}),Ie=e.Record({id:e.Opt(p),status:e.Int32}),De=e.Record({swap_neurons:e.Vec(Ie)}),Le=e.Variant({Ok:De,Err:e.Int32}),et=e.Record({claim_swap_neurons_result:e.Opt(Le)}),tt=e.Record({maturity_modulation:e.Opt(l)}),st=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({mode:e.Opt(e.Int32)}),ot=e.Record({neuron_id:e.Opt(p)}),nt=e.Variant({Error:O,Neuron:A}),at=e.Record({result:e.Opt(nt)}),Me=e.Record({proposal_id:e.Opt(u)}),rt=e.Variant({Error:O,Proposal:x}),it=e.Record({result:e.Opt(rt)}),ct=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),_t=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)}),dt=e.Record({status:ct,memory_size:e.Nat,cycles:e.Nat,settings:_t,query_stats:e.Opt(pt),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ut=e.Record({deployed_version:e.Opt(t),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(t)}))}),lt=e.Record({sns_initialization_parameters:e.Text}),mt=e.Record({timers:e.Opt(s)}),Nt=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat64)}),Ot=e.Record({upgrade_journal:e.Opt(P),upgrade_steps:e.Opt(o),response_timestamp_seconds:e.Opt(e.Nat64),deployed_version:e.Opt(t),target_version:e.Opt(t),upgrade_journal_entry_count:e.Opt(e.Nat64)}),Rt=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(_)}),gt=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(p)}),yt=e.Record({neurons:e.Vec(A)}),ft=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),vt=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(x)}),St=e.Record({}),ht=e.Record({native_functions:e.Opt(e.Vec(_)),topic:e.Opt(r),is_critical:e.Opt(e.Bool),name:e.Opt(e.Text),description:e.Opt(e.Text),custom_functions:e.Opt(e.Vec(_))}),Pt=e.Record({uncategorized_functions:e.Opt(e.Vec(_)),topics:e.Opt(e.Vec(ht))}),Tt=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Vt=e.Variant({Split:M,Follow:J,DisburseMaturity:Y,ClaimOrRefresh:X,Configure:H,RegisterVote:$,MakeProposal:h,StakeMaturity:Tt,RemoveNeuronPermissions:K,AddNeuronPermissions:Z,MergeMaturity:I,Disburse:D}),wt=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Vt)}),xt=e.Record({created_neuron_id:e.Opt(p)}),bt=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Ct=e.Record({refreshed_neuron_id:e.Opt(p)}),kt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ft=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),It=e.Record({transfer_block_height:e.Nat64}),Dt=e.Variant({Error:O,Split:xt,Follow:e.Record({}),DisburseMaturity:bt,ClaimOrRefresh:Ct,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Me,RemoveNeuronPermission:e.Record({}),StakeMaturity:kt,MergeMaturity:Ft,Disburse:It,AddNeuronPermission:e.Record({})}),Lt=e.Record({command:e.Opt(Dt)}),es=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),ts=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([ze],[je],[]),advance_target_version:e.Func([We],[Qe],[]),claim_swap_neurons:e.Func([Ze],[et],[]),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([],[V],["query"]),get_maturity_modulation:e.Func([e.Record({})],[tt],[]),get_metadata:e.Func([e.Record({})],[st],["query"]),get_mode:e.Func([e.Record({})],[Fe],["query"]),get_nervous_system_parameters:e.Func([e.Null],[f],["query"]),get_neuron:e.Func([ot],[at],["query"]),get_proposal:e.Func([Me],[it],["query"]),get_root_canister_status:e.Func([e.Null],[dt],[]),get_running_sns_version:e.Func([e.Record({})],[ut],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[lt],["query"]),get_timers:e.Func([e.Record({})],[mt],["query"]),get_upgrade_journal:e.Func([Nt],[Ot],["query"]),list_nervous_system_functions:e.Func([],[Rt],["query"]),list_neurons:e.Func([gt],[yt],["query"]),list_proposals:e.Func([ft],[vt],["query"]),list_topics:e.Func([St],[Pt],["query"]),manage_neuron:e.Func([wt],[Lt],[]),mint_tokens:e.Func([es],[e.Record({})],[]),refresh_cached_upgrade_steps:e.Func([e.Record({})],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_mode:e.Func([ts],[e.Record({})],[]),update_neuron:e.Func([A],[e.Opt(O)],[])})};var Jt=class e extends be.Canister{constructor(){super(...arguments);this.addMaturity=async t=>{let{id:o,amountE8s:n}=t,{new_maturity_e8s:r}=await this.caller(t).add_maturity({id:(0,be.toNullable)(o),amount_e8s:(0,be.toNullable)(n)}),a=(0,be.fromNullable)(r);if((0,be.isNullish)(a)||a<n)throw new b("No maturity added")}}static create(t){let{service:o,certifiedService:n,canisterId:r}=(0,be.createServices)({options:t,idlFactory:qs,certifiedIdlFactory:As});return new e(r,o,n)}};var Yt=require("@dfinity/utils");var Gs=({IDL:e})=>{let 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)}),t=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(s),testflight:e.Bool,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}),n=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),a=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(r),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),i=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)}),_=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:a,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),N=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),l=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:N,canister_id:e.Principal,chunked_canister_wasm:e.Opt(l),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),g=e.Record({update_canister_list:e.Opt(e.Bool)}),v=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}),u=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:v,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),m=e.Record({status:e.Opt(u),canister_id:e.Opt(e.Principal)}),q=e.Record({root:e.Opt(m),swap:e.Opt(m),ledger:e.Opt(m),index:e.Opt(m),governance:e.Opt(m),dapps:e.Vec(m),archives:e.Vec(m)}),S=e.Record({timers:e.Opt(s)}),G=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),P=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)}),p=e.Record({failure_reason:e.Opt(e.Text)}),T=e.Record({canister_id:e.Opt(e.Principal)}),k=e.Record({canister_ids:e.Vec(e.Principal)}),y=e.Record({canister_ids:e.Opt(k),controller_principal_ids:e.Vec(e.Principal)}),U=e.Record({code:e.Opt(e.Int32),description:e.Text}),f=e.Record({err:e.Opt(U),dapp_canister_id:e.Opt(e.Principal)}),V=e.Record({failed_updates:e.Vec(f)});return e.Service({canister_status:e.Func([o],[_],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([g],[q],[]),get_timers:e.Func([e.Record({})],[S],[]),list_sns_canisters:e.Func([e.Record({})],[G],[]),manage_dapp_canister_settings:e.Func([P],[p],[]),register_dapp_canister:e.Func([T],[e.Record({})],[]),register_dapp_canisters:e.Func([k],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([y],[V],[])})};var Us=({IDL:e})=>{let 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)}),t=e.Record({dapp_canister_ids:e.Vec(e.Principal),timers:e.Opt(s),testflight:e.Bool,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}),n=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Variant({controllers:e.Null,public:e.Null,allowed_viewers:e.Vec(e.Principal)}),a=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(r),wasm_memory_limit:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),i=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)}),_=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:a,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Opt(e.Nat),module_hash:e.Opt(e.Vec(e.Nat8)),reserved_cycles:e.Opt(e.Nat)}),N=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),l=e.Record({wasm_module_hash:e.Vec(e.Nat8),chunk_hashes_list:e.Vec(e.Vec(e.Nat8)),store_canister_id:e.Principal}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:N,canister_id:e.Principal,chunked_canister_wasm:e.Opt(l),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),g=e.Record({update_canister_list:e.Opt(e.Bool)}),v=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}),u=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:v,query_stats:e.Opt(i),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),m=e.Record({status:e.Opt(u),canister_id:e.Opt(e.Principal)}),q=e.Record({root:e.Opt(m),swap:e.Opt(m),ledger:e.Opt(m),index:e.Opt(m),governance:e.Opt(m),dapps:e.Vec(m),archives:e.Vec(m)}),S=e.Record({timers:e.Opt(s)}),G=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),P=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)}),p=e.Record({failure_reason:e.Opt(e.Text)}),T=e.Record({canister_id:e.Opt(e.Principal)}),k=e.Record({canister_ids:e.Vec(e.Principal)}),y=e.Record({canister_ids:e.Opt(k),controller_principal_ids:e.Vec(e.Principal)}),U=e.Record({code:e.Opt(e.Int32),description:e.Text}),f=e.Record({err:e.Opt(U),dapp_canister_id:e.Opt(e.Principal)}),V=e.Record({failed_updates:e.Vec(f)});return e.Service({canister_status:e.Func([o],[_],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([g],[q],[]),get_timers:e.Func([e.Record({})],[S],["query"]),list_sns_canisters:e.Func([e.Record({})],[G],["query"]),manage_dapp_canister_settings:e.Func([P],[p],[]),register_dapp_canister:e.Func([T],[e.Record({})],[]),register_dapp_canisters:e.Func([k],[e.Record({})],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[]),set_dapp_controllers:e.Func([y],[V],[])})};var qt=class e extends Yt.Canister{constructor(){super(...arguments);this.listSnsCanisters=async({certified:t=!0})=>this.caller({certified:t}).list_sns_canisters({})}static create(t){let{service:o,certifiedService:n,canisterId:r}=(0,Yt.createServices)({options:t,idlFactory:Us,certifiedIdlFactory:Gs});return new e(r,o,n)}};var Kt=require("@dfinity/ledger-icrc"),ke=require("@dfinity/utils");var Wt=require("@dfinity/utils");var Gt=require("@dfinity/utils");function uo(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function ns(e,...s){if(!uo(e))throw new Error("Uint8Array expected");if(s.length>0&&!s.includes(e.length))throw new Error(`Uint8Array expected of length ${s}, not of length=${e.length}`)}function as(e,s=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(s&&e.finished)throw new Error("Hash#digest() has already been called")}function Es(e,s){ns(e);let t=s.outputLen;if(e.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var $t=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Ce=(e,s)=>e<<32-s|e>>>s;var Ko=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function lo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function rs(e){return typeof e=="string"&&(e=lo(e)),ns(e),e}var Ht=class{clone(){return this._cloneInto()}},Zo={}.toString;function Bs(e){let s=o=>e().update(rs(o)).digest(),t=e();return s.outputLen=t.outputLen,s.blockLen=t.blockLen,s.create=()=>e(),s}function mo(e,s,t,o){if(typeof e.setBigUint64=="function")return e.setBigUint64(s,t,o);let n=BigInt(32),r=BigInt(4294967295),a=Number(t>>n&r),i=Number(t&r),_=o?4:0,N=o?0:4;e.setUint32(s+_,a,o),e.setUint32(s+N,i,o)}var zs=(e,s,t)=>e&s^~e&t,js=(e,s,t)=>e&s^e&t^s&t,Xt=class extends Ht{constructor(s,t,o,n){super(),this.blockLen=s,this.outputLen=t,this.padOffset=o,this.isLE=n,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(s),this.view=$t(this.buffer)}update(s){as(this);let{view:t,buffer:o,blockLen:n}=this;s=rs(s);let r=s.length;for(let a=0;a<r;){let i=Math.min(n-this.pos,r-a);if(i===n){let _=$t(s);for(;n<=r-a;a+=n)this.process(_,a);continue}o.set(s.subarray(a,a+i),this.pos),this.pos+=i,a+=i,this.pos===n&&(this.process(t,0),this.pos=0)}return this.length+=s.length,this.roundClean(),this}digestInto(s){as(this),Es(s,this),this.finished=!0;let{buffer:t,view:o,blockLen:n,isLE:r}=this,{pos:a}=this;t[a++]=128,this.buffer.subarray(a).fill(0),this.padOffset>n-a&&(this.process(o,0),a=0);for(let c=a;c<n;c++)t[c]=0;mo(o,n-8,BigInt(this.length*8),r),this.process(o,0);let i=$t(s),_=this.outputLen;if(_%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let N=_/4,l=this.get();if(N>l.length)throw new Error("_sha2: outputLen bigger than state");for(let c=0;c<N;c++)i.setUint32(4*c,l[c],r)}digest(){let{buffer:s,outputLen:t}=this;this.digestInto(s);let o=s.slice(0,t);return this.destroy(),o}_cloneInto(s){s||(s=new this.constructor),s.set(...this.get());let{blockLen:t,buffer:o,length:n,finished:r,destroyed:a,pos:i}=this;return s.length=n,s.pos=i,s.finished=r,s.destroyed=a,n%t&&s.buffer.set(o),s}};var No=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Ae=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),qe=new Uint32Array(64),is=class extends Xt{constructor(){super(64,32,8,!1),this.A=Ae[0]|0,this.B=Ae[1]|0,this.C=Ae[2]|0,this.D=Ae[3]|0,this.E=Ae[4]|0,this.F=Ae[5]|0,this.G=Ae[6]|0,this.H=Ae[7]|0}get(){let{A:s,B:t,C:o,D:n,E:r,F:a,G:i,H:_}=this;return[s,t,o,n,r,a,i,_]}set(s,t,o,n,r,a,i,_){this.A=s|0,this.B=t|0,this.C=o|0,this.D=n|0,this.E=r|0,this.F=a|0,this.G=i|0,this.H=_|0}process(s,t){for(let c=0;c<16;c++,t+=4)qe[c]=s.getUint32(t,!1);for(let c=16;c<64;c++){let g=qe[c-15],v=qe[c-2],u=Ce(g,7)^Ce(g,18)^g>>>3,m=Ce(v,17)^Ce(v,19)^v>>>10;qe[c]=m+qe[c-7]+u+qe[c-16]|0}let{A:o,B:n,C:r,D:a,E:i,F:_,G:N,H:l}=this;for(let c=0;c<64;c++){let g=Ce(i,6)^Ce(i,11)^Ce(i,25),v=l+g+zs(i,_,N)+No[c]+qe[c]|0,m=(Ce(o,2)^Ce(o,13)^Ce(o,22))+js(o,n,r)|0;l=N,N=_,_=i,i=a+v|0,a=r,r=n,n=o,o=v+m|0}o=o+this.A|0,n=n+this.B|0,r=r+this.C|0,a=a+this.D|0,i=i+this.E|0,_=_+this.F|0,N=N+this.G|0,l=l+this.H|0,this.set(o,n,r,a,i,_,N,l)}roundClean(){qe.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Ws=Bs(()=>new is);var cs=({index:e,controller:s})=>{let o=[12,...(0,Gt.asciiStringToByteArray)("neuron-stake"),...s.toUint8Array(),...(0,Gt.numberToUint8Array)(e)],n=Ws.create();return n.update((0,Gt.arrayOfNumberToUint8Array)(o)),n.digest()};var Qt=class{constructor({root:s,governance:t,ledger:o,swap:n,index:r,certified:a}){this.listNeurons=s=>this.governance.listNeurons(this.mergeParams(s));this.listProposals=s=>this.governance.listProposals(this.mergeParams(s));this.getProposal=s=>this.governance.getProposal(this.mergeParams(s));this.listNervousSystemFunctions=s=>this.governance.listNervousSystemFunctions(this.mergeParams(s));this.metadata=s=>Promise.all([this.governance.metadata(this.mergeParams(s)),this.ledger.metadata(this.mergeParams(s))]);this.nervousSystemParameters=s=>this.governance.nervousSystemParameters(this.mergeParams(s));this.ledgerMetadata=s=>this.ledger.metadata(this.mergeParams(s));this.transactionFee=s=>this.ledger.transactionFee(this.mergeParams(s));this.totalTokensSupply=s=>this.ledger.totalTokensSupply(this.mergeParams(s));this.balance=s=>this.ledger.balance(this.mergeParams(s));this.transfer=s=>this.ledger.transfer(s);this.getNeuron=s=>this.governance.getNeuron(this.mergeParams(s));this.queryNeuron=s=>this.governance.queryNeuron(this.mergeParams(s));this.nextNeuronAccount=async s=>{for(let t=0;t<65536;t++){let o=cs({index:t,controller:s}),n={id:o},r=await this.governance.queryNeuron({neuronId:n,certified:!1});if(r===void 0&&(r=await this.governance.queryNeuron({neuronId:n,certified:!0}),r===void 0))return{account:{...this.owner,subaccount:o},index:BigInt(t)}}throw new b("No more neuron accounts available")};this.stakeNeuron=async({stakeE8s:s,source:t,controller:o,createdAt:n,fee:r})=>{this.assertCertified("stakeNeuron");let{account:a,index:i}=await this.nextNeuronAccount(o);if(a.subaccount===void 0)throw new b("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:s,to:{owner:a.owner,subaccount:(0,Wt.toNullable)(a.subaccount)},from_subaccount:t.subaccount,memo:(0,Wt.bigIntToUint8Array)(i),created_at_time:n,fee:r}),this.governance.claimNeuron({memo:BigInt(i),controller:o,subaccount:a.subaccount})};this.increaseStakeNeuron=async({stakeE8s:s,source:t,neuronId:o})=>(this.assertCertified("stakeNeuron"),await this.ledger.transfer({amount:s,to:{...this.owner,subaccount:(0,Wt.toNullable)(Uint8Array.from(o.id))},from_subaccount:t.subaccount}),this.governance.refreshNeuron(o));this.getNeuronBalance=async s=>{let t={...this.owner,subaccount:Uint8Array.from(s.id)};return this.ledger.balance({...t,certified:this.certified})};this.addNeuronPermissions=s=>this.governance.addNeuronPermissions(s);this.refreshNeuron=s=>this.governance.refreshNeuron(s);this.claimNeuron=s=>this.governance.claimNeuron(s);this.removeNeuronPermissions=s=>this.governance.removeNeuronPermissions(s);this.splitNeuron=s=>this.governance.splitNeuron(s);this.disburse=s=>this.governance.disburse(s);this.startDissolving=s=>this.governance.startDissolving(s);this.stopDissolving=s=>this.governance.stopDissolving(s);this.setDissolveTimestamp=s=>this.governance.setDissolveTimestamp(s);this.increaseDissolveDelay=s=>this.governance.increaseDissolveDelay(s);this.setTopicFollowees=s=>this.governance.setTopicFollowees(s);this.registerVote=async s=>this.governance.registerVote(s);this.swapState=s=>this.swap.state(this.mergeParams(s));this.notifyPaymentFailure=()=>this.swap.notifyPaymentFailure();this.notifyParticipation=s=>this.swap.notifyParticipation(s);this.getUserCommitment=s=>this.swap.getUserCommitment(this.mergeParams(s));this.getOpenTicket=s=>this.swap.getOpenTicket(this.mergeParams(s));this.newSaleTicket=s=>this.swap.newSaleTicket(s);this.getLifecycle=s=>this.swap.getLifecycle(this.mergeParams(s));this.getFinalizationStatus=s=>this.swap.getFinalizationStatus(this.mergeParams(s));this.getSaleParameters=s=>this.swap.getSaleParameters(this.mergeParams(s));this.getDerivedState=s=>this.swap.getDerivedState(this.mergeParams(s));this.getTransactions=s=>this.index.getTransactions(s);this.stakeMaturity=s=>this.governance.stakeMaturity(s);this.disburseMaturity=s=>this.governance.disburseMaturity(s);this.autoStakeMaturity=s=>this.governance.autoStakeMaturity(s);this.assertCertified=s=>{if(!this.certified)throw new b(`Call to ${s} needs to be certified`)};this.root=s,this.governance=t,this.ledger=o,this.swap=n,this.index=r,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}}mergeParams(s){return{...s,certified:this.certified}}get owner(){return{owner:this.canisterIds.governanceCanisterId}}};var L=require("@dfinity/utils");var Qs=({IDL:e})=>{let s=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),t=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)}),o=e.Record({serialized_representation:e.Opt(e.Text)}),n=e.Record({coefficient_intervals:e.Vec(t),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(o)}),r=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(s),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(r),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),i=e.Record({source_principal_id:e.Opt(e.Principal)}),_=e.Record({block_height:e.Opt(e.Nat64)}),N=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:_,Err:N}),c=e.Record({result:e.Opt(l)}),g=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(g),dapp_canister_id:e.Opt(e.Principal)}),u=e.Record({failed_updates:e.Vec(v)}),m=e.Variant({Ok:u,Err:g}),q=e.Record({possibility:e.Opt(m)}),S=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),G=e.Record({error_message:e.Text,error_type:e.Int32}),P=e.Record({governance_error:e.Opt(G)}),p=e.Variant({Ok:P,Err:g}),T=e.Record({possibility:e.Opt(p)}),k=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),y=e.Record({message:e.Opt(e.Text)}),U=e.Variant({Ok:k,Err:y}),f=e.Record({possibility:e.Opt(U)}),V=e.Variant({Ok:e.Record({}),Err:g}),ne=e.Record({possibility:e.Opt(V)}),O=e.Record({set_dapp_controllers_call_result:e.Opt(q),create_sns_neuron_recipes_result:e.Opt(S),settle_community_fund_participation_result:e.Opt(T),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(f),set_mode_call_result:e.Opt(ne),sweep_icp_result:e.Opt(S),claim_neuron_result:e.Opt(S),sweep_sns_result:e.Opt(S)}),w=e.Record({auto_finalize_swap_response:e.Opt(O),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),R=e.Record({principal_id:e.Opt(e.Principal)}),F=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}),E=e.Record({icp:e.Opt(F),has_created_neuron_recipes:e.Opt(e.Bool)}),ae=e.Record({buyer_state:e.Opt(E)}),re=e.Record({buyers_total:e.Nat64}),B=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),z=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}),ie=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)}),ce=e.Record({status:B,memory_size:e.Nat,cycles:e.Nat,settings:z,query_stats:e.Opt(ie),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),_e=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)}),j=e.Record({init:e.Opt(a)}),pe=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)}),de=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),ee=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(de),amount_icp_e8s:e.Nat64}),W=e.Record({ticket:e.Opt(ee)}),ue=e.Record({error_type:e.Opt(e.Int32)}),le=e.Variant({Ok:W,Err:ue}),me=e.Record({result:e.Opt(le)}),te=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(s),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)}),Ne=e.Record({params:e.Opt(te)}),Oe=e.Record({id:e.Vec(e.Nat8)}),Q=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(Oe)}),se=e.Record({principals:e.Vec(e.Principal)}),Re=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(se),nns_neuron_id:e.Nat64}),ge=e.Record({buyer_principal:e.Text}),ye=e.Variant({CommunityFund:Re,Direct:ge}),h=e.Record({sns:e.Opt(F),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Q),investor:e.Opt(ye)}),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)}),x=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(se),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),M=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(x)}),J=e.Record({auto_finalize_swap_response:e.Opt(O),neuron_recipes:e.Vec(h),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(M),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,E)),params:e.Opt(te),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Y=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)}),fe=e.Record({swap:e.Opt(J),derived:e.Opt(Y)}),ve=e.Record({timers:e.Opt(oe)}),Se=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),he=e.Record({cf_participants:e.Vec(M)}),H=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),$=e.Record({participation:e.Opt(E),participant_id:e.Opt(e.Principal)}),Pe=e.Record({participants:e.Vec($)}),Te=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),Ve=e.Record({sns_neuron_recipes:e.Vec(h)}),X=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),K=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),Z=e.Record({invalid_user_amount:e.Opt(K),existing_ticket:e.Opt(ee),error_type:e.Int32}),I=e.Variant({Ok:W,Err:Z}),we=e.Record({result:e.Opt(I)}),D=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),xe=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([i],[c],[]),finalize_swap:e.Func([e.Record({})],[O],[]),get_auto_finalization_status:e.Func([e.Record({})],[w],[]),get_buyer_state:e.Func([R],[ae],[]),get_buyers_total:e.Func([e.Record({})],[re],[]),get_canister_status:e.Func([e.Record({})],[ce],[]),get_derived_state:e.Func([e.Record({})],[_e],[]),get_init:e.Func([e.Record({})],[j],[]),get_lifecycle:e.Func([e.Record({})],[pe],[]),get_open_ticket:e.Func([e.Record({})],[me],[]),get_sale_parameters:e.Func([e.Record({})],[Ne],[]),get_state:e.Func([e.Record({})],[fe],[]),get_timers:e.Func([e.Record({})],[ve],[]),list_community_fund_participants:e.Func([Se],[he],[]),list_direct_participants:e.Func([H],[Pe],[]),list_sns_neuron_recipes:e.Func([Te],[Ve],[]),new_sale_ticket:e.Func([X],[we],[]),notify_payment_failure:e.Func([e.Record({})],[W],[]),refresh_buyer_tokens:e.Func([D],[xe],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var Js=({IDL:e})=>{let s=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),t=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)}),o=e.Record({serialized_representation:e.Opt(e.Text)}),n=e.Record({coefficient_intervals:e.Vec(t),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(o)}),r=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(s),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(r),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),i=e.Record({source_principal_id:e.Opt(e.Principal)}),_=e.Record({block_height:e.Opt(e.Nat64)}),N=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),l=e.Variant({Ok:_,Err:N}),c=e.Record({result:e.Opt(l)}),g=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(g),dapp_canister_id:e.Opt(e.Principal)}),u=e.Record({failed_updates:e.Vec(v)}),m=e.Variant({Ok:u,Err:g}),q=e.Record({possibility:e.Opt(m)}),S=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),G=e.Record({error_message:e.Text,error_type:e.Int32}),P=e.Record({governance_error:e.Opt(G)}),p=e.Variant({Ok:P,Err:g}),T=e.Record({possibility:e.Opt(p)}),k=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),y=e.Record({message:e.Opt(e.Text)}),U=e.Variant({Ok:k,Err:y}),f=e.Record({possibility:e.Opt(U)}),V=e.Variant({Ok:e.Record({}),Err:g}),ne=e.Record({possibility:e.Opt(V)}),O=e.Record({set_dapp_controllers_call_result:e.Opt(q),create_sns_neuron_recipes_result:e.Opt(S),settle_community_fund_participation_result:e.Opt(T),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(f),set_mode_call_result:e.Opt(ne),sweep_icp_result:e.Opt(S),claim_neuron_result:e.Opt(S),sweep_sns_result:e.Opt(S)}),w=e.Record({auto_finalize_swap_response:e.Opt(O),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),R=e.Record({principal_id:e.Opt(e.Principal)}),F=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}),E=e.Record({icp:e.Opt(F),has_created_neuron_recipes:e.Opt(e.Bool)}),ae=e.Record({buyer_state:e.Opt(E)}),re=e.Record({buyers_total:e.Nat64}),B=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),z=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}),ie=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)}),ce=e.Record({status:B,memory_size:e.Nat,cycles:e.Nat,settings:z,query_stats:e.Opt(ie),idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),_e=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)}),j=e.Record({init:e.Opt(a)}),pe=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)}),de=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),ee=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(de),amount_icp_e8s:e.Nat64}),W=e.Record({ticket:e.Opt(ee)}),ue=e.Record({error_type:e.Opt(e.Int32)}),le=e.Variant({Ok:W,Err:ue}),me=e.Record({result:e.Opt(le)}),te=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(s),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)}),Ne=e.Record({params:e.Opt(te)}),Oe=e.Record({id:e.Vec(e.Nat8)}),Q=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(Oe)}),se=e.Record({principals:e.Vec(e.Principal)}),Re=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,hotkeys:e.Opt(se),nns_neuron_id:e.Nat64}),ge=e.Record({buyer_principal:e.Text}),ye=e.Variant({CommunityFund:Re,Direct:ge}),h=e.Record({sns:e.Opt(F),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Q),investor:e.Opt(ye)}),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)}),x=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(se),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),M=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(x)}),J=e.Record({auto_finalize_swap_response:e.Opt(O),neuron_recipes:e.Vec(h),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(M),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,E)),params:e.Opt(te),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Y=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)}),fe=e.Record({swap:e.Opt(J),derived:e.Opt(Y)}),ve=e.Record({timers:e.Opt(oe)}),Se=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),he=e.Record({cf_participants:e.Vec(M)}),H=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),$=e.Record({participation:e.Opt(E),participant_id:e.Opt(e.Principal)}),Pe=e.Record({participants:e.Vec($)}),Te=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),Ve=e.Record({sns_neuron_recipes:e.Vec(h)}),X=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),K=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),Z=e.Record({invalid_user_amount:e.Opt(K),existing_ticket:e.Opt(ee),error_type:e.Int32}),I=e.Variant({Ok:W,Err:Z}),we=e.Record({result:e.Opt(I)}),D=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),xe=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([i],[c],[]),finalize_swap:e.Func([e.Record({})],[O],[]),get_auto_finalization_status:e.Func([e.Record({})],[w],["query"]),get_buyer_state:e.Func([R],[ae],["query"]),get_buyers_total:e.Func([e.Record({})],[re],[]),get_canister_status:e.Func([e.Record({})],[ce],[]),get_derived_state:e.Func([e.Record({})],[_e],["query"]),get_init:e.Func([e.Record({})],[j],["query"]),get_lifecycle:e.Func([e.Record({})],[pe],["query"]),get_open_ticket:e.Func([e.Record({})],[me],["query"]),get_sale_parameters:e.Func([e.Record({})],[Ne],["query"]),get_state:e.Func([e.Record({})],[fe],["query"]),get_timers:e.Func([e.Record({})],[ve],["query"]),list_community_fund_participants:e.Func([Se],[he],["query"]),list_direct_participants:e.Func([H],[Pe],["query"]),list_sns_neuron_recipes:e.Func([Te],[Ve],["query"]),new_sale_ticket:e.Func([X],[we],[]),notify_payment_failure:e.Func([e.Record({})],[W],[]),refresh_buyer_tokens:e.Func([D],[xe],[]),reset_timers:e.Func([e.Record({})],[e.Record({})],[])})};var Ys=({subaccount:e,amount_icp_e8s:s})=>({subaccount:e===void 0?[]:[e],amount_icp_e8s:s});var Hs=require("@dfinity/utils"),$s=e=>{if(typeof e=="object"&&(0,Hs.nonNullish)(e)&&"message"in e){let s=e.message;return s.includes("has no update method")||s.includes("has no query method")}return!1};var Ut=class e extends L.Canister{constructor(){super(...arguments);this.state=t=>this.caller(t).get_state({});this.notifyPaymentFailure=async()=>{let{ticket:t}=await this.caller({certified:!0}).notify_payment_failure({});return(0,L.fromNullable)(t)};this.notifyParticipation=async t=>await this.caller({certified:!0}).refresh_buyer_tokens(t);this.getUserCommitment=async t=>{let{buyer_state:o}=await this.caller({certified:t.certified}).get_buyer_state({principal_id:t.principal_id});return(0,L.fromNullable)(o)};this.getDerivedState=async({certified:t})=>this.caller({certified:t}).get_derived_state({});this.getSaleParameters=async({certified:t})=>this.caller({certified:t}).get_sale_parameters({});this.getOpenTicket=async t=>{var a;let{result:o}=await this.caller({certified:t.certified}).get_open_ticket({}),n=(0,L.fromDefinedNullable)(o);if("Ok"in n)return(0,L.fromNullable)(n.Ok.ticket);let r=(0,L.fromDefinedNullable)((a=n==null?void 0:n.Err)==null?void 0:a.error_type);throw new jt(r)};this.newSaleTicket=async t=>{let o=Ys(t),{result:n}=await this.caller({certified:!0}).new_sale_ticket(o),r=(0,L.fromDefinedNullable)(n);if("Ok"in r)return(0,L.fromDefinedNullable)(r.Ok.ticket);let a=r.Err;throw new zt({errorType:a.error_type,invalidUserAmount:(0,L.fromNullable)(a.invalid_user_amount??[]),existingTicket:(0,L.fromNullable)(a.existing_ticket??[])})};this.getLifecycle=async t=>this.caller(t).get_lifecycle({});this.getFinalizationStatus=async t=>{try{return await this.caller(t).get_auto_finalization_status({})}catch(o){throw $s(o)?new Bt("getFinalizationStatus"):o}}}static create(t){let{service:o,certifiedService:n,canisterId:r}=(0,L.createServices)({options:t,idlFactory:Js,certifiedIdlFactory:Qs});return new e(r,o,n)}};var Ro=async({agent:e,rootOptions:s,certified:t=!0})=>{let o=qt.create({...s,agent:e}),{ledger:n,swap:r,governance:a,index:i}=await o.listSnsCanisters({certified:t}),_=(0,ke.fromNullable)(a),N=(0,ke.fromNullable)(n),l=(0,ke.fromNullable)(r),c=(0,ke.fromNullable)(i);return(0,ke.assertNonNullish)(_),(0,ke.assertNonNullish)(N),(0,ke.assertNonNullish)(l),(0,ke.assertNonNullish)(c),new Qt({root:o,governance:At.create({canisterId:_,agent:e}),ledger:Kt.IcrcLedgerCanister.create({canisterId:N,agent:e}),swap:Ut.create({canisterId:l,agent:e}),index:Kt.IcrcIndexCanister.create({canisterId:c,agent:e}),certified:t})};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:
|