meta sp_corecrypto,AccountId32 [u8; 32]  0frame_system,AccountInfoIndex,AccountDatanonceIndex$consumers RefCount$providers RefCount,sufficients RefCountdata,AccountDatadpolymesh_common_utilitiestraits balances,AccountDatafreeBalance reservedBalance,misc_frozenBalance(fee_frozenBalance 4frame_support dispatch@PerDispatchClassT normal T,operational T$mandatory T (sp_weights$weight_v2Weight ref_time$ u64(proof_size$ u64$((,8<<(sp_runtimegenericdigest(DigestItem(PreRuntime@DConsensusEngineId0Vec$Consensus@DConsensusEngineId0VecSeal@DConsensusEngineId0VecOther0VecdRuntimeEnvironmentUpdated@DHH0frame_system,EventRecordELT, phasePhaseeventLEtopicsVecL `polymesh_runtime_developruntime0RuntimeEventSystemPpframe_system::EventIndicestxpallet_indices::Event Balancesx|pallet_balances::EventHTransactionPaymentpallet_transaction_payment::Event Identity|pallet_identity::EventLCddServiceProviders-pallet_group::EventDPolymeshCommittee9pallet_committee::Event LCommitteeMembershipMpallet_group::Event HTechnicalCommitteeUpallet_committee::Event pTechnicalCommitteeMembership]pallet_group::Event @UpgradeCommitteeepallet_committee::Event hUpgradeCommitteeMembershipmpallet_group::Event MultiSigu|pallet_multisig::EventBridgetpallet_bridge::EventStakingxpallet_staking::Event OffencesXpallet_offences::EventSessionTpallet_session::EventGrandpaTpallet_grandpa::Event ImOnlinepallet_im_online::EventSudolpallet_sudo::EventAssetppallet_asset::EventLCapitalDistributionpallet_capital_distribution::Event(Checkpoint`pallet_checkpoint::EventDComplianceManagerpallet_compliance_manager::Event!$Portfolio\pallet_portfolio::Event",ProtocolFeepallet_protocol_fee::Event#$Schedulerpallet_scheduler::Event$(Settlementpallet_settlement::Event%(Statistics`pallet_statistics::Event& StoEhpallet_sto::Event' Treasurya|pallet_treasury::Event(Utilityexpallet_utility::Event)BaseuHpallet_base::Event*8ExternalAgents}tpallet_external_agents::Event+Relayerxpallet_relayer::Event,$Contractspallet_contracts::Event.DPolymeshContractspolymesh_contracts::Event/ Preimage|pallet_preimage::Event0 NftDpallet_nft::Event1$TestUtilspallet_test_utils::Event2P 0frame_systempalletEventT@ExtrinsicSuccess4dispatch_infoT0DispatchInfoAn extrinsic completed successfully.$AccountIdBalance1An account was created with some free balance. \[did, account, free_balance] Transfer|HOption$AccountId|HOption$AccountIdBalance0OptionTransfer succeeded (from_did, from, to_did, to, value, memo).(BalanceSet(IdentityId$AccountIdBalanceBalanceA balance was set by root (did, who, free, reserved).PAccountBalanceBurned (IdentityId$AccountIdBalance=The account and the amount of unlocked balance of that account that was burned.(caller Id, caller account, amount) Reserved$AccountIdBalanceSome balance was reserved (moved from free to reserved). \[who, value](Unreserved$AccountIdBalance!Some balance was unreserved (moved from reserved to free). \[who, value]HReserveRepatriated$AccountId$AccountIdBalanceStatus MSome balance was moved from the reserve of the first account to the second account.Final argument indicates the destination balance type.\[from, to, balance, destination_status]\Events for this module.|OptionTNoneSome Lpolymesh_primitives,identity_id(IdentityId8[u8; UUID_LEN]OptionTNoneSomeLpolymesh_primitivesMemo [u8; 32]4frame_supporttraitstokensmisc4BalanceStatusFree Reservedhpallet_transaction_payment RawEventBalance$AccountIdHTransactionFeePaid  who$AccountId(actual_feeBalance tipBalanceYA transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee,\has been paid by `who`.\Events for this module.dpolymesh_common_utilitiestraits identity RawEvent$AccountIdMoment(T(DidCreated (IdentityId$AccountIdpVec> DIdentity created.(DID, primary key, secondary keys)HSecondaryKeysAdded(IdentityIdpVec> Secondary keys added to identity.<(DID, new keys)PSecondaryKeysRemoved(IdentityId8Vec Secondary keys removed from identity.(DID, the keys that got removed)`SecondaryKeyLeftIdentity(IdentityId$AccountId A secondary key left their identity.P(DID, secondary key)xSecondaryKeyPermissionsUpdated(IdentityId$AccountId,Permissions,Permissions Secondary key permissions updated. (DID, updated secondary key, previous permissions, new permissions)DPrimaryKeyUpdated (IdentityId$AccountId$AccountId Primary key of identity changed.(DID, old primary key account ID, new ID)(ClaimAdded(IdentityId4IdentityClaim `Claim added to identity.0(DID, claim)0ClaimRevoked(IdentityId4IdentityClaim pClaim revoked from identity.0(DID, claim)HAssetDidRegistered(IdentityIdTicker pAsset's identity registered.L(Asset DID, ticker)HAuthorizationAdded(IdentityId|HOptionDOption( u64pAuthorizationData8Option `New authorization added.1(authorised_by, target_did, target_key, auth_id, authorization_data, expiry)PAuthorizationRevoked |HOptionDOption( u64 Authorization revoked by the authorizer.(authorized_identity, authorized_key, auth_id)TAuthorizationRejected |HOptionDOption( u64 Authorization rejected by the user who was authorized.(authorized_identity, authorized_key, auth_id)TAuthorizationConsumed |HOptionDOption( u64 \Authorization consumed.(authorized_identity, authorized_key, auth_id)xAuthorizationRetryLimitReached |HOptionDOption( u64 Accepting Authorization retry limit reached.(authorized_identity, authorized_key, auth_id)CddRequirementForPrimaryKeyUpdated)bool CDD requirement for updating primary key changed.D(new_requirement)PCddClaimsInvalidated(IdentityId(MomentACDD claims generated by `IdentityId` (a CDD Provider) have been invalidated from$`Moment`.(CDD provider DID, disable from date)LSecondaryKeysFrozen(IdentityId All Secondary keys of the identity ID are frozen.(DID)TSecondaryKeysUnfrozen(IdentityId All Secondary keys of the identity ID are unfrozen.(DID)PCustomClaimTypeAdded (IdentityIdDCustomClaimTypeId0Vec A new CustomClaimType was added.<(DID, id, Type)Except,BTreeSet Lpolymesh_primitivestickerTicker@[u8; TICKER_LEN]  BTreeSetT Lpolymesh_primitivessubsetDSubsetRestrictionA WholeThese,BTreeSetExcept,BTreeSet Lpolymesh_primitives4secondary_keyDPalletPermissions,pallet_name(PalletNameHdispatchable_namesDDispatchableNamesLpolymesh_primitives(PalletName0Vec Lpolymesh_primitivessubsetDSubsetRestrictionA WholeThese,BTreeSetExcept,BTreeSetLpolymesh_primitives@DispatchableName0Vec BTreeSetT BTreeSetT Lpolymesh_primitivessubsetDSubsetRestrictionA WholeThese,BTreeSetExcept,BTreeSet Lpolymesh_primitives,identity_id,PortfolioId did(IdentityIdkind4PortfolioKind Lpolymesh_primitives,identity_id4PortfolioKindDefaultUserclaimClaimOptionT(NoneSome( Lpolymesh_primitives8identity_claimClaim((AccreditedScope$AffiliateScope$BuyLockupScope(SellLockupScopePCustomerDueDiligence CddId@KnowYourCustomerScope0Jurisdiction ,CountryCodeScope ExemptedScopeBlockedScopeCustomDCustomClaimTypeId4Option  Lpolymesh_primitives8identity_claimScope Identity(IdentityIdTickerTickerCustom0Vec  Lpolymesh_primitivescdd_idCddId [u8; 32]  Lpolymesh_primitives0jurisdiction,CountryCodeAFAXALDZASADAOAIAQAG AR AM AW AU ATAZBSBHBDBBBYBEBZBJBMBTBOBABWBVBRVGIO BN!BG"BF#BI$KH%CM&CA'CV(KY)CF*TD+CL,CN-HK.MO/CX0CC1CO2KM3CG4CD5CK6CR7CI8HR9CU:CY;CZ<DK=DJ>DM?DO@ECAEGBSVCGQDEREEEFETGFKHFOIFJJFIKFRLGFMPFNTFOGAPGMQGERDESGHTGIUGRVGLWGDXGPYGUZGT[GG\GN]GW^GY_HT`HMaVAbHNcHUdISeINfIDgIRhIQiIEjIMkILlITmJMnJPoJEpJOqKZrKEsKItKPuKRvKWwKGxLAyLVzLB{LS|LR}LY~LILTLUMKMGMWMYMVMLMTMHMQMRMUYTMXFMMDMCMNMEMSMAMZMMNANRNPNLANNCNZNINENGNUNFMPNOOMPKPWPSPAPGPYPEPHPNPLPTPRQARERORURWBLSHKNLCMFPMVCWSSMSTSASNRSSCSLSGSKSISBSOZAGSSSESLKSDSRSJSZSECHSYTWTJTZTHTLTGTKTOTTTNTRTMTCTVUGUAAEGBUSUMUYUZVUVEVNVIWFEHYEZMZWBQCWSX Lpolymesh_primitives8identity_claimDCustomClaimTypeId u32OptionTNoneSomeOptionTNoneSome Lpolymesh_primitives4authorizationDAuthorizationData$AccountId(`AttestPrimaryKeyRotation(IdentityId@RotatePrimaryKey8TransferTickerTickerDAddMultiSigSigner$AccountIdXTransferAssetOwnershipTicker0JoinIdentity,Permissions@PortfolioCustody,PortfolioId,BecomeAgentTicker!(AgentGroupLAddRelayerPayingKey $AccountId$AccountIdBalancelRotatePrimaryKeyToSecondary,Permissions ! Lpolymesh_primitivesagent(AgentGroupFullCustom%AGId(ExceptMeta4PolymeshV1CAA4PolymeshV1PIA% Lpolymesh_primitivesagentAGId u32)-dpolymesh_common_utilitiestraitsgroup RawEvent $AccountId0RuntimeEventLI1,MemberAdded(IdentityId(IdentityIdThe given member was added; see the transaction for who.lcaller DID, New member DID.4MemberRemoved(IdentityId(IdentityIdThe given member was removed; see the transaction for who.caller DID, member DID that get removed.4MemberRevoked(IdentityId(IdentityIdThe given member has been revoked at specific time-stamp.caller DID, member DID that get revoked.8MembersSwapped (IdentityId(IdentityId(IdentityIdTwo members were swapped; see the transaction for who.caller DID, Removed DID, New add DID.0MembersReset(IdentityId5The membership was reset; see the transaction for who the new set is.caller DID, List of new members.HActiveLimitChanged (IdentityId,MemberCount,MemberCount-The limit of how many active members there can be concurrently was changed.DummylPhantom member, never used.\Events for this module.10pallet_group$Instance259@pallet_committee RawEvent Hash,,BlockNumberI=( Proposed (IdentityId4ProposalIndex,HashA motion (given hash) has been proposed (by given account) with a threshold (given `MemberCount`).Parameters: caller DID, proposal index, proposal hash.Voted(IdentityId4ProposalIndex,Hash)bool,MemberCount,MemberCount,MemberCount A motion (given hash) has been voted on by given account, leavingIa tally (yes votes, no votes and total seats given respectively as `MemberCount`).caller DID, Proposal index, Proposal hash, current vote, yay vote count, nay vote count, total seats.4VoteRetracted(IdentityId4ProposalIndex,Hash)boolA vote on a motion (given hash) has been retracted.caller DID, ProposalIndex, Proposal hash, vote that was retracted(FinalVotes(IdentityId4ProposalIndex,Hash55Final votes on a motion (given hash)caller DID, ProposalIndex, Proposal hash, yes voters, no voter Approved(IdentityId,Hash,MemberCount,MemberCount,MemberCount A motion was approved by the required threshold with the followingAtally (yes votes, no votes and total seats given respectively as `MemberCount`).MParameters: caller DID, proposal hash, yay vote count, nay vote count, total seats. Rejected(IdentityId,Hash,MemberCount,MemberCount,MemberCount A motion was rejected by the required threshold with the followingAtally (yes votes, no votes and total seats given respectively as `MemberCount`).MParameters: caller DID, proposal hash, yay vote count, nay vote count, total seats. Executed (IdentityId,HashA8DispatchResult9A motion was executed; `DispatchResult` is `Ok(())` if returned without error. Parameters: caller DID, proposal hash, result of proposal dispatch.dReleaseCoordinatorUpdated(IdentityId|HOptionRelease coordinator has been updated.Parameters: caller DID, DID of the release coordinator.LExpiresAfterUpdated(IdentityIdI\MaybeBlockProposal expiry time has been updated.Parameters: caller DID, new expiry time (if any).PVoteThresholdUpdated (IdentityId u32 u32 Voting threshold has been updatedParameters: caller DID, numerator, denominator\Events for this module.=@pallet_committee$Instance1AResultTEE`OkE Err`EIdpolymesh_common_utilities(MaybeBlock,BlockNumberSome,BlockNumberNoneMdpolymesh_common_utilitiestraitsgroup RawEvent $AccountId0RuntimeEventLIQ,MemberAdded(IdentityId(IdentityIdThe given member was added; see the transaction for who.lcaller DID, New member DID.4MemberRemoved(IdentityId(IdentityIdThe given member was removed; see the transaction for who.caller DID, member DID that get removed.4MemberRevoked(IdentityId(IdentityIdThe given member has been revoked at specific time-stamp.caller DID, member DID that get revoked.8MembersSwapped (IdentityId(IdentityId(IdentityIdTwo members were swapped; see the transaction for who.caller DID, Removed DID, New add DID.0MembersReset(IdentityId5The membership was reset; see the transaction for who the new set is.caller DID, List of new members.HActiveLimitChanged (IdentityId,MemberCount,MemberCount-The limit of how many active members there can be concurrently was changed.DummylPhantom member, never used.\Events for this module.Q0pallet_group$Instance1U@pallet_committee RawEvent Hash,,BlockNumberIY( Proposed (IdentityId4ProposalIndex,HashA motion (given hash) has been proposed (by given account) with a threshold (given `MemberCount`).Parameters: caller DID, proposal index, proposal hash.Voted(IdentityId4ProposalIndex,Hash)bool,MemberCount,MemberCount,MemberCount A motion (given hash) has been voted on by given account, leavingIa tally (yes votes, no votes and total seats given respectively as `MemberCount`).caller DID, Proposal index, Proposal hash, current vote, yay vote count, nay vote count, total seats.4VoteRetracted(IdentityId4ProposalIndex,Hash)boolA vote on a motion (given hash) has been retracted.caller DID, ProposalIndex, Proposal hash, vote that was retracted(FinalVotes(IdentityId4ProposalIndex,Hash55Final votes on a motion (given hash)caller DID, ProposalIndex, Proposal hash, yes voters, no voter Approved(IdentityId,Hash,MemberCount,MemberCount,MemberCount A motion was approved by the required threshold with the followingAtally (yes votes, no votes and total seats given respectively as `MemberCount`).MParameters: caller DID, proposal hash, yay vote count, nay vote count, total seats. Rejected(IdentityId,Hash,MemberCount,MemberCount,MemberCount A motion was rejected by the required threshold with the followingAtally (yes votes, no votes and total seats given respectively as `MemberCount`).MParameters: caller DID, proposal hash, yay vote count, nay vote count, total seats. Executed (IdentityId,HashA8DispatchResult9A motion was executed; `DispatchResult` is `Ok(())` if returned without error. Parameters: caller DID, proposal hash, result of proposal dispatch.dReleaseCoordinatorUpdated(IdentityId|HOptionRelease coordinator has been updated.Parameters: caller DID, DID of the release coordinator.LExpiresAfterUpdated(IdentityIdI\MaybeBlockProposal expiry time has been updated.Parameters: caller DID, new expiry time (if any).PVoteThresholdUpdated (IdentityId u32 u32 Voting threshold has been updatedParameters: caller DID, numerator, denominator\Events for this module.Y@pallet_committee$Instance3]dpolymesh_common_utilitiestraitsgroup RawEvent $AccountId0RuntimeEventLIa,MemberAdded(IdentityId(IdentityIdThe given member was added; see the transaction for who.lcaller DID, New member DID.4MemberRemoved(IdentityId(IdentityIdThe given member was removed; see the transaction for who.caller DID, member DID that get removed.4MemberRevoked(IdentityId(IdentityIdThe given member has been revoked at specific time-stamp.caller DID, member DID that get revoked.8MembersSwapped (IdentityId(IdentityId(IdentityIdTwo members were swapped; see the transaction for who.caller DID, Removed DID, New add DID.0MembersReset(IdentityId5The membership was reset; see the transaction for who the new set is.caller DID, List of new members.HActiveLimitChanged (IdentityId,MemberCount,MemberCount-The limit of how many active members there can be concurrently was changed.DummylPhantom member, never used.\Events for this module.a0pallet_group$Instance3e@pallet_committee RawEvent Hash,,BlockNumberIi( Proposed (IdentityId4ProposalIndex,HashA motion (given hash) has been proposed (by given account) with a threshold (given `MemberCount`).Parameters: caller DID, proposal index, proposal hash.Voted(IdentityId4ProposalIndex,Hash)bool,MemberCount,MemberCount,MemberCount A motion (given hash) has been voted on by given account, leavingIa tally (yes votes, no votes and total seats given respectively as `MemberCount`).caller DID, Proposal index, Proposal hash, current vote, yay vote count, nay vote count, total seats.4VoteRetracted(IdentityId4ProposalIndex,Hash)boolA vote on a motion (given hash) has been retracted.caller DID, ProposalIndex, Proposal hash, vote that was retracted(FinalVotes(IdentityId4ProposalIndex,Hash55Final votes on a motion (given hash)caller DID, ProposalIndex, Proposal hash, yes voters, no voter Approved(IdentityId,Hash,MemberCount,MemberCount,MemberCount A motion was approved by the required threshold with the followingAtally (yes votes, no votes and total seats given respectively as `MemberCount`).MParameters: caller DID, proposal hash, yay vote count, nay vote count, total seats. Rejected(IdentityId,Hash,MemberCount,MemberCount,MemberCount A motion was rejected by the required threshold with the followingAtally (yes votes, no votes and total seats given respectively as `MemberCount`).MParameters: caller DID, proposal hash, yay vote count, nay vote count, total seats. Executed (IdentityId,HashA8DispatchResult9A motion was executed; `DispatchResult` is `Ok(())` if returned without error. Parameters: caller DID, proposal hash, result of proposal dispatch.dReleaseCoordinatorUpdated(IdentityId|HOptionRelease coordinator has been updated.Parameters: caller DID, DID of the release coordinator.LExpiresAfterUpdated(IdentityIdI\MaybeBlockProposal expiry time has been updated.Parameters: caller DID, new expiry time (if any).PVoteThresholdUpdated (IdentityId u32 u32 Voting threshold has been updatedParameters: caller DID, numerator, denominator\Events for this module.i@pallet_committee$Instance4mdpolymesh_common_utilitiestraitsgroup RawEvent $AccountId0RuntimeEventLIq,MemberAdded(IdentityId(IdentityIdThe given member was added; see the transaction for who.lcaller DID, New member DID.4MemberRemoved(IdentityId(IdentityIdThe given member was removed; see the transaction for who.caller DID, member DID that get removed.4MemberRevoked(IdentityId(IdentityIdThe given member has been revoked at specific time-stamp.caller DID, member DID that get revoked.8MembersSwapped (IdentityId(IdentityId(IdentityIdTwo members were swapped; see the transaction for who.caller DID, Removed DID, New add DID.0MembersReset(IdentityId5The membership was reset; see the transaction for who the new set is.caller DID, List of new members.HActiveLimitChanged (IdentityId,MemberCount,MemberCount-The limit of how many active members there can be concurrently was changed.DummylPhantom member, never used.\Events for this module.q0pallet_group$Instance4udpolymesh_common_utilitiestraits multisig RawEvent$AccountId0>( u64Event emitted after creation of a multisig.eArguments: caller DID, multisig address, signers (pending approval), signatures required.4ProposalAdded (IdentityId$AccountId( u64Event emitted after adding a proposal.Arguments: caller DID, multisig, proposal ID.@ProposalExecuted(IdentityId$AccountId( u64)boolEvent emitted when a proposal is executed.Arguments: caller DID, multisig, proposal ID, result.LMultiSigSignerAdded (IdentityId$AccountId}PSignatoryEvent emitted when a signatory is added.Arguments: caller DID, multisig, added signer.`MultiSigSignerAuthorized (IdentityId$AccountId}PSignatory Event emitted when a multisig signatory is authorized to be added.Arguments: caller DID, multisig, authorized signer.TMultiSigSignerRemoved (IdentityId$AccountId}PSignatoryEvent emitted when a multisig signatory is removed.Arguments: caller DID, multisig, removed signer.MultiSigSignaturesRequiredChanged (IdentityId$AccountId( u64Event emitted when the number of required signatures is changed.Arguments: caller DID, multisig, new required signatures.@ProposalApproved(IdentityId$AccountId}PSignatory( u64Event emitted when the proposal get approved.Arguments: caller DID, multisig, authorized signer, proposal id.TProposalRejectionVote(IdentityId$AccountId}PSignatory( u64 Event emitted when a vote is cast in favor of rejecting a proposal.Arguments: caller DID, multisig, authorized signer, proposal id.@ProposalRejected (IdentityId$AccountId( u64 Event emitted when a proposal is rejected.Arguments: caller DID, multisig, proposal ID.\ProposalExecutionFailed`4DispatchError Event emitted when there's an error in proposal execution@SchedulingFailed`4DispatchError tScheduling of proposal fails.\Events for this module.y}} Lpolymesh_primitives4secondary_key$Signatory$AccountId Identity(IdentityIdAccount$AccountId4pallet_bridge RawEvent$AccountId,BlockNumberDDControllerChanged(IdentityId$AccountIdConfirmation of a signer set change.0AdminChanged(IdentityId$AccountIdtConfirmation of Admin change.Confirmation of POLYX upgrade on Polymesh from POLY tokens on Ethereum.Frozen(IdentityIdNotification of freezing the bridge. Unfrozen(IdentityIdNotification of unfreezing the bridge. FrozenTx(IdentityIdLBridgeTxNotification of freezing a transaction.(UnfrozenTx(IdentityIdLBridgeTxNotification of unfreezing a transaction. aAn event emitted after a vector of transactions is handled. The parameter is a vector ofQtuples of recipient account, its nonce, and the status of the processed transaction.DBridgeTxScheduled (IdentityIdLBridgeTx,BlockNumber PBridge Tx Scheduled.XBridgeTxScheduleFailed (IdentityIdLBridgeTx0Vec tFailed to schedule Bridge Tx.@FreezeAdminAdded(IdentityId$AccountId A new freeze admin has been added.HFreezeAdminRemoved(IdentityId$AccountIdA freeze admin has been removed.$TxRemoved(IdentityIdLBridgeTxNotification of removing a transaction.8BridgeTxFailed (IdentityIdLBridgeTx`4DispatchErrorBridge Tx failed. Recipient missing CDD or limit reached.\Events for this module.4pallet_bridge BridgeTxAccountnonce u32$recipientAccountamountBalancetx_hash,H256 4pallet_bridge8pallet_staking RawEventBalance$AccountIdD$EraPayout  EraIndexBalanceBalance UThe era payout has been set; the first balance is the validator-payout; the second isthe remainder from the maximum amount of reward.\[era_index, validator_payout, remainder\]Reward (IdentityId$AccountIdBalance9The staker has been rewarded by this amount. \[stash_identity, stash, amount\]Slash$AccountIdBalance!One validator (and its nominators) has been slashed by the given amount.T\[validator, amount\]hOldSlashingReportDiscarded0SessionIndexAn old slashing report from a prior era was discarded because it couldnot be processed. \[session_index\]User has updated their nominations$Withdrawn$AccountIdBalance YAn account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`from the unlocking queue. \[stash, amount\]dPermissionedIdentityAdded(IdentityId(IdentityId An DID has issued a candidacy. See the transaction for who.GC identity , Validator's identity.lPermissionedIdentityRemoved(IdentityId(IdentityId The given member was removed. See the transaction for who.GC identity , Validator's identity.TInvalidatedNominators (IdentityId$AccountId8Vec Remove the nominators from the valid nominators when there CDD expired.Caller, Stash accountId of nominatorsPCommissionCapUpdated (IdentityIdPerbillPerbill When commission cap get updated.X(old value, new value)lMinimumBondThresholdUpdated|HOptionBalanceMin bond threshold was updated (new value).RewardPaymentSchedulingInterrupted $AccountId EraIndex`4DispatchErrorWhen scheduling of reward payments get interrupted.dSlashingAllowedForChanged8SlashingSwitchUpdate for whom balance get slashed.\Events for this module.8pallet_staking>)At the end of the session, at least one validator was found to be offline. The [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted by this pallet. @pallet_im_onlinesr25519,app_sr25519Public>8pallet_stakingHIndividualExposure$AccountIdBalance who$AccountIdvalueBalance,pallet_sudo RawEvent$AccountId SudidA8DispatchResultA sudo just took place. \[result\](KeyChangedDOptionThe \[sudoer\] just switched identity; the old key is supplied.(SudoAsDoneA8DispatchResultA sudo just took place. \[result\]\Events for this module.dpolymesh_common_utilitiestraitsasset RawEventMoment($AccountIdx0AssetCreated (IdentityIdTicker)bool$AssetType(IdentityId$AssetNamePVec`OptionEvent for creation of the asset.caller DID/ owner DID, ticker, divisibility, asset type, beneficiary DID, asset name, identifiers, funding roundHIdentifiersUpdated (IdentityIdTickerPVecEvent emitted when any token identifiers are updated. caller DID, ticker, a vector of (identifier type, identifier value)LDivisibilityChanged (IdentityIdTicker)boolEvent for change in divisibility.caller DID, ticker, divisibility@TransferWithData(IdentityIdTicker(IdentityId(IdentityIdBalance0Vec5An additional event to Transfer; emitted when `transfer_with_data` is called.caller DID , ticker, from DID, to DID, value, data(IsIssuableTicker)boolPis_issuable() outputticker, return value (true if issuable)@TickerRegistered (IdentityIdTicker8Option|Emit when ticker is registered.caller DID / ticker owner did, ticker, ticker owner, expiryDTickerTransferred (IdentityIdTicker(IdentityIdEmit when ticker is transferred.caller DID / ticker transferred to DID, ticker, fromdAssetOwnershipTransferred (IdentityIdTicker(IdentityIdEmit when token ownership is transferred.caller DID / token ownership transferred to DID, ticker, from,AssetFrozen(IdentityIdTickerAn event emitted when an asset is frozen.xParameter: caller DID, ticker.4AssetUnfrozen(IdentityIdTicker An event emitted when an asset is unfrozen.xParameter: caller DID, ticker.0AssetRenamed (IdentityIdTicker$AssetName An event emitted when a token is renamed.Parameters: caller DID, ticker, new token name.A custom asset type already exists on-chain.1caller DID, the ID of the custom asset type, the string contents registered.dCustomAssetTypeRegistered (IdentityIdDCustomAssetTypeId0VecA custom asset type was registered on-chain.1caller DID, the ID of the custom asset type, the string contents registered.TSetAssetMetadataValue(IdentityIdTickerIHAssetMetadataValueMOption>dSet asset metadata value.(Caller DID, ticker, metadata value, optional value details)pSetAssetMetadataValueDetails (IdentityIdTickerQAssetMetadataValueDetailSet asset metadata value details (expire, lock status).(Caller DID, ticker, value details)xRegisterAssetMetadataLocalType(IdentityIdTickerYDAssetMetadataName]TAssetMetadataLocalKeyaDAssetMetadataSpecRegister asset metadata local type.(Caller DID, ticker, Local type name, Local type key, type specs)|RegisterAssetMetadataGlobalType YDAssetMetadataNameyXAssetMetadataGlobalKeyaDAssetMetadataSpecRegister asset metadata global type.(Global type name, Global type key, type specs)@AssetTypeChanged (IdentityIdTicker$AssetTypeAn event emitted when the type of an asset changed.Parameters: caller DID, ticker, new token type.\LocalMetadataKeyDeleted (IdentityIdTicker]TAssetMetadataLocalKeyAn event emitted when a local metadata key has been removed.Parameters: caller ticker, Local type namePMetadataValueDeleted (IdentityIdTicker}@AssetMetadataKeyAn event emitted when a local metadata value has been removed.Parameters: caller ticker, Local type nameLAssetBalanceUpdated(IdentityIdTickerBalanceLOptionLOptionTPortfolioUpdateReason Emitted when Tokens were issued, redeemed or transferred.1Contains the [`IdentityId`] of the receiver/issuer/redeemer, the [`Ticker`] for the token, the balance that was issued/transferred/redeemed,the [`PortfolioId`] of the source, the [`PortfolioId`] of the destination and the [`PortfolioUpdateReason`].dAssetAffirmationExemptionTickermAn asset has been added to the list of pre aprroved receivement (valid for all identities).Parameters: [`Ticker`] of the pre approved asset.|RemoveAssetAffirmationExemptionTicker}An asset has been removed from the list of pre aprroved receivement (valid for all identities).Parameters: [`Ticker`] of the asset.@PreApprovedAsset(IdentityIdTickerAn identity has added an asset to the list of pre aprroved receivement.-Parameters: [`IdentityId`] of caller, [`Ticker`] of the pre approved asset.XRemovePreApprovedAsset(IdentityIdTicker%An identity has removed an asset to the list of pre aprroved receivement.Parameters: [`IdentityId`] of caller, [`Ticker`] of the asset.\Events for this module. Lpolymesh_primitivesasset$AssetType00EquityCommon Lpolymesh_primitives@asset_identifier Lpolymesh_primitives document(DocumentId u32 Lpolymesh_primitives document Document uri!,DocumentUri0content_hash%0DocumentHashname=0DocumentName doc_typeAPOption,filing_date8Option! Lpolymesh_primitives document,DocumentUri0Vec% Lpolymesh_primitives4document_hash0DocumentHash$NoneH512) [u8; 64]H384- [u8; 48]H3201 [u8; 40]H256 [u8; 32]H2245 [u8; 28]H1929 [u8; 24]H160  [u8; 20]H128 [u8; 16])@-01(59= Lpolymesh_primitives document0DocumentName0VecAOptionTENoneSomeEE Lpolymesh_primitives document0DocumentType0VecI Lpolymesh_primitives8asset_metadataHAssetMetadataValue0VecMOptionTQNoneSomeQQ Lpolymesh_primitives8asset_metadata`AssetMetadataValueDetailMoment(expire8Option,lock_statusU|AssetMetadataLockStatusU Lpolymesh_primitives8asset_metadata\AssetMetadataLockStatusMoment( UnlockedLocked,LockedUntil(MomentY Lpolymesh_primitives8asset_metadataDAssetMetadataName0Vec] Lpolymesh_primitives8asset_metadataTAssetMetadataLocalKey( u64a Lpolymesh_primitives8asset_metadataDAssetMetadataSpec  urle,Option,descriptionmOption type_defu>eOptionTiNoneSomeiiLpolymesh_primitives Url0VecmOptionTqNoneSomeqq Lpolymesh_primitives8asset_metadata`AssetMetadataDescription0VecuOptionT0NoneSome0y Lpolymesh_primitives8asset_metadataXAssetMetadataGlobalKey( u64} Lpolymesh_primitives8asset_metadata@AssetMetadataKeyGlobalyXAssetMetadataGlobalKeyLocal]TAssetMetadataLocalKeyOptionTNoneSome Lpolymesh_primitives$portfolioTPortfolioUpdateReasonIssuedHfunding_round_name`Option Redeemed,Transferred8instruction_idTOption@instruction_memo0OptionHControllerTransferOptionTNoneSome Lpolymesh_primitives(settlement4InstructionId( u64 `pallet_corporate_actions0distributionEventCreated  EventDidCAId0DistributionA capital distribution, with details included,1was created by the DID (permissioned agent) for the CA identified by `CAId`.(Agent DID, CA's ID, distribution details)8BenefitClaimed EventDid EventDidCAId0DistributionBalance Tax QA token holder's benefit of a capital distribution for the given `CAId` was claimed.(Caller DID, Holder/Claimant DID, CA's ID, updated distribution details, DID's benefit, DID's tax %)$Reclaimed  EventDidCAIdBalance Stats from `push_benefit` was emitted.(Agent DID, CA's ID, max requested DIDs, processed DIDs, failed DIDs)Removed EventDidCAId A capital distribution was removed.P(Agent DID, CA's ID)\Events for this module. Lpolymesh_primitives(event_only$EventOnlyTT`pallet_corporate_actionsCAIdtickerTicker local_id$LocalCAId`pallet_corporate_actions$LocalCAId u32 `pallet_corporate_actions0distribution0Distribution from,PortfolioId currencyTicker$per_shareBalanceamountBalance$remainingBalance$reclaimed)bool(payment_at(Moment(expires_at8Option 4sp_arithmetic(per_thingsPermill u32dpolymesh_common_utilitiestraits(checkpointEventDCheckpointCreated|HOptionTicker0CheckpointIdBalance(Moment dA checkpoint was created.(caller DID, ticker, checkpoint ID, total supply, checkpoint timestamp)MaximumSchedulesComplexityChanged(IdentityId( u64 )The maximum complexity for an arbitrary ticker's schedule set was changed.d(GC DID, the new maximum) BTreeSetT((dpolymesh_common_utilitiestraitsHcompliance_managerEvent$pComplianceRequirementCreated (IdentityIdTickerTComplianceRequirementEmitted when new compliance requirement is created.(caller DID, Ticker, ComplianceRequirement).pComplianceRequirementRemoved (IdentityIdTicker u32Emitted when a compliance requirement is removed.(caller DID, Ticker, requirement_id).\AssetComplianceReplaced (IdentityIdTickerhVecEmitted when an asset compliance is replaced.Parameters: caller DID, ticker, new asset compliance.PAssetComplianceReset(IdentityIdTickerEmitted when an asset compliance of a ticker is reset.T(caller DID, Ticker).XAssetComplianceResumed(IdentityIdTickerEmitted when an asset compliance for a given ticker gets resume.T(caller DID, Ticker).TAssetCompliancePaused(IdentityIdTickerEmitted when an asset compliance for a given ticker gets paused.T(caller DID, Ticker).pComplianceRequirementChanged (IdentityIdTickerTComplianceRequirementEmitted when compliance requirement get modified/change.(caller DID, Ticker, ComplianceRequirement).xTrustedDefaultClaimIssuerAdded (IdentityIdTicker4TrustedIssuerEmitted when default claim issuer list for a given ticker gets added.(caller DID, Ticker, Added TrustedIssuer).TrustedDefaultClaimIssuerRemoved (IdentityIdTicker(IdentityIdEmitted when default claim issuer list for a given ticker get removed.(caller DID, Ticker, Removed TrustedIssuer).\Events for this module. Lpolymesh_primitivesHcompliance_managerTComplianceRequirement Dsender_conditions8VecLreceiver_conditions8Vecid u32 Lpolymesh_primitives$condition$Condition8condition_type4ConditionTypeissuersHVec Lpolymesh_primitives$condition4ConditionType$IsPresentClaim IsAbsentClaimIsAnyOf(Vec IsNoneOf(Vec(IsIdentity8TargetIdentity Lpolymesh_primitives$condition8TargetIdentity4ExternalAgent Specific(IdentityId Lpolymesh_primitives$condition4TrustedIssuerissuer(IdentityId,trusted_for(TrustedFor Lpolymesh_primitives$condition(TrustedFor Any Specific8Vec Lpolymesh_primitives8identity_claim$ClaimType((Accredited$Affiliate$BuyLockup(SellLockupPCustomerDueDiligence@KnowYourCustomer0Jurisdiction ExemptedBlockedCustomDCustomClaimTypeId `pallet_corporate_actionsEvent \MaxDetailsLengthChanged(IdentityId u32The maximum length of `details` in bytes was changed.P(GC DID, new length)xDefaultTargetIdentitiesChanged (IdentityIdTicker@TargetIdentitiesThe set of default `TargetIdentities` for a ticker changed.(Agent DID, Ticker, New TargetIdentities)pDefaultWithholdingTaxChanged (IdentityIdTicker TaxThe default withholding tax for a ticker changed.t(Agent DID, Ticker, New Tax).`DidWithholdingTaxChanged(IdentityIdTicker(IdentityId,OptionThe withholding tax specific to a DID for a ticker changed.(Agent DID, Ticker, Taxed DID, New Tax).,CAInitiated EventDidCAIdA CA was linked to a set of docs.(Agent DID, CA Id, List of doc identifiers)$CARemoved EventDidCAIdDA CA was removed.H(Agent DID, CA Id)DRecordDateChanged  EventDidCAId$treatmenttargets@TargetIdentities\default_withholding_tax Tax `pallet_corporate_actionsCAKindHPredictableBenefitPUnpredictableBenefit0IssuerNotice8ReorganizationOther OptionTNoneSome`pallet_corporate_actions(RecordDatedate(Moment(checkpoint0CACheckpoint`pallet_corporate_actions0CACheckpoint$Scheduled(ScheduleId( u64 Existing0CheckpointId!`pallet_corporate_actions$CADetails0Vec%) `pallet_corporate_actionsballotEventCreated(IdentityIdCAId- A vote was cast in a corporate ballot.`(voter DID, CAId, Votes)0RangeChanged (IdentityIdCAId-5 `pallet_corporate_actionsballot,BallotTitle0Vec9== `pallet_corporate_actionsballotMotion titleA,MotionTitle$info_linkE8MotionInfoLinkchoicesI@VecA `pallet_corporate_actionsballot,MotionTitle0VecE `pallet_corporate_actionsballot8MotionInfoLink0VecIMM `pallet_corporate_actionsballot,ChoiceTitle0VecQUU `pallet_corporate_actionsballot(BallotVotepowerBalance fallbackY,OptionYOptionT]NoneSome]]a,pallet_pips RawEvent$AccountId,BlockNumberPPHistoricalPipsPruned (IdentityId)bool)boolEPruning Historical PIPs is enabled or disabled (caller DID, old value, new value)mPipIdBalancee,OptionqXOptionI\MaybeBlocky0ProposalDataA PIP was made with a `Balance` stake.4# Parameters:QCaller DID, Proposer, PIP ID, deposit, URL, description, expiry time, proposal data.PProposalStateUpdated (IdentityIdmPipId}4ProposalStateTriggered each time the state of a proposal is amendedVoted(IdentityId$AccountIdmPipId)boolBalance`AccountId` voted `bool` on the proposal referenced by `PipId`$PipClosed (IdentityIdmPipId)boolPip has been closed, bool indicates whether data is prunedHExecutionScheduled (IdentityIdmPipId,BlockNumberExecution of a PIP has been scheduled at specific block.tDefaultEnactmentPeriodChanged (IdentityId,BlockNumber,BlockNumberDefault enactment period (in blocks) has been changed.(caller DID, old period, new period)tMinimumProposalDepositChanged (IdentityIdBalanceBalance|Minimum deposit amount modified(caller DID, old amount, new amount)\PendingPipExpiryChanged (IdentityIdI\MaybeBlockI\MaybeBlockAmount of blocks after which a pending PIP expires.(caller DID, old expiry, new expiry)XMaxPipSkipCountChanged (IdentityId0SkippedCount0SkippedCount The maximum times a PIP can be skipped was changed.(caller DID, old value, new value)TActivePipLimitChanged (IdentityId u32 u32 The maximum number of active PIPs was changed.(caller DID, old value, new value)8ProposalRefund (IdentityIdmPipIdBalance  dA new snapshot was taken.(PipSkipped (IdentityIdmPipId0SkippedCountA PIP in the snapshot queue was skipped.(gc_did, pip_id, new_skip_count)XSnapshotResultsEnacted(IdentityIdHOptionhVec<(PipId, SkippedCount)>(Vec(Vec1Results (e.g., approved, rejected, and skipped), were enacted for some PIPs.Q(gc_did, snapshot_id_opt, skipped_pips_with_new_count, rejected_pips, approved_pips)dExecutionSchedulingFailed (IdentityIdmPipId,BlockNumber Scheduling of the PIP for execution failed in the scheduler pallet.y,pallet_pips0ProposalDataHash,H256 Proposal0Vec},pallet_pips4ProposalStatePending Rejected$ScheduledFailed ExecutedExpired,pallet_pips(SnapshotId u32,pallet_pips8SnapshottedPipidmPipIdweight<(bool, Balance))OptionTNoneSomemmdpolymesh_common_utilitiestraits$portfolioEvent @PortfolioCreated (IdentityIdAll non-default portfolio numbers and names of a DID.0# Parameters0* origin DIDt* vector of number-name pairsdPortfolioCustodianChanged (IdentityId,PortfolioId(IdentityIdCustody of a portfolio has been given to a different identity0# Parameters0* origin DID8* portfolio idd* portfolio custodian didlFundsMovedBetweenPortfolios(IdentityId,PortfolioId,PortfolioId Funds have moved between portfolios0# Parameters4* Origin DID.L* Source portfolio.`* Destination portfolio.* The type of fund that was moved.t* Optional memo for the move.PPreApprovedPortfolio (IdentityId,PortfolioIdTickerA portfolio has pre approved the receivement of an asset.0# Parameters|* [`IdentityId`] of the caller.!* [`PortfolioId`] that will receive assets without explicit affirmation.%* [`Ticker`] of the asset that has been exempt from explicit affirmation.hRevokePreApprovedPortfolio (IdentityId,PortfolioIdTickerA portfolio has removed the approval of an asset.0# Parameters|* [`IdentityId`] of the caller.* [`PortfolioId`] that had its pre approval revoked.* [`Ticker`] of the asset that had its pre approval revoked.\Events for this module. Lpolymesh_primitives,identity_id4PortfolioName0Vec Lpolymesh_primitives$portfolio Lpolymesh_primitives nftNFTId( u64Lpallet_protocol_fee RawEvent$AccountId FeeSet(IdentityIdBalanceThe protocol fee of an operation.8CoefficientSet(IdentityId PosRatioPThe fee coefficient.(FeeCharged$AccountIdBalance0Fee charged.\Events for this module.Lpolymesh_primitives PosRatio u32 u32 @pallet_schedulerpalletEventT$Scheduledwhen8T::BlockNumberindex u32PScheduled some task. Canceledwhen8T::BlockNumberindex u32LCanceled some task.(Dispatched tasklTaskAddressid@OptionresultA8DispatchResultTDispatched some task.id@Option)The call for the provided hash was not found so the task has been aborted.8PeriodicFailedtasklTaskAddressid@Option=The given task was unable to be renewed since the agenda is full at that block.TPermanentlyOverweighttasklTaskAddressid@OptionThe given task can never be executed since it is overweight.0Events type.OptionTNoneSomedpolymesh_common_utilitiestraits(settlement RawEvent Moment(,BlockNumber$AccountIdT0VenueCreated(IdentityIdVenueId0VenueDetails$VenueTypeA new venue has been created (did, venue_id, details, type)LVenueDetailsUpdated (IdentityIdVenueId0VenueDetailsAn existing venue's details has been updated (did, venue_id, details)@VenueTypeUpdated (IdentityIdVenueId$VenueTypeAn existing venue's type has been updated (did, venue_id, type)LInstructionAffirmed (IdentityId,PortfolioId4InstructionIdAn instruction has been affirmed (did, portfolio, instruction_id)PAffirmationWithdrawn (IdentityId,PortfolioId4InstructionId An affirmation has been withdrawn (did, portfolio, instruction_id)LInstructionRejected(IdentityId4InstructionIdAn instruction has been rejected (did, instruction_id)8ReceiptClaimed(IdentityId4InstructionIdLegId( u64$AccountId\Option}A receipt has been claimed (did, instruction_id, leg_id, receipt_uid, signer, receipt metadata)8VenueFiltering (IdentityIdTicker)booliVenue filtering has been enabled or disabled for a ticker (did, ticker, filtering_enabled)4VenuesAllowed (IdentityIdTicker0VecVenues added to allow list (did, ticker, vec)4VenuesBlocked (IdentityIdTicker0Vec Venues added to block list (did, ticker, vec)HLegFailedExecution (IdentityId4InstructionIdLegId Execution of a leg failed (did, instruction_id, leg_id)DInstructionFailed(IdentityId4InstructionId Instruction failed execution (did, instruction_id)LInstructionExecuted(IdentityId4InstructionId Instruction executed successfully(did, instruction_id)DVenueUnauthorized (IdentityIdTickerVenueId Venue not part of the token's allow list (did, Ticker, venue_id)@SchedulingFailed`4DispatchErrorScheduling of instruction fails.XInstructionRescheduled(IdentityId4InstructionIdlInstruction is rescheduled.p(caller DID, instruction_id)LVenueSignersUpdated(IdentityIdVenueId8Vec)boolIAn existing venue's signers has been updated (did, venue_id, signers, update_type)hSettlementManuallyExecuted(IdentityId4InstructionIdSettlement manually executed (did, id)HInstructionCreated (IdentityIdVenueId4InstructionIdlSettlementType8Option8Option Vec0OptionA new instruction has been createdQ(did, venue_id, instruction_id, settlement_type, trade_date, value_date, legs, memo)hFailedToExecuteInstruction4InstructionId`4DispatchErrorxFailed to execute instruction.InstructionAutomaticallyAffirmed (IdentityId,PortfolioId4InstructionIdAn instruction has been automatically affirmed.Parameters: [`IdentityId`] of the caller, [`PortfolioId`] of the receiver, and [`InstructionId`] of the instruction.\Events for this module. Lpolymesh_primitives(settlementVenueId( u64 Lpolymesh_primitives(settlement0VenueDetails0Vec Lpolymesh_primitives(settlement$VenueTypeOther0Distribution Sto Exchange Lpolymesh_primitives(settlementLegId( u64OptionTNoneSome Lpolymesh_primitives(settlement hStat types added to asset.|(Caller DID, Asset, Stat types)@StatTypesRemoved (IdentityId(AssetScope 4Vec xStat types removed from asset.|(Caller DID, Asset, Stat types)DAssetStatsUpdated(IdentityId(AssetScope  StatType PAsset stats updated.(Caller DID, Asset, Stat type, Updates)hSetAssetTransferCompliance (IdentityId(AssetScope5XVec Set Transfer compliance rules for asset.(Caller DID, Asset, Transfer conditions)TransferConditionExemptionsAdded (IdentityId=hTransferConditionExemptKey5 Add `IdentityId`s exempt for transfer conditions matching exempt key.(Caller DID, Exempt key, Entities)TransferConditionExemptionsRemoved (IdentityId=hTransferConditionExemptKey5 !Remove `IdentityId`s exempt for transfer conditions matching exempt key.(Caller DID, Exempt key, Entities)\Events for this module. Lpolymesh_primitives(statistics(AssetScopeTickerTicker    Lpolymesh_primitives(statistics StatTypeop(StatOpType0claim_issuer|Option<(ClaimType, IdentityId)> Lpolymesh_primitives(statistics(StatOpTypeCountBalanceOptionTNoneSome!! Lpolymesh_primitives(statistics(StatUpdatekey2%(Stat2ndKeyvalue10Option% Lpolymesh_primitives(statistics(Stat2ndKey,NoClaimStatClaim)$StatClaim) Lpolymesh_primitives(statistics$StatClaim (Accredited)bool$Affiliate)bool0Jurisdiction-LOption-OptionT NoneSome 1OptionTNoneSome599 Lpolymesh_primitivesLtransfer_complianceDTransferCondition@MaxInvestorCount( u64PMaxInvestorOwnership(Percentage(ClaimCount)$StatClaim(IdentityId( u64,Option8ClaimOwnership)$StatClaim(IdentityId(Percentage(Percentage= Lpolymesh_primitivesLtransfer_compliancehTransferConditionExemptKey asset(AssetScopeop(StatOpType(claim_typeADOptionAOptionTNoneSomeE(pallet_sto RawEventMoment(DFundraiserCreated(IdentityIdI0FundraiserIdM8FundraiserNameQHFundraiserA new fundraiser has been created.(Agent DID, fundraiser id, fundraiser name, fundraiser details) Invested(IdentityIdI0FundraiserIdTickerTickerBalanceBalanceAn investor invested in the fundraiser.(Investor, fundraiser_id, offering token, raise token, offering_token_amount, raise_token_amount)@FundraiserFrozen(IdentityIdI0FundraiserIdtA fundraiser has been frozen.h(Agent DID, fundraiser id)HFundraiserUnfrozen(IdentityIdI0FundraiserId|A fundraiser has been unfrozen.h(Agent DID, fundraiser id)`FundraiserWindowModified EventDidI0FundraiserId(Moment8Option(Moment8OptionA fundraiser window has been modified. (Agent DID, fundraiser id, old_start, old_end, new_start, new_end)@FundraiserClosed(IdentityIdI0FundraiserIdxA fundraiser has been stopped.h(Agent DID, fundraiser id)\Events for this module.I(pallet_sto0FundraiserId( u64M(pallet_sto8FundraiserName0VecQ(pallet_sto(FundraiserMoment(,creator(IdentityIdHoffering_portfolio,PortfolioId8offering_assetTickerDraising_portfolio,PortfolioId4raising_assetTickertiersULVec venue_idVenueIdstart(Moment end8Optionstatus]@FundraiserStatusHminimum_investmentBalanceUYY(pallet_sto8FundraiserTier totalBalancepriceBalance$remainingBalance](pallet_sto@FundraiserStatusLiveFrozenClosed,ClosedEarlyaBatch of dispatches did not complete fully.Includes a vector of event counts for each call and)a vector of any failed dispatches with their indices and associated error.lPOLYMESH: event deprecated.DBatchCompletedOldi,EventCounts Batch of dispatches completed fully with no error.Includes a vector of event counts for each dispatch.lPOLYMESH: event deprecated. The [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted by this pallet. im`qmudpolymesh_common_utilitiestraitsbaseEventAn unexpected error happened that should be investigated.\Events for this module.yOptionT`NoneSome`}dpolymesh_common_utilitiestraits5Data supplied by the contract. Metadata generated during contract compilation\is needed to decode it.A custom event emitted by the contract.,CodeRemoved$code_hash,T::HashA code with the specified hash was removed.LContractCodeUpdated  contract0T::AccountIdThe contract that has been updated.4new_code_hash,T::HashNew code hash that was set for the contract.4old_code_hash,T::HashPrevious code hash of the contract.xA contract's code was updated.Calledcaller0T::AccountIdThe account that called the `contract`. contract0T::AccountIdtThe contract that was called.A contract was called either by a plain account or another contract.# Note1Please keep in mind that like all events this is only emitted for successful)calls. This is because on failure all storage changes including events are0rolled back.8DelegateCalled contract0T::AccountId!The contract that performed the delegate call and hence in whose contextpthe `code_hash` is executed.$code_hash,,CodeHashThe code hash that was delegate called.A contract delegate called a code hash.# Note1Please keep in mind that like all events this is only emitted for successful)calls. This is because on failure all storage changes including events are0rolled back. The [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted by this pallet. Hpolymesh_contracts RawEventHash,$AccountId8ApiHashUpdated  Api0ChainVersion,HashEmitted when a contract starts supporting a new API upgrade.!Contains the [`Api`], [`ChainVersion`], and the bytes for the code hash.4SCRuntimeCall$AccountId,ExtrinsicIdEmitted when a contract calls into the runtime.)Contains the account id set by the contract owner and the [`ExtrinsicId`].\Events for this module.Hpolymesh_contracts Apidesc@[u8; 4]major u32Hpolymesh_contracts0ChainVersion0spec_version u32(tx_version u32 Hpolymesh_contractsLOptionTPortfolioUpdateReason Emitted when NFTs were issued, redeemed or transferred.Contains the [`IdentityId`] of the receiver/issuer/redeemer, the [`NFTs`], the [`PortfolioId`] of the source, the [`PortfolioId`]of the destination and the [`PortfolioUpdateReason`].\Events for this module. Lpolymesh_primitives nft$AccountId)bool UShows the `DID` associated to the `AccountId`, and a flag indicates if that DID has a@valid CDD claim.(Target DID, Target Account, a valid CDD claim exists)\Events for this module.0frame_systemPhase 8ApplyExtrinsic u320Finalization8Initialization,0frame_systemXLastRuntimeUpgradeInfo0spec_versionLcodec::Compact$spec_namedsp_runtime::RuntimeString 0frame_systempalletCallT remarkremark0VechMake some on-chain remark.4## Complexity - `O(1)`8set_heap_pagespages( u64Set the number of pages in the WebAssembly environment's heap. set_codecode0VecdSet the new runtime code.4## Complexity1- `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`\set_code_without_checkscode0VecSet the new runtime code without doing any checks of the given `code`.4## Complexity- `O(C)` where `C` length of `code`,set_storageitems4VechSet some items of storage.0kill_storagekeys VectKill some items from storage.,kill_prefixprefix0 Keysubkeys u32Kill all storage items with a key that starts with the given prefix.9**NOTE:** We rely on the Root origin to provide us the number of subkeys under=the prefix we are removing to accurately calculate the weight of this function.Dremark_with_eventremark0VecMake some on-chain remark and emit event.%Contains one variant per dispatchable that can be called by an extrinsic.000 0frame_systemlimits0BlockWeights (base_block Weight$max_block Weight$per_classPerDispatchClass 4frame_support dispatch@PerDispatchClassT normalT,operationalT$mandatoryT 0frame_systemlimits$max_total8Option reserved8OptionOptionT NoneSome  0frame_systemlimits,BlockLength maxTPerDispatchClass 4frame_support dispatch@PerDispatchClassT normalT,operationalT$mandatoryT(sp_weights  (  Dsp_consensus_babe appPublic)-OptionT1NoneSome11 Dsp_consensus_babedigests$PreDigest Primary5@PrimaryPreDigest8SecondaryPlain9\SecondaryPlainPreDigest0SecondaryVRF=TSecondaryVRFPreDigest5 Dsp_consensus_babedigests@PrimaryPreDigestI(MIQ ,pallet_babepalletCallT Lreport_equivocationHequivocation_proofUBox>>>indexindex$Address32 [u8; 32]$Address20  [u8; 20]y 8pallet_indicespalletErrorT,NotAssignedThe index was not already assigned. NotOwnerThe index is assigned to another account.InUsepThe index was not available.,NotTransferThe source and destination accounts are identical.$PermanentThe index is permanent and may not be freed/changed. Custom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/) of this pallet. }::SourcevalueBalanceXTransfer some liquid free balance to another account.`transfer` will set the `FreeBalance` of the sender and receiver.It will decrease the total issuance of the system by the `TransferFee`.The dispatch origin for this call must be `Signed` by the transactor.(# -- Dependent on arguments but not critical, given proper implementations for input config types. See related functions below.e- It contains a limited number of reads and writes internally and no complex computation.HRelated functions:M - `ensure_can_withdraw` is always called internally but has a bounded complexity.) - Transferring balances to accounts that did not exist before will cause `T::OnNewAccount::on_new_account` to be called.---------------------------------A- Base Weight: 73.64 µs, worst case scenario (account created, account removed)- DB Weight: 1 Read and 1 Write to destination account.- Origin account is already in memory, so no DB operations for them.,# Htransfer_with_memo destu::SourcevalueBalancememo0Option Transfer the native currency with the help of identifier stringthis functionality can help to differentiate the transfers.(# A- Base Weight: 73.64 µs, worst case scenario (account created, account removed)- DB Weight: 1 Read and 1 Write to destination account.- Origin account is already in memory, so no DB operations for them.,# deposit_block_reward_reserve_balancevalueBalanceMove some POLYX from balance of self to balance of BRR.,set_balance  whou::Source new_freeBalance0new_reservedBalanceSet the balances of a given account.This will alter `FreeBalance` and `ReservedBalance` in storage. it willalso decrease the total issuance of the system (`TotalIssuance`).The dispatch origin for this call is `root`.8force_transfer sourceu::Sourcedestu::SourcevalueBalanceMExactly as `transfer`, except the origin must be root and the source account may be(specified.(# =- Same as transfer, but additional read and write because the source account is not assumed to be in the overlay.,# Pburn_account_balanceamountBalance)Burns the given amount of tokens from the caller's free, unlocked balance. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.  Lpolymesh_primitives4secondary_key$KeyRecord$AccountId (PrimaryKey(IdentityId0SecondaryKey(IdentityId,PermissionsDMultiSigSignerKey$AccountId}( Lpolymesh_primitives4authorization4Authorization$AccountIdMoment(Hauthorization_datapAuthorizationData4authorized_by(IdentityIdexpiry8Optionauth_id( u64count u32(> Register `target_account` with a new Identity.$# FailureE- `origin` has to be a active CDD provider. Inactive CDD providers cannot add newclaims.]- `target_account` (primary key of the new Identity) can be linked to just one and only4one identity.- External secondary keys can be linked to just one identity.Tinvalidate_cdd_claims  cdd(IdentityId0disable_from($T::MomentexpiryDOption!Invalidates any claim generated by `cdd` from `disable_from` timestamps.You can also define an expiration time,mwhich will invalidate all claims generated by that `cdd` and remove it as CDD member group.Haccept_primary_key@rotation_auth_id( u64Poptional_cdd_auth_id,Option4eCall this with the new primary key. By invoking this method, caller accepts authorizationeto become the new primary key of the issuing identity. If a CDD service provider approved%this change (or this is not required), primary key of the DID is updated.]The caller (new primary key) must be either a secondary key of the issuing identity, ordunlinked to any identity.]Differs from rotate_primary_key_to_secondary in that it will unlink the old primary keyinstead of leaving it as a secondary key.,# Arguments* `owner_auth_id` Authorization from the owner who initiated the change* `cdd_auth_id` Authorization from a CDD service providerchange_cdd_requirement_for_mk_rotation4auth_required)bool5Set if CDD authorization is required for updating primary key of an identity.xCallable via root (governance),# Arguments* `auth_required` CDD Authorization required or notPjoin_identity_as_keyauth_id( u64Join an identity as a secondary key.Tleave_identity_as_keyLeave the secondary key's identity.$add_claim target(IdentityIdclaimClaimexpiryDOption Adds a new claim record or edits an existing one.Only called by did_issuer's secondary key.0revoke_claimtarget(IdentityIdclaimClaimMarks the specified claim as revoked.Tfreeze_secondary_keysIt disables all secondary keys at `did` identity. # Errors\unfreeze_secondary_keys Re-enables all secondary keys of the caller's identity.Dadd_authorization target}\Signatorydata|AuthorizationDataexpiryDOption XAdds an authorization.Premove_authorization target}\Signatoryauth_id( u64D_auth_issuer_pays)bool dRemoves an authorization.u_auth_issuer_pays determines whether the issuer of the authorisation pays the transaction fee@gc_add_cdd_claimtarget(IdentityId EAssuming this is executed by the GC voting majority, adds a new cdd claim record.Lgc_revoke_cdd_claimtarget(IdentityId iAssuming this is executed by the GC voting majority, removes an existing cdd claim record.Trevoke_claim_by_index target(IdentityId(claim_type$ClaimTypescope4OptionRevokes a specific claim using its [Claim Unique Index](/pallet_identity/index.html#claim-unique-index) composed by `target`,h`claim_type`, and `scope`.Please note that `origin` must be the issuer of the target claim.|rotate_primary_key_to_secondaryauth_id( u64Poptional_cdd_auth_id,Option8eCall this with the new primary key. By invoking this method, caller accepts authorizationeto become the new primary key of the issuing identity. If a CDD service provider approved)this change, (or this is not required), primary key of the DID is updated.]The caller (new primary key) must be either a secondary key of the issuing identity, ordunlinked to any identity.aDiffers from accept_primary_key in that it will leave the old primary key as a secondarykey with the permissions specified in the corresponding RotatePrimaryKeyToSecondary authorizationinstead of unlinking the old primary key.,# Arguments* `owner_auth_id` Authorization from the owner who initiated the change* `cdd_auth_id` Authorization from a CDD service provideradd_secondary_keys_with_authorization>(expires_at($T::Moment4Adds secondary keys to target identity `id`.9Keys are directly added to identity because each of them has an authorization.0# Arguments:  - `origin` which must be the primary key of the identity `id`. - `id` to which new secondary keys will be added. - `additional_keys` which includes secondary keys,  coupled with authorization data, to add to target identity. # Errors - Can only called by primary key owner. - Keys should be able to linked to any identity.tset_secondary_key_permissions key0T::AccountIdperms,Permissions Sets permissions for an specific `target_key` key.5Only the primary key of an identity is able to set secondary key permissions.Tremove_secondary_keys8keys_to_removeDVecRemoves specified secondary keys of a DID if present. # ErrorsThe extrinsic can only called by primary key owner.hregister_custom_claim_typety0VeclRegister custom claim type. # ErrorsI* `CustomClaimTypeAlreadyExists` The type that is being registered already exists.* `CounterOverflow` CustomClaimTypeId has overflowed.* `TooLong` The type being registered is too lang.dcdd_register_did_with_cdd 8target_account0T::AccountId8secondary_keys|Vec>expiryDOption YRegister `target_account` with a new Identity and issue a CDD claim with a blank CddId$# FailureE- `origin` has to be a active CDD provider. Inactive CDD providers cannot add newclaims.]- `target_account` (primary key of the new Identity) can be linked to just one and only4one identity.- External secondary keys can be linked to just one identity.Tcreate_child_identity4secondary_key0T::AccountId0Create a child identity and make the `secondary_key` it's primary key.Only the primary key can create child identities.,# Argumentse- `secondary_key` the secondary key that will become the primary key of the new identity. # Errors- `KeyNotAllowed` only the primary key can create a new identity.M- `NotASigner` the `secondary_key` is not a secondary key of the caller's identity.m- `AccountKeyIsBeingUsed` the `secondary_key` can't be unlinked from it's current identity.- `IsChildIdentity` the caller's identity is already a child identity and can't create child identities.\create_child_identities(child_keysVec>(expires_at($T::Moment8auth_signatureH5120pallet_groupCallTI`set_active_members_limitlimit,MemberCount5Change this group's limit for how many concurrent active members they may be.,# Arguments * `limit` - the number of active members there may be concurrently.8disable_member  who(IdentityIdexpiryDOptionatDOption@Disables a member at specific moment.APlease note that if member is already revoked (a "valid member"), its revocationltime-stamp will be updated.MAny disabled member should NOT allow to act like an active member of the group. For]instance, a disabled CDD member should NOT be able to generate a CDD claim. However anygenerated claim issued before `at` would be considered as a valid one.QIf you want to invalidate any generated claim, you should use `Self::remove_member`.,# Arguments|* `at` - Revocation time-stamp.* `who` - Target member of the group.U* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, theQgenerated claims will be "invalid" as `who` is not considered a member of the group.(add_member who(IdentityId9Adds a member `who` to the group. May only be called from `AddOrigin` or root.,# Arguments* `origin` - Origin representing `AddOrigin` or root* `who` - IdentityId to be added to the group.4remove_member who(IdentityId(QRemoves a member `who` from the set. May only be called from `RemoveOrigin` or root.AAny claim previously generated by this member is not valid as a group claim. ForYinstance, if a CDD member group generated a claim for a target identity and then it isaremoved, that claim will be invalid. In case you want to keep the validity of generatedclaims, you have to use `Self::disable_member` function,# Arguments* `origin` - Origin representing `RemoveOrigin` or root* `who` - IdentityId to be removed from the group.,swap_memberremove(IdentityId add(IdentityId Swaps out one member `remove` for another member `add`.May only be called from `SwapOrigin` or root.,# Arguments* `origin` - Origin representing `SwapOrigin` or root* `remove` - IdentityId to be removed from the group.* `add` - IdentityId to be added in place of `remove`.4reset_membersmembers5)Changes the membership to a new set, disregarding the existing membership.May only be called from `ResetOrigin` or root.,# Arguments* `origin` - Origin representing `ResetOrigin` or root* `members` - New set of identitiesLabdicate_membership(MAllows the calling member to *unilaterally quit* without this being subject to a GCvote.,# Arguments* `origin` - Member of committee who wants to quit.# Error* Only primary key can abdicate.* Last member of a group cannot abdicate. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.0pallet_groupErrorTITOnlyPrimaryKeyAllowedOnly primary key of the identity is allowed.BabeQself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor$Timestampiself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForIndicesqself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor Balancesself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor Identityself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForLCddServiceProvidersself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForDPolymeshCommitteeself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor LCommitteeMembershipself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor HTechnicalCommitteeself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor pTechnicalCommitteeMembershipself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor @UpgradeCommittee self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor hUpgradeCommitteeMembership self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor MultiSigself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForBridgeself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForStaking%self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForSessionself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForGrandpa%self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor ImOnlineQself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForSudoqself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForAssetuself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForLCapitalDistribution}self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor(Checkpointself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForDComplianceManagerself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallForPipsself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor!$Portfolioself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor",ProtocolFeeself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor#$Schedulerself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor$(Settlementself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor%(Statisticsself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor& Stoself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor' Treasury!self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor(Utility-self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor)BaseQself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor*8ExternalAgentsUself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor+RelayerYself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor,$Contracts]self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor.DPolymeshContractsqself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor/ Preimageself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor0 Nftself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor1$TestUtilsself::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch ::CallableCallFor2@pallet_committeeCallTIHset_vote_thresholdn u32d u32Change the vote threshold the determines the winning proposal.UFor e.g., for a simple majority use (1, 2) which represents the in-equation ">= 1/2".,# Arguments* `n` - Numerator of the fraction representing vote threshold.* `d` - Denominator of the fraction representing vote threshold.\set_release_coordinatorid(IdentityIdChanges the release coordinator.,# Arguments* `id` - The DID of the new release coordinator. # Errors%* `NotAMember`, If the new coordinator `id` is not part of the committee.Dset_expires_afterexpiryIhMaybeBlockChanges the time after which a proposal expires.,# Arguments* `expiry` - The new expiry time.>::Proposal>DProposes to the committee that `call` should be executed in its name.]Alternatively, if the hash of `call` has already been recorded, i.e., already proposed,then this call counts as a vote, i.e., as if `vote_by_hash` was called. # Weight-The weight of this dispatchable is that of `call` as well as the complexityxfor recording the vote itself.,# Arguments* `approve` - is this an approving vote?a If the proposal doesn't exist, passing `false` will result in error `FirstVoteReject`.* `call` - the call to propose for execution. # Errors-* `FirstVoteReject`, if `call` hasn't been proposed and `approve == false`. * `NotAMember`, if the `origin` is not a member of this committee.vote  proposal,T::Hashindex4ProposalIndexapprove)bool(Votes `approve`ingly (or not, if `false`)on an existing `proposal` given by its hash, `index`.,# Arguments* `proposal` - A hash of the proposal to be voted on.|* `index` - The proposal index.-* `approve` - If `true` than this is a `for` vote, and `against` otherwise. # Errors * `NotAMember`, if the `origin` is not a member of this committee. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.0pallet_groupCallTI`set_active_members_limitlimit,MemberCount5Change this group's limit for how many concurrent active members they may be.,# Arguments * `limit` - the number of active members there may be concurrently.8disable_member  who(IdentityIdexpiryDOptionatDOption@Disables a member at specific moment.APlease note that if member is already revoked (a "valid member"), its revocationltime-stamp will be updated.MAny disabled member should NOT allow to act like an active member of the group. For]instance, a disabled CDD member should NOT be able to generate a CDD claim. However anygenerated claim issued before `at` would be considered as a valid one.QIf you want to invalidate any generated claim, you should use `Self::remove_member`.,# Arguments|* `at` - Revocation time-stamp.* `who` - Target member of the group.U* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, theQgenerated claims will be "invalid" as `who` is not considered a member of the group.(add_member who(IdentityId9Adds a member `who` to the group. May only be called from `AddOrigin` or root.,# Arguments* `origin` - Origin representing `AddOrigin` or root* `who` - IdentityId to be added to the group.4remove_member who(IdentityId(QRemoves a member `who` from the set. May only be called from `RemoveOrigin` or root.AAny claim previously generated by this member is not valid as a group claim. ForYinstance, if a CDD member group generated a claim for a target identity and then it isaremoved, that claim will be invalid. In case you want to keep the validity of generatedclaims, you have to use `Self::disable_member` function,# Arguments* `origin` - Origin representing `RemoveOrigin` or root* `who` - IdentityId to be removed from the group.,swap_memberremove(IdentityId add(IdentityId Swaps out one member `remove` for another member `add`.May only be called from `SwapOrigin` or root.,# Arguments* `origin` - Origin representing `SwapOrigin` or root* `remove` - IdentityId to be removed from the group.* `add` - IdentityId to be added in place of `remove`.4reset_membersmembers5)Changes the membership to a new set, disregarding the existing membership.May only be called from `ResetOrigin` or root.,# Arguments* `origin` - Origin representing `ResetOrigin` or root* `members` - New set of identitiesLabdicate_membership(MAllows the calling member to *unilaterally quit* without this being subject to a GCvote.,# Arguments* `origin` - Member of committee who wants to quit.# Error* Only primary key can abdicate.* Last member of a group cannot abdicate. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.@pallet_committeeCallTIHset_vote_thresholdn u32d u32Change the vote threshold the determines the winning proposal.UFor e.g., for a simple majority use (1, 2) which represents the in-equation ">= 1/2".,# Arguments* `n` - Numerator of the fraction representing vote threshold.* `d` - Denominator of the fraction representing vote threshold.\set_release_coordinatorid(IdentityIdChanges the release coordinator.,# Arguments* `id` - The DID of the new release coordinator. # Errors%* `NotAMember`, If the new coordinator `id` is not part of the committee.Dset_expires_afterexpiryIhMaybeBlockChanges the time after which a proposal expires.,# Arguments* `expiry` - The new expiry time.>::Proposal>DProposes to the committee that `call` should be executed in its name.]Alternatively, if the hash of `call` has already been recorded, i.e., already proposed,then this call counts as a vote, i.e., as if `vote_by_hash` was called. # Weight-The weight of this dispatchable is that of `call` as well as the complexityxfor recording the vote itself.,# Arguments* `approve` - is this an approving vote?a If the proposal doesn't exist, passing `false` will result in error `FirstVoteReject`.* `call` - the call to propose for execution. # Errors-* `FirstVoteReject`, if `call` hasn't been proposed and `approve == false`. * `NotAMember`, if the `origin` is not a member of this committee.vote  proposal,T::Hashindex4ProposalIndexapprove)bool(Votes `approve`ingly (or not, if `false`)on an existing `proposal` given by its hash, `index`.,# Arguments* `proposal` - A hash of the proposal to be voted on.|* `index` - The proposal index.-* `approve` - If `true` than this is a `for` vote, and `against` otherwise. # Errors * `NotAMember`, if the `origin` is not a member of this committee. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.0pallet_groupCallTI`set_active_members_limitlimit,MemberCount5Change this group's limit for how many concurrent active members they may be.,# Arguments * `limit` - the number of active members there may be concurrently.8disable_member  who(IdentityIdexpiryDOptionatDOption@Disables a member at specific moment.APlease note that if member is already revoked (a "valid member"), its revocationltime-stamp will be updated.MAny disabled member should NOT allow to act like an active member of the group. For]instance, a disabled CDD member should NOT be able to generate a CDD claim. However anygenerated claim issued before `at` would be considered as a valid one.QIf you want to invalidate any generated claim, you should use `Self::remove_member`.,# Arguments|* `at` - Revocation time-stamp.* `who` - Target member of the group.U* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, theQgenerated claims will be "invalid" as `who` is not considered a member of the group.(add_member who(IdentityId9Adds a member `who` to the group. May only be called from `AddOrigin` or root.,# Arguments* `origin` - Origin representing `AddOrigin` or root* `who` - IdentityId to be added to the group.4remove_member who(IdentityId(QRemoves a member `who` from the set. May only be called from `RemoveOrigin` or root.AAny claim previously generated by this member is not valid as a group claim. ForYinstance, if a CDD member group generated a claim for a target identity and then it isaremoved, that claim will be invalid. In case you want to keep the validity of generatedclaims, you have to use `Self::disable_member` function,# Arguments* `origin` - Origin representing `RemoveOrigin` or root* `who` - IdentityId to be removed from the group.,swap_memberremove(IdentityId add(IdentityId Swaps out one member `remove` for another member `add`.May only be called from `SwapOrigin` or root.,# Arguments* `origin` - Origin representing `SwapOrigin` or root* `remove` - IdentityId to be removed from the group.* `add` - IdentityId to be added in place of `remove`.4reset_membersmembers5)Changes the membership to a new set, disregarding the existing membership.May only be called from `ResetOrigin` or root.,# Arguments* `origin` - Origin representing `ResetOrigin` or root* `members` - New set of identitiesLabdicate_membership(MAllows the calling member to *unilaterally quit* without this being subject to a GCvote.,# Arguments* `origin` - Member of committee who wants to quit.# Error* Only primary key can abdicate.* Last member of a group cannot abdicate. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module. @pallet_committeeCallTIHset_vote_thresholdn u32d u32Change the vote threshold the determines the winning proposal.UFor e.g., for a simple majority use (1, 2) which represents the in-equation ">= 1/2".,# Arguments* `n` - Numerator of the fraction representing vote threshold.* `d` - Denominator of the fraction representing vote threshold.\set_release_coordinatorid(IdentityIdChanges the release coordinator.,# Arguments* `id` - The DID of the new release coordinator. # Errors%* `NotAMember`, If the new coordinator `id` is not part of the committee.Dset_expires_afterexpiryIhMaybeBlockChanges the time after which a proposal expires.,# Arguments* `expiry` - The new expiry time.>::Proposal>DProposes to the committee that `call` should be executed in its name.]Alternatively, if the hash of `call` has already been recorded, i.e., already proposed,then this call counts as a vote, i.e., as if `vote_by_hash` was called. # Weight-The weight of this dispatchable is that of `call` as well as the complexityxfor recording the vote itself.,# Arguments* `approve` - is this an approving vote?a If the proposal doesn't exist, passing `false` will result in error `FirstVoteReject`.* `call` - the call to propose for execution. # Errors-* `FirstVoteReject`, if `call` hasn't been proposed and `approve == false`. * `NotAMember`, if the `origin` is not a member of this committee.vote  proposal,T::Hashindex4ProposalIndexapprove)bool(Votes `approve`ingly (or not, if `false`)on an existing `proposal` given by its hash, `index`.,# Arguments* `proposal` - A hash of the proposal to be voted on.|* `index` - The proposal index.-* `approve` - If `true` than this is a `for` vote, and `against` otherwise. # Errors * `NotAMember`, if the `origin` is not a member of this committee. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module. 0pallet_groupCallTI`set_active_members_limitlimit,MemberCount5Change this group's limit for how many concurrent active members they may be.,# Arguments * `limit` - the number of active members there may be concurrently.8disable_member  who(IdentityIdexpiryDOptionatDOption@Disables a member at specific moment.APlease note that if member is already revoked (a "valid member"), its revocationltime-stamp will be updated.MAny disabled member should NOT allow to act like an active member of the group. For]instance, a disabled CDD member should NOT be able to generate a CDD claim. However anygenerated claim issued before `at` would be considered as a valid one.QIf you want to invalidate any generated claim, you should use `Self::remove_member`.,# Arguments|* `at` - Revocation time-stamp.* `who` - Target member of the group.U* `expiry` - Time-stamp when `who` is removed from CDD. As soon as it is expired, theQgenerated claims will be "invalid" as `who` is not considered a member of the group.(add_member who(IdentityId9Adds a member `who` to the group. May only be called from `AddOrigin` or root.,# Arguments* `origin` - Origin representing `AddOrigin` or root* `who` - IdentityId to be added to the group.4remove_member who(IdentityId(QRemoves a member `who` from the set. May only be called from `RemoveOrigin` or root.AAny claim previously generated by this member is not valid as a group claim. ForYinstance, if a CDD member group generated a claim for a target identity and then it isaremoved, that claim will be invalid. In case you want to keep the validity of generatedclaims, you have to use `Self::disable_member` function,# Arguments* `origin` - Origin representing `RemoveOrigin` or root* `who` - IdentityId to be removed from the group.,swap_memberremove(IdentityId add(IdentityId Swaps out one member `remove` for another member `add`.May only be called from `SwapOrigin` or root.,# Arguments* `origin` - Origin representing `SwapOrigin` or root* `remove` - IdentityId to be removed from the group.* `add` - IdentityId to be added in place of `remove`.4reset_membersmembers5)Changes the membership to a new set, disregarding the existing membership.May only be called from `ResetOrigin` or root.,# Arguments* `origin` - Origin representing `ResetOrigin` or root* `members` - New set of identitiesLabdicate_membership(MAllows the calling member to *unilaterally quit* without this being subject to a GCvote.,# Arguments* `origin` - Member of committee who wants to quit.# Error* Only primary key can abdicate.* Last member of a group cannot abdicate. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.>4sigs_required( u64HCreates a multisig,# Arguments* `signers` - Signers of the multisig (They need to accept authorization before they are actually added).* `sigs_required` - Number of sigs required to process a multi-sig tx.create_or_approve_proposal_as_identity multisig0T::AccountId proposal@BoxexpiryDOption(auto_close)bool$=Creates a multisig proposal if it hasn't been created or approves it if it has.,# Arguments* `multisig` - MultiSig address.* `proposal` - Proposal to be voted on.* `expiry` - Optional proposal expiry time.* `auto_close` - Close proposal on receiving enough reject votes.1If this is 1 out of `m` multisig, the proposal will be immediately executed.#[deprecated(since = "6.0.0", note = "Please use the `create_proposal_as_identity` and `approve_as_identity` instead")]create_or_approve_proposal_as_key multisig0T::AccountId proposal@BoxexpiryDOption(auto_close)bool$=Creates a multisig proposal if it hasn't been created or approves it if it has.,# Arguments* `multisig` - MultiSig address.* `proposal` - Proposal to be voted on.* `expiry` - Optional proposal expiry time.* `auto_close` - Close proposal on receiving enough reject votes.1If this is 1 out of `m` multisig, the proposal will be immediately executed.#[deprecated(since = "6.0.0", note = "Please use the `create_proposal_as_key` and `approve_as_key` instead")]lcreate_proposal_as_identity multisig0T::AccountId proposal@BoxexpiryDOption(auto_close)bool lCreates a multisig proposal,# Arguments* `multisig` - MultiSig address.* `proposal` - Proposal to be voted on.* `expiry` - Optional proposal expiry time.* `auto_close` - Close proposal on receiving enough reject votes.1If this is 1 out of `m` multisig, the proposal will be immediately executed.Xcreate_proposal_as_key multisig0T::AccountId proposal@BoxexpiryDOption(auto_close)bool lCreates a multisig proposal,# Arguments* `multisig` - MultiSig address.* `proposal` - Proposal to be voted on.* `expiry` - Optional proposal expiry time.* `auto_close` - Close proposal on receiving enough reject votes.1If this is 1 out of `m` multisig, the proposal will be immediately executed.Lapprove_as_identity multisig0T::AccountId,proposal_id( u64Approves a multisig proposal using the caller's identity.,# Arguments* `multisig` - MultiSig address.* `proposal_id` - Proposal id to approve.If quorum is reached, the proposal will be immediately executed.8approve_as_key multisig0T::AccountId,proposal_id( u641Approves a multisig proposal using the caller's secondary key (`AccountId`).,# Arguments* `multisig` - MultiSig address.* `proposal_id` - Proposal id to approve.If quorum is reached, the proposal will be immediately executed.Hreject_as_identity multisig0T::AccountId,proposal_id( u64Rejects a multisig proposal using the caller's identity.,# Arguments* `multisig` - MultiSig address.* `proposal_id` - Proposal id to reject.If quorum is reached, the proposal will be immediately executed.4reject_as_key multisig0T::AccountId,proposal_id( u64-Rejects a multisig proposal using the caller's secondary key (`AccountId`).,# Arguments* `multisig` - MultiSig address.* `proposal_id` - Proposal id to reject.If quorum is reached, the proposal will be immediately executed.accept_multisig_signer_as_identity _auth_id( u64  Accepts a multisig signer authorization given to signer's identity.,# Arguments* `auth_id` - Auth id of the authorization.5#[deprecated(since = "6.1.0", note = "Identity based signers not supported")]taccept_multisig_signer_as_keyauth_id( u64 )Accepts a multisig signer authorization given to signer's key (AccountId).,# Arguments* `auth_id` - Auth id of the authorization.Ladd_multisig_signersigner}\Signatory )Adds a signer to the multisig. This must be called by the multisig itself.,# Argumentsx* `signer` - Signatory to add.Xremove_multisig_signersigner}\Signatory =Removes a signer from the multisig. This must be called by the multisig itself.,# Arguments* `signer` - Signatory to remove.add_multisig_signers_via_creator multisig0T::AccountIdsignersypVec> $EAdds a signer to the multisig. This must be called by the creator identity of the$multisig.,# Arguments* `multisig` - Address of the multi sig* `signers` - Signatories to add. # Weight`900_000_000 + 3_000_000 * signers.len()`remove_multisig_signers_via_creator multisig0T::AccountIdsignersypVec>$Removes a signer from the multisig.This must be called by the creator identity of the multisig.,# Arguments* `multisig` - Address of the multisig.* `signers` - Signatories to remove. # Weight`900_000_000 + 3_000_000 * signers.len()`Pchange_sigs_required4sigs_required( u64MChanges the number of signatures required by a multisig. This must be called by the@multisig itself.,# Arguments* `sigs_required` - New number of required signatures.\make_multisig_secondary multisig0T::AccountIdiAdds a multisig as a secondary key of current did if the current did is the creator of the$multisig.,# Arguments* `multisig` - multi sig addressTmake_multisig_primary multisig0T::AccountIdPoptional_cdd_auth_id,Option]Adds a multisig as the primary key of the current did if the current DID is the creator@of the multisig.,# Arguments* `multi_sig` - multi sig addresshexecute_scheduled_proposal multisig0T::AccountId,proposal_id( u640multisig_did(IdentityId@_proposal_weight WeightqRoot callable extrinsic, used as an internal call for executing scheduled multisig proposal.change_sigs_required_via_creator@multisig_account0T::AccountIdLsignatures_required( u64Changes the number of signatures required by a multisig. This must be called by the creator of the multisig.,# Argumentsy* `multisig_account` - The account identifier ([`AccountId`]) for the multi signature account.* `signatures_required` - The number of required signatures.\remove_creator_controls@multisig_account0T::AccountIdRemoves the creator ability to call `add_multisig_signers_via_creator`, `remove_multisig_signers_via_creator`and `change_sigs_required_via_creator`. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.4pallet_bridgeCallTDDchange_controller(controller0T::AccountIdChanges the controller account as admin.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account.0change_adminadmin0T::AccountIdtChanges the bridge admin key.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account.Changes the bridge limit exempted list.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account.Xforce_handle_bridge_tx$bridge_txXBridgeTx%Forces handling a transaction by bypassing the bridge limit and timelock.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account.!- `NoValidCdd` if `bridge_tx.recipient` does not have a valid CDD claim.\batch_propose_bridge_tx(bridge_txs!lVec>$EProposes a vector of bridge transactions. The vector is processed until the firstMproposal which causes an error, in which case the error is returned and the rest ofpproposals are not processed.$## Errors- `ControllerNotSet` if `Controllers` was not set. # Weight`500_000_000 + 7_000_000 * bridge_txs.len()`Dpropose_bridge_tx$bridge_txXBridgeTx IProposes a bridge transaction, which amounts to making a multisig proposal for theUbridge transaction if the transaction is new or approving an existing proposal if thetransaction has already been proposed.$## Errors- `ControllerNotSet` if `Controllers` was not set.@handle_bridge_tx$bridge_txXBridgeTx Handles an approved bridge transaction proposal.$## Errors- `BadCaller` if `origin` is not `Self::controller` or `Self::admin`.- `TimelockedTx` if the transaction status is `Timelocked`. - `ProposalAlreadyHandled` if the transaction status is `Handled`.(freeze_txs(bridge_txs!lVec> Freezes given bridge transactions.If any bridge txn is already handled then this function will just ignore it and process next one.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account. # Weight`400_000_000 + 2_000_000 * bridge_txs.len()`0unfreeze_txs(bridge_txs!lVec> Unfreezes given bridge transactions.If any bridge txn is already handled then this function will just ignore it and process next one.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account. # Weight`400_000_000 + 7_000_000 * bridge_txs.len()`hhandle_scheduled_bridge_tx$bridge_txXBridgeTx Root callable extrinsic, used as an internal call to handle a scheduled timelocked bridge transaction. # Errors- `BadOrigin` if `origin` is not root.- `ProposalAlreadyHandled` if transaction status is `Handled`.- `FrozenTx` if transaction status is `Frozen`.@add_freeze_admin0freeze_admin0T::AccountIdLAdd a freeze admin.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account.Lremove_freeze_admin0freeze_admin0T::AccountIdXRemove a freeze admin.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account.(remove_txs(bridge_txs!lVec>Remove given bridge transactions.$## Errors- `BadAdmin` if `origin` is not `Self::admin()` account.- `NotFrozen` if a tx in `bridge_txs` is not frozen. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.)!%8pallet_stakingCallTbond (controlleru::Sourcevalue0BalanceOfpayee)|RewardDestinationXaTake the origin account as a stash and lock up `value` of its balance. `controller` willbe the account that controls it.-`value` must be more than the `minimum_balance` specified by `T::Currency`.!The dispatch origin for this call must be _Signed_ by the stash account.- Independent of the arguments. Moderate complexity.- O(1).d- Three extra DB entries.MNOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned=unless the `origin` falls below _existential deposit_ and gets removed as dust.H------------------0Weight: O(1)(DB Weight:-- Read: Bonded, Ledger, [Origin Account], Current Era, History Depth, Locks- Write: Bonded, Payee, [Origin Account], Locks, Ledger,# (bond_extra8max_additional0BalanceOfTaAdd some extra amount that have appeared in the stash `free_balance` into the balance up0for staking.MUse this if there are additional funds in your stash account that you wish to bond.aUnlike [`bond`] or [`unbond`] this function does not impose any limitation on the amountHthat can be added.]The dispatch origin for this call must be _Signed_ by the stash, not the controller andit can be only called when [`EraElectionStatus`] is `Closed`.- Independent of the arguments. Insignificant complexity.- O(1).<- One DB entry.0------------(DB Weight:- Read: Era Election Status, Bonded, Ledger, [Origin Account], Locks- Write: [Origin Account], Locks, Ledger,# unbondvalue0BalanceOfQSchedule a portion of the stash to be unlocked ready for transfer out after the bondperiod ends. If this leaves an amount actively bonded less than!T::Currency::minimum_balance(), then it is increased to the full amount.EOnce the unlock period is done, you can call `withdraw_unbonded` to actually movethe funds out of management ready for transfer.9No more than a limited number of unlocking chunks (see `MAX_UNLOCKING_CHUNKS`)9can co-exists at the same time. In that case, [`Call::withdraw_unbonded`] needto be called first to remove some of the chunks (if possible).QThe dispatch origin for this call must be _Signed_ by the controller, not the stash. And, it can be only called when [`EraElectionStatus`] is `Closed`.DEmits `Unbonded`.See also [`Call::withdraw_unbonded`].(# =- Independent of the arguments. Limited but potentially exploitable complexity.- Contains a limited number of reads.a- Each call (requires the remainder of the bonded balance to be above `minimum_balance`)m will cause a new entry to be inserted into a vector (`Ledger.unlocking`) kept in storage.M The only way to clean the aforementioned storage item is also user-controlled viaX `withdraw_unbonded`.<- One DB entry.(----------0Weight: O(1)(DB Weight:!- Read: EraElectionStatus, Ledger, CurrentEra, Locks, \[Origin Account\]- Write: Locks, Ledger, \[Origin Account\]$Dwithdraw_unbondedHnum_slashing_spans u32|)Remove any unlocked chunks from the `unlocking` queue from our management.1This essentially frees up that balance to be used by the stash account to doHwhatever it wants.QThe dispatch origin for this call must be _Signed_ by the controller, not the stash. And, it can be only called when [`EraElectionStatus`] is `Closed`.HEmits `Withdrawn`.hSee also [`Call::unbond`].(# Q- Could be dependent on the `origin` argument and how much `unlocking` chunks exist.A It implies `consolidate_unlocked` which loops over `Ledger.unlocking`, which is indirectly user-controlled. See [`unbond`] for more detail.u- Contains a limited number of reads, yet the size of which could be large based on `ledger`.- Writes are limited to the `origin` account key.<---------------Complexity O(S) where S is the number of slashing spans to removeUpdate:!- Reads: EraElectionStatus, Ledger, Current Era, Locks, [Origin Account]- Writes: [Origin Account], Locks, LedgerKill:A- Reads: EraElectionStatus, Ledger, Current Era, Bonded, Slashing Spans, [OriginD Account], LocksM- Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators,d [Origin Account], Locksp- Writes Each: SpanSlash * S NOTE: Weight annotation is the kill scenario, we refund otherwise.,# validateprefs-8ValidatorPrefsDDeclare the desire to validate for the origin controller.Effects will be felt at the beginning of the next era.QThe dispatch origin for this call must be _Signed_ by the controller, not the stash. And, it can be only called when [`EraElectionStatus`] is `Closed`.(# - Independent of the arguments. Insignificant complexity.- Contains a limited number of reads.- Writes are limited to the `origin` account key.,-----------0Weight: O(1)(DB Weight:- Read: Era Election Status, Ledger|- Write: Nominators, Validators,# nominatetargets5Vec<::Source>L Declare the desire to nominate `targets` for the origin controller.MEffects will be felt at the beginning of the next era. This can only be called when[`EraElectionStatus`] is `Closed`.QThe dispatch origin for this call must be _Signed_ by the controller, not the stash. And, it can be only called when [`EraElectionStatus`] is `Closed`.(# -- The transaction's complexity is proportional to the size of `targets` (N)which is capped at CompactAssignments::LIMIT (MAX_NOMINATIONS).- Both the reads and writes follow a similar pattern.$---------0Weight: O(N)where N is the number of targets(DB Weight:- Reads: Era Election Status, Ledger, Current Era- Writes: Validators, Nominators,# chillDDeclare no desire to either validate or nominate.Effects will be felt at the beginning of the next era.QThe dispatch origin for this call must be _Signed_ by the controller, not the stash. And, it can be only called when [`EraElectionStatus`] is `Closed`.(# - Independent of the arguments. Insignificant complexity.P- Contains one read.- Writes are limited to the `origin` account key. --------0Weight: O(1)(DB Weight:- Read: EraElectionStatus, Ledger|- Write: Validators, Nominators,# $set_payeepayee)|RewardDestination@(Re-)set the payment target for a controller.Effects will be felt at the beginning of the next era.QThe dispatch origin for this call must be _Signed_ by the controller, not the stash.(# - Independent of the arguments. Insignificant complexity.- Contains a limited number of reads.- Writes are limited to the `origin` account key.$---------8- Weight: O(1)0- DB Weight:H - Read: LedgerH - Write: Payee,# 8set_controller(controlleru::Source@(Re-)set the controller of a stash.Effects will be felt at the beginning of the next era.QThe dispatch origin for this call must be _Signed_ by the stash, not the controller.(# - Independent of the arguments. Insignificant complexity.- Contains a limited number of reads.- Writes are limited to the `origin` account key.(----------0Weight: O(1)(DB Weight:- Read: Bonded, Ledger New Controller, Ledger Old Controller- Write: Bonded, Ledger New Controller, Ledger Old Controller,# Lset_validator_count new u32 Sets the ideal number of validators.The dispatch origin must be Root.(# 0Weight: O(1)XWrite: Validator Count,# `increase_validator_count(additional u32 Increments the ideal number of validators.The dispatch origin must be Root.(# Same as [`set_validator_count`].,# Tscale_validator_countfactor9Percent Scale up the ideal number of validators by a factor.The dispatch origin must be Root.(# Same as [`set_validator_count`].,# hadd_permissioned_validator identity(IdentityId8intended_count=,Option =Governance committee on 2/3 rds majority can introduce a new potential identityto the pool of permissioned entities who can run validators. Staking module uses `PermissionedIdentity`Uto ensure validators have completed KYB compliance and considers them for validation.,# Arguments* origin Required origin for adding a potential validator.* identity Validator's IdentityId.* intended_count No. of validators given identity intends to run.tremove_permissioned_validator identity(IdentityId Remove an identity from the pool of (wannabe) validator identities. Effects are known in the next session.Staking module checks `PermissionedIdentity` to ensure validators have`completed KYB compliance,# Arguments* origin Required origin for removing a potential validator.* identity Validator's IdentityId.xvalidate_cdd_expiry_nominatorstargetsDVec(Validate the nominators CDD expiry time.If an account from a given set of address is nominating thencheck the CDD expiry time of it and if it is expired1then the account should be unbonded and removed from the nominating process.$#- Depends on passed list of AccountId.)- Depends on the no. of claim issuers an accountId has for the CDD expiry.(#Hset_commission_capnew_capPerbill!Changes commission rate which applies to all validators. Only Governancecommittee is allowed to change this value.,# Arguments* `new_cap` the new commission cap.Xset_min_bond_threshold$new_value0BalanceOfChanges min bond value to be used in validate(). Only Governancecommittee is allowed to change this value.,# Argumentst* `new_value` the new minimum4force_no_eras$Force there to be no new eras indefinitely.The dispatch origin must be Root.(# <- No arguments.8- Weight: O(1)D- Write: ForceEra,# 4force_new_era(IForce there to be a new era at the end of the next session. After this, it will bereset to normal (non-forced) behaviour.The dispatch origin must be Root.(# <- No arguments.8- Weight: O(1)@- Write ForceEra,# Dset_invulnerables4invulnerablesDVec Set the validators who cannot be slashed (if any).The dispatch origin must be Root.(# - O(V)X- Write: Invulnerables,# 4force_unstakestash0T::AccountIdHnum_slashing_spans u32( Force a current staker to become completely unstaked, immediately.The dispatch origin must be Root.(# O(S) where S is the number of slashing spans to be removedReads: Bonded, Slashing Spans, Account, LocksWrites: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators, Account, LockshWrites Each: SpanSlash * S,# Pforce_new_era_always Force there to be a new era at the end of sessions indefinitely.The dispatch origin must be Root.(# 8- Weight: O(1)D- Write: ForceEra,# Tcancel_deferred_slash era EraIndex4slash_indicesi Vec4Cancel enactment of a deferred slash.Can be called by the `T::SlashCancelOrigin`.Parameters: era and indices of the slashes for that era to kill.(# PComplexity: O(U + S)with U unapplied slashes weighted with U=1000and S is the number of slash indices to be canceled.d- Read: Unapplied Slashesh- Write: Unapplied Slashes,# 8payout_stakers- Time complexity: at most O(MaxNominatorRewardedPerValidator).- Contains a limited number of reads and writes.,-----------N is the Number of payouts for the validator (including the validator)Weight:- Reward Destination Staked: O(N)- Reward Destination Controller (Creating): O(N)(DB Weight:%- Read: EraElectionStatus, CurrentEra, HistoryDepth, ErasValidatorReward,) ErasStakersClipped, ErasRewardPoints, ErasValidatorPrefs (8 items) - Read Each: Bonded, Ledger, Payee, Locks, System Account (5 items)- Write Each: System Account, Locks, Ledger (3 items),# rebondvalue0BalanceOf8Rebond a portion of the stash scheduled to be unlocked.QThe dispatch origin must be signed by the controller, and it can be only called when[`EraElectionStatus`] is `Closed`.(# - Time complexity: O(L), where L is unlocking chunks- Bounded by `MAX_UNLOCKING_CHUNKS`.- Storage changes: Can't increase storage, only decrease it.<---------------0- DB Weight: - Reads: EraElectionStatus, Ledger, Locks, [Origin Account] - Writes: [Origin Account], Locks, Ledger,# Dset_history_depthDnew_history_depth EraIndexH_era_items_deleted u32T-Set `HistoryDepth` value. This function will delete any history information|when `HistoryDepth` is reduced.,Parameters: - `new_history_depth`: The new history depth you would like to set.E- `era_items_deleted`: The number of items that will be deleted by this dispatch.A This should report all the storage items that will be deleted by clearing oldA era history. Needed to report an accurate weight for the dispatch. Trusted by `Root` to report an accurate number.POrigin must be root.(# - E: Number of history depths removed, i.e. 10 -> 7 = 38- Weight: O(E)0- DB Weight: - Reads: Current Era, History Depthl - Writes: History Depth- - Clear Prefix Each: Era Stakers, EraStakersClipped, ErasValidatorPrefs} - Writes Each: ErasValidatorReward, ErasRewardPoints, ErasTotalStake, ErasStartSessionIndex,# (reap_stashstash0T::AccountIdHnum_slashing_spans u32<]Remove all data structure concerning a staker/stash once its balance is at the minimum.]This is essentially equivalent to `withdraw_unbonded` except it can be called by anyoneand the target `stash` must have no funds left beyond the ED.This can be called from any origin.- `stash`: The stash account to reap. Its balance must be zero.(# !Complexity: O(S) where S is the number of slashing spans on the account.(DB Weight:- Reads: Stash Account, Bonded, Slashing Spans, Locks- Writes: Bonded, Slashing Spans (if S > 0), Ledger, Payee, Validators, Nominators, Stash Account, Locksp- Writes Each: SpanSlash * S,# `submit_election_solutionwinnersALVeccompactEHCompactAssignmentsscore4ElectionScore era EraIndexsize0ElectionSizeSubmit an election result to the chain. If the solution:01. is valid.2. has a better score than a potentially existing solution on chain.then, it will be _put_ on chain.A solution consists of two pieces of data:1. `winners`: a flat vector of all the winners of the round.M2. `assignments`: the compact version of an assignment vector that encodes the edge, weights.Both of which may be computed using _phragmen_, or any other algorithm.Additionally, the submitter must provide:- The `score` that they claim their solution has.IBoth validators and nominators will be represented by indices in the solution. Theindices should respect the corresponding types ([`ValidatorIndex`] and-[`NominatorIndex`]). Moreover, they should be valid when used to index intoM[`SnapshotValidators`] and [`SnapshotNominators`]. Any invalid index will cause the]solution to be rejected. These two storage items are set during the election window andmay be used to determine the indices.\A solution is valid if:0. It is submitted when [`EraElectionStatus`] is `Open`.1. Its claimed score is equal to the score computed on-chain.2. Presents the correct number of winners.Q3. All indexes must be value according to the snapshot vectors. All edge values mustY also be correct and should not overflow the granularity of the ratio type (i.e. 256< or billion). 4. For each edge, all targets are actually nominated by the voter.h5. Has correct self-votes.A solutions score is consisted of 3 parameters:a1. `min { support.total }` for each support of a winner. This value should be maximized.a2. `sum { support.total }` for each support of a winner. This value should be minimized.=3. `sum { support.total^2 }` for each support of a winner. This value should be minimized (to ensure less variance)(# The transaction is assumed to be the longest path, a better solution. - Initial solution is almost the same.A - Worse solution is retraced in pre-dispatch-checks which sets its own weight.,# submit_election_solution_unsignedwinnersALVeccompactEHCompactAssignmentsscore4ElectionScore era EraIndexsize0ElectionSize$Unsigned version of `submit_election_solution`.YNote that this must pass the [`ValidateUnsigned`] check which only allows transactions]from the local node to be included. In other words, only the block author can include adtransaction in the block.(# See [`submit_election_solution`].,# `payout_stakers_by_system 8GC forcefully chills a validator.Effects will be felt at the beginning of the next era. And, it can be only called when [`EraElectionStatus`] is `Closed`.,# Argumentsp* origin which must be a GC.* identity must be permissioned to run operator/validator nodes.* stash_keys contains the secondary keys of the permissioned identity # Errors* `BadOrigin` The origin was not a GC member.* `CallNotAllowed` The call is not allowed at the given time due to restrictions of election period.* `NotExists` Permissioned validator doesn't exist.* `NotStash` Not a stash account for the permissioned identity. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.)8pallet_stakingDRewardDestination$AccountIdStakedStash(ControllerAccount$AccountId-8pallet_staking8ValidatorPrefs(commission1Perbillblocked)bool15u9 4sp_arithmetic(per_thingsPercentu8=OptionTNoneSomeA]E8pallet_stakingHCompactAssignments@votes1Ivotes2Uvotes3ivotes4uvotes5votes6votes7votes8votes9votes10votes11votes12votes13votes14votes15votes16IMMQQ]UYY ]Q]Qaaee 4sp_arithmetic(per_thingsPerU16] u16imm qQq]uyy }Q}] Q] Q] Q] Q] Q] Q ] Q ] Q ] Q ] Q ] Q]    Q ]Dsp_npos_elections4ElectionScore 4minimal_stake$Sets the session key(s) of the function caller to `keys`.Allows an account to set its session key prior to becoming a validator.This doesn't take effect until the next session.The dispatch origin of this function must be signed.4## ComplexityY- `O(1)`. Actual cost depends on the number of length of `T::Keys::key_ids()` which is fixed.(purge_keys0Removes any session key(s) of the function caller.This doesn't take effect until the next session.UThe dispatch origin of this function must be Signed and the account must be either be]convertible to a validator ID using the chain's typical addressing system (this usuallyQmeans being a controller account) or directly convertible into a validator ID (whichusually means being a stash account).4## Complexity=- `O(1)` in number of key types. Actual cost depends on the number of length of `T::Keys::key_ids()` which is fixed.%Contains one variant per dispatchable that can be called by an extrinsic. `polymesh_runtime_developruntime,SessionKeysgrandpa::Publicbabe ::Public$im_online::PublicLauthority_discovery!::Public! Xsp_authority_discovery appPublic>>-Psp_consensus_grandpa0EquivocationH,NPrevote19grandpa::Equivocation, AuthoritySignature>$PrecommitEAgrandpa::Equivocation, AuthoritySignature>1@finality_grandpa0Equivocation IdV5S90round_number( u64 identityIdfirstA(V, S)secondA(V, S)5@finality_grandpaPrevoteH,N,target_hash,H4target_numberN9 Psp_consensus_grandpa app$Signature=Hed25519::Signature= sp_coreed25519$Signature) [u8; 64]A59E@finality_grandpa0Equivocation IdVIS90round_number( u64 identityIdfirstM(V, S)secondM(V, S)I@finality_grandpa$PrecommitH,N,target_hash,H4target_numberNMI9Q @pallet_im_onlinepalletCallT$heartbeat$heartbeatUdHeartbeat$signaturei::Signature8## Complexity:Y- `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is length of `heartbeat.network_state.external_address` - `O(K)`: decoding of length `K` - `O(E)`: decoding/encoding of length `E`%Contains one variant per dispatchable that can be called by an extrinsic.U@pallet_im_online$Heartbeat,BlockNumber0block_number,BlockNumber4network_stateYHOpaqueNetworkState4session_index0SessionIndex]sp_core0OpaquePeerId0Vecaee sp_core offchaini@pallet_im_onlinesr25519,app_sr25519$SignaturemHsr25519::Signaturem sp_coresr25519$Signature) [u8; 64]q,pallet_sudoCallTsudocall|Box<::RuntimeCall>(5Authenticates the sudo key and dispatches a function call with `Root` origin.The dispatch origin for this call must be _Signed_.(# - O(1).`- Limited storage reads.\- One DB write (event).- Weight of derivative `call` execution + 10,000.,# Tsudo_unchecked_weightcall|Box<::RuntimeCall>_weight Weight(5Authenticates the sudo key and dispatches a function call with `Root` origin.-This function does not check the weight of the call, and instead allows theSudo user to specify the weight of the call.The dispatch origin for this call must be _Signed_.(# - O(1).- The weight of this call is defined by the caller.,# set_key newu::Source$qAuthenticates the current sudo key and sets the given AccountId (`new`) as the new sudo key.The dispatch origin for this call must be _Signed_.(# - O(1).`- Limited storage reads.@- One DB change.,# sudo_as whou::Sourcecall|Box<::RuntimeCall>,MAuthenticates the sudo key and dispatches a function call with `Signed` origin from@a given account.The dispatch origin for this call must be _Signed_.(# - O(1).`- Limited storage reads.\- One DB write (event).- Weight of derivative `call` execution + 10,000.,# LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.u0pallet_assetCallTx4funding_round`Option`-Initializes a new security token, with the initiating account as its owner.The total supply will initially be zero. To mint tokens, use `issue`.,# Arguments* `origin` - contains the secondary key of the caller (i.e. who signed the transaction to execute this function).* `name` - the name of the token.* `ticker` - the ticker symbol of the token.-* `divisible` - a boolean to identify the divisibility status of the token.* `asset_type` - the asset type.* `identifiers` - a vector of asset identifiers.* `funding_round` - name of the funding round.$## Errors- `InvalidAssetIdentifier` if any of `identifiers` are invalid.Q- `MaxLengthOfAssetNameExceeded` if `name`'s length exceeds `T::AssetNameMaxLength`.U- `FundingRoundNameMaxLengthExceeded` if the name of the funding round is longer that|`T::FundingRoundNameMaxLength`.- `AssetAlreadyCreated` if asset was already created.]- `TickerTooLong` if `ticker`'s length is greater than `config.max_ticker_length` chain(parameter.Y- `TickerNotAlphanumeric` if `ticker` is not yet registered, and contains non-alphanumeric characters or any character after first occurrence of `\0`.8## Permissions,* PortfoliofreezetickerTicker,Freezes transfers of a given token.,# Arguments* `origin` - the secondary key of the sender.* `ticker` - the ticker of the token.$## Errors- `AlreadyFrozen` if `ticker` is already frozen.4# Permissions* Asset unfreezetickerTicker,Unfreezes transfers of a given token.,# Arguments* `origin` - the secondary key of the sender.* `ticker` - the ticker of the frozen token.$## Errors- `NotFrozen` if `ticker` is not frozen yet.4# Permissions* Asset0rename_assettickerTickername$AssetName4XRenames a given token.,# Arguments* `origin` - the secondary key of the sender.* `ticker` - the ticker of the token.* `name` - the new name of the token.$## Errors- `MaxLengthOfAssetNameExceeded` if length of `name` is greater than``T::AssetNameMaxLength`.4# Permissions* Assetissue tickerTickeramountBalance8portfolio_kind4PortfolioKind,UIssue, or mint, new tokens to the caller, which must be an authorized external agent.,# Arguments)* `origin` - A signer that has permissions to act as an agent of `ticker`.* `ticker` - The [`Ticker`] of the token.* `amount` - The amount of tokens that will be issued.* `portfolio_kind` - The [`PortfolioKind`] of the portfolio that will receive the minted tokens.4# Permissions* Asset,* PortfolioredeemtickerTickervalueBalance<Redeems existing tokens by reducing the balance of the caller's default portfolio and the total supply of the token,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.* `value` Amount of tokens to redeem. # Errorsa- `Unauthorized` If called by someone without the appropriate external agent permissionsY- `InvalidGranularity` If the amount is not divisible by 10^6 for non-divisible tokens- `InsufficientPortfolioBalance` If the caller's default portfolio doesn't have enough free balance4# Permissions* Asset,* Portfolio8make_divisibletickerTicker ,Makes an indivisible token divisible.,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.$## Errors- `AssetAlreadyDivisible` if `ticker` is already divisible.4# Permissions* Asset4add_documentsdocsy4VectickerTicker $Add documents for a given token.,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.* `docs` Documents to be attached to `ticker`.4# Permissions* Asset@remove_documents ids%tickerTicker $Remove documents for a given token.,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.* `ids` Documents ids to be removed from `ticker`.4# Permissions* AssetDset_funding_roundtickerTickername@FundingRoundName 4Sets the name of the current funding round.,# Arguments)* `origin` - a signer that has permissions to act as an agent of `ticker`.* `ticker` - the ticker of the token.* `name` - the desired name of the current funding round.$## Errors%- `FundingRoundNameMaxLengthExceeded` if length of `name` is greater than|`T::FundingRoundNameMaxLength`.4# Permissions* AssetHupdate_identifierstickerTicker,identifiersPVec 4xUpdates the asset identifiers.,# Arguments)* `origin` - a signer that has permissions to act as an agent of `ticker`.* `ticker` - the ticker of the token.Y* `identifiers` - the asset identifiers to be updated in the form of a vector of pairs of `IdentifierType` and `AssetIdentifier` value.$## Errors1- `InvalidAssetIdentifier` if `identifiers` contains any invalid identifier.4# Permissions* AssetLcontroller_transfer tickerTickervalueBalance8from_portfolio,PortfolioIdMForces a transfer of token from `from_portfolio` to the caller's default portfolio.,# ArgumentsU* `origin` Must be an external agent with appropriate permissions for a given ticker.* `ticker` Ticker symbol of the asset.* `value` Amount of tokens need to force transfer.* `from_portfolio` From whom portfolio tokens gets transferred.hregister_custom_asset_typety0Vec$xRegisters a custom asset type.The provided `ty` will be bound to an ID in storage.The ID can then be used in `AssetType::Custom`.%Should the `ty` already exist in storage, no second ID is assigned to it.,# Arguments* `origin` who called the extrinsic.* `ty` contains the string representation of the asset type.tcreate_asset_with_custom_typename$AssetNametickerTicker$divisible)boolDcustom_asset_type0Vec,identifiersPVec4funding_round`Option-Utility extrinsic to batch `create_asset` and `register_custom_asset_type`.Hset_asset_metadatatickerTicker key}@AssetMetadataKeyvalueIHAssetMetadataValuedetailMOption>DdSet asset metadata value.,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.T* `key` Metadata key.d* `value` Metadata value. * `details` Optional Metadata value details (expire, lock status). # Errors* `AssetMetadataKeyIsMissing` if the metadata type key doesn't exist.%* `AssetMetadataValueIsLocked` if the metadata value for `key` is locked.e* `AssetMetadataValueMaxLengthExceeded` if the metadata value exceeds the maximum length.4# Permissions* Agent* Assethset_asset_metadata_details tickerTicker key}@AssetMetadataKeydetailQAssetMetadataValueDetail>LRegisters and set local asset metadata.,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.\* `name` Metadata name.* `spec` Metadata type definition.d* `value` Metadata value. * `details` Optional Metadata value details (expire, lock status). # Errors* `AssetMetadataLocalKeyAlreadyExists` if a local metadata type with `name` already exists for `ticker`.e* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length.* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length.e* `AssetMetadataValueMaxLengthExceeded` if the metadata value exceeds the maximum length.4# Permissions* Agent* Assetregister_asset_metadata_local_type tickerTickernameYDAssetMetadataNamespecaDAssetMetadataSpec@Registers asset metadata local type.,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.\* `name` Metadata name.* `spec` Metadata type definition. # Errors* `AssetMetadataLocalKeyAlreadyExists` if a local metadata type with `name` already exists for `ticker`.e* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length.* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length.4# Permissions* Agent* Assetregister_asset_metadata_global_typenameYDAssetMetadataNamespecaDAssetMetadataSpec,Registers asset metadata global type.,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.\* `name` Metadata name.* `spec` Metadata type definition. # Errorsq* `AssetMetadataGlobalKeyAlreadyExists` if a globa metadata type with `name` already exists.e* `AssetMetadataNameMaxLengthExceeded` if the metadata `name` exceeds the maximum length.* `AssetMetadataTypeDefMaxLengthExceeded` if the metadata `spec` type definition exceeds the maximum length.Tredeem_from_portfolio tickerTickervalueBalance$portfolio4PortfolioKindDRedeems existing tokens by reducing the balance of the caller's portfolio and the total supply of the token,# Arguments-* `origin` is a signer that has permissions to act as an agent of `ticker`.|* `ticker` Ticker of the token.* `value` Amount of tokens to redeem.* `portfolio` From whom portfolio tokens gets transferred. # Errorsa- `Unauthorized` If called by someone without the appropriate external agent permissionsY- `InvalidGranularity` If the amount is not divisible by 10^6 for non-divisible tokensu- `InsufficientPortfolioBalance` If the caller's `portfolio` doesn't have enough free balance- `PortfolioDoesNotExist` If the portfolio doesn't exist.4# Permissions* Asset,* PortfolioDupdate_asset_typetickerTicker(asset_type$AssetType0tUpdates the type of an asset.,# Arguments* `origin` - the secondary key of the sender.* `ticker` - the ticker of the token.* `asset_type` - the new type of the token.$## Errorsi- `InvalidCustomAssetTypeId` if `asset_type` is of type custom and has an invalid type id.4# Permissions* Assetdremove_local_metadata_keytickerTicker$local_key]TAssetMetadataLocalKey@Removes the asset metadata key and value of a local key.,# Arguments* `origin` - the secondary key of the sender.* `ticker` - the ticker of the local metadata key.* `local_key` - the local metadata key. # Errors - `SecondaryKeyNotAuthorizedForAsset` - if called by someone without the appropriate external agent permissions. - `UnauthorizedAgent` - if called by someone without the appropriate external agent permissions. - `AssetMetadataKeyIsMissing` - if the key doens't exist. - `AssetMetadataValueIsLocked` - if the value of the key is locked.} - AssetMetadataKeyBelongsToNFTCollection - if the key is a mandatory key in an NFT collection.4# Permissions* AssetTremove_metadata_valuetickerTicker0metadata_key}@AssetMetadataKey currencyTicker$per_shareBalanceamountBalance(payment_at(Moment(expires_at8Option%Start and attach a capital distribution, to the CA identified by `ca_id`,ewith `amount` funds in `currency` withdrawn from `portfolio` belonging to `origin`'s DID.)The distribution will commence at `payment_at` and expire at `expires_at`,if provided, or if `None`, then there's no expiry.%The funds will be locked in `portfolio` from when `distribute` is called.5When there's no expiry, some funds may be locked indefinitely in `portfolio`,due to claimants not withdrawing or no benefits being pushed to them.)For indivisible currencies, unlocked amounts, of less than one whole unit,will not be transferable from `portfolio`.MHowever, if we imagine that users `Alice` and `Bob` both are entitled to 1.5 units,Qand only receive `1` units each, then `0.5 + 0.5 = 1` units are left in `portfolio`,lwhich is now transferrable.0## ArgumentsE- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`.- `ca_id` identifies the CA to start a capital distribution for.Y- `portfolio` specifies the portfolio number of the agent to distribute `amount` from.- `currency` to withdraw and distribute from the `portfolio`.- `per_share` amount of `currency` to withdraw and distribute.% Specified as a per-million, i.e. `1 / 10^6`th of one `currency` token.- `amount` of `currency` to withdraw and distribute at most.- `payment_at` specifies when benefits may first be pushed or claimed.)- `expires_at` specifies, if provided, when remaining benefits are forfeit and may be reclaimed by `origin`. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `ExpiryBeforePayment` if `expires_at.unwrap() <= payment_at`.- `NoSuchCA` if `ca_id` does not identify an existing CA.- `NoRecordDate` if CA has no record date.- `RecordDateAfterStart` if CA's record date > payment_at.1- `UnauthorizedCustodian` if the caller is not the custodian of `portfolio`.U- `InsufficientPortfolioBalance` if `portfolio` has less than `amount` of `currency`.- `InsufficientBalance` if the protocol fee couldn't be charged.E- `CANotBenefit` if the CA is not of kind PredictableBenefit/UnpredictableBenefit- `DistributionAmountIsZero` if the `amount` is zero.- `DistributionPerShareIsZero` if the `per_share` is zero.4# Permissions* Asset,* Portfolioclaimca_idCAId\Claim a benefit of the capital distribution attached to `ca_id`.Taxes are withheld as specified by the CA.YPost-tax earnings are then transferred to the default portfolio of the `origin`'s DID.All benefits are rounded by truncation, down to first integer below.9Moreover, before post-tax earnings, in indivisible currencies are transferred,they are rounded down to a whole unit.0## ArgumentsE- `origin` which must be a holder of the asset and eligible for the distribution.- `ca_id` identifies the CA to start a capital distribution for. # Errors%- `HolderAlreadyPaid` if `origin`'s DID has already received its benefit.- `NoSuchDistribution` if there's no capital distribution for `ca_id`.- `CannotClaimBeforeStart` if `now < payment_at`.- `CannotClaimAfterExpiry` if `now > expiry_at.unwrap()`.- `NoSuchCA` if `ca_id` does not identify an existing CA.- `NotTargetedByCA` if the CA does not target `origin`'s DID.5- `BalanceAmountProductOverflowed` if `ba = balance * amount` would overflow.5- `BalanceAmountProductSupplyDivisionFailed` if `ba * supply` would overflow.!- Other errors can occur if the compliance manager rejects the transfer.0push_benefitca_idCAIdholder(IdentityId`Push benefit of an ongoing distribution to the given `holder`.Taxes are withheld as specified by the CA.YPost-tax earnings are then transferred to the default portfolio of the `origin`'s DID.All benefits are rounded by truncation, down to first integer below.9Moreover, before post-tax earnings, in indivisible currencies are transferred,they are rounded down to a whole unit.0## ArgumentsE- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`.9- `ca_id` identifies the CA with a capital distributions to push benefits for.|- `holder` to push benefits to. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchDistribution` if there's no capital distribution for `ca_id`.- `CannotClaimBeforeStart` if `now < payment_at`.- `CannotClaimAfterExpiry` if `now > expiry_at.unwrap()`.- `NoSuchCA` if `ca_id` does not identify an existing CA.- `NotTargetedByCA` if the CA does not target `holder`.5- `BalanceAmountProductOverflowed` if `ba = balance * amount` would overflow.5- `BalanceAmountProductSupplyDivisionFailed` if `ba * supply` would overflow.!- Other errors can occur if the compliance manager rejects the transfer.reclaimca_idCAId,Assuming a distribution has expired,unlock the remaining amount in the distributor portfolio.0## ArgumentsE- `origin` which must be the creator of the capital distribution tied to `ca_id`.- `ca_id` identifies the CA with a capital distribution to reclaim for. # Errors- `NoSuchDistribution` if there's no capital distribution for `ca_id`.-- `AlreadyReclaimed` if this function has already been called successfully.- `NotExpired` if `now < expiry`.Lremove_distributionca_idCAId,Removes a distribution that hasn't started yet,unlocking the full amount in the distributor portfolio.0## ArgumentsE- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`.I- `ca_id` identifies the CA with a not-yet-started capital distribution to remove. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchDistribution` if there's no capital distribution for `ca_id`.- `DistributionStarted` if `payment_at <= now`. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.OptionTNoneSome 0pallet_asset(checkpointCallTDcreate_checkpointtickerTicker$Creates a single checkpoint at the current time.,# Arguments-- `origin` is a signer that has permissions to act as an agent of `ticker`.- `ticker` to create the checkpoint for. # ErrorsU- `UnauthorizedAgent` if the DID of `origin` isn't a permissioned agent for `ticker`. - `CounterOverflow` if the total checkpoint counter would overflow.pset_schedules_max_complexity8max_complexity( u64$YSets the max complexity of a schedule set for an arbitrary ticker to `max_complexity`.The new maximum is not enforced retroactively,and only applies once new schedules are made.Must be called as a PIP (requires "root").,# Argumentsx- `origin` is the root origin. - `max_complexity` allowed for an arbitrary ticker's schedule set.Lreceiver_conditions8Vec,Adds a compliance requirement to an asset's compliance by ticker.iIf there are duplicate ClaimTypes for a particular trusted issuer, duplicates are removed.,# Arguments-* origin - Signer of the dispatchable. It should be the owner of the tickerx* ticker - Symbol of the asset* sender_conditions - Sender transfer conditions.* receiver_conditions - Receiver transfer conditions.4# Permissions* Assettremove_compliance_requirementtickerTickerid u32$Removes a compliance requirement from an asset's compliance.,# Arguments-* origin - Signer of the dispatchable. It should be the owner of the tickerx* ticker - Symbol of the asset* id - Compliance requirement id which is need to be removed4# Permissions* Asset`replace_asset_compliancetickerTicker@asset_compliancehVec T::MaxTargetIds::get()`.4# Permissions* Assetlset_default_withholding_taxtickerTicker tax Tax0=Set the default withholding tax for all DIDs and CAs relevant to this `ticker`.0## ArgumentsE- `origin` which must be an external agent of `ticker` with relevant permissions.- `ticker` that the withholding tax will apply to.- `tax` that should be withheld when distributing dividends, etc.$## Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.4# Permissions* Asset\set_did_withholding_tax tickerTicker$taxed_did(IdentityId tax,Option@Set the withholding tax of `ticker` for `taxed_did` to `tax`.If `Some(tax)`, this overrides the default withholding tax of `ticker` to `tax` for `taxed_did`.Otherwise, if `None`, the default withholding tax will be used.0## ArgumentsE- `origin` which must be an external agent of `ticker` with relevant permissions.- `ticker` that the withholding tax will apply to.- `taxed_did` that will have its withholding tax updated.- `tax` that should be withheld when distributing dividends, etc.$## Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `TooManyDidTaxes` if `Some(tax)` and adding the override would go over the limit `MaxDidWhts`.4# Permissions* Assetdinitiate_corporate_action tickerTickerkind CAKind$decl_date(Moment,record_dateXOptiondetails!$CADetailstargets`Option\default_withholding_tax,Option>xIInitiates a CA for `ticker` of `kind` with `details` and other provided arguments.0## ArgumentsE- `origin` which must be an external agent of `ticker` with relevant permissions.- `ticker` that the CA is made for.|- `kind` of CA being initiated.- `decl_date` of CA bring initialized.- `record_date`, if any, to calculate the impact of this CA.a If provided, this results in a scheduled balance snapshot ("checkpoint") at the date.M- `details` of the CA in free-text form, up to a certain number of bytes in length.- `targets`, if any, which this CA is relevant/irrelevant to.I Overrides, if provided, the default at the asset level (`set_default_targets`).]- `default_withholding_tax`, if any, is the default withholding tax to use for this CA.i Overrides, if provided, the default at the asset level (`set_default_withholding_tax`).!- `withholding_tax`, if any, provides per-DID withholding tax overrides.Y Overrides, if provided, the default at the asset level (`set_did_withholding_tax`). # Errors- `DetailsTooLong` if `details.len()` goes beyond `max_details_length`.%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.i- `CounterOverflow` in the unlikely event that so many CAs were created for this `ticker`, that integer overflow would have occured if instead allowed.u- `TooManyDidTaxes` if `withholding_tax.unwrap().len()` would go over the limit `MaxDidWhts`.- `DuplicateDidTax` if a DID is included more than once in `wt`.U- `TooManyTargetIds` if `targets.unwrap().identities.len() > T::MaxTargetIds::get()`.- `DeclDateInFuture` if the declaration date is not in the past.Q- When `record_date.is_some()`, other errors due to checkpoint scheduling may occur.4# Permissions* Asset,link_ca_docidCAIddocs%HLink the given CA `id` to the given `docs`.Any previous links for the CA are removed in favor of `docs`.UThe workflow here is to add the documents and initiating the CA in any order desired.Once both exist, they can now be linked together.0## ArgumentsQ- `origin` which must be an external agent of `id.ticker` with relevant permissions.- `id` of the CA to associate with `docs`.- `docs` to associate with the CA with `id`. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchCA` if `id` does not identify an existing CA.- `NoSuchDoc` if any of `docs` does not identify an existing document.4# Permissions* Asset$remove_caca_idCAIdHRemoves the CA identified by `ca_id`.Associated data, such as document links, ballots,and capital distributions are also removed.Any schedule associated with the record date will see`strong_ref_count(schedule_id)` decremented.0## Arguments]- `origin` which must be an external agent of `ca_id.ticker` with relevant permissions.x- `ca_id` of the CA to remove. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchCA` if `id` does not identify an existing CA.4# Permissions* AssetHchange_record_dateca_idCAId,record_dateXOption currencyTicker$per_shareBalanceamountBalance(payment_at(Moment(expires_at8OptionUtility extrinsic to batch `initiate_corporate_action` and `distribute` LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.OptionTNoneSome`pallet_corporate_actions8RecordDateSpec $Scheduled(Moment@ExistingSchedule(ScheduleId Existing0CheckpointIdOptionTNoneSomeOptionTNoneSome`pallet_corporate_actionslInitiateCorporateActionArgs tickerTickerkind CAKind$decl_date(Moment,record_dateXOptiondetails!$CADetailstargets`Option\default_withholding_tax,Option> `pallet_corporate_actionsballotCallT4attach_ballotca_idCAIdrange- range.end`.)- `NowAfterEnd` if `now > range.end` where `now` is the current timestamp.- `NoRecordDate` if CA has no record date.Y- `RecordDateAfterStart` if `date > range.start` where `date` is the CA's record date.- `AlreadyExists` if there's a ballot already.1- `NumberOfChoicesOverflow` if the total choice in `meta` overflows `usize`. - `TooLong` if any of the embedded strings in `meta` are too long.- `InsufficientBalance` if the protocol fee couldn't be charged.voteca_idCAIdvotesQDCast `votes` in the ballot attached to the CA identified by `ca_id`.0## Arguments - `origin` which must be a permissioned signer targeted by the CA.- `ca_id` identifies the attached ballot's CA.!- `votes` specifies the balances to assign to each choice in the ballot.U The full voting power of `origin`'s DID may be used for each motion in the ballot. # Errors- `NoSuchBallot` if `ca_id` does not identify a ballot.- `VotingNotStarted` if the voting period hasn't commenced yet.- `VotingAlreadyEnded` if the voting period has ended.]- `WrongVoteCount` if the number of choices in the ballot does not match `votes.len()`.- `NoSuchCA` if `ca_id` does not identify an existing CA.- `NotTargetedByCA` if the CA does not target `origin`'s DID.!- `InsufficientVotes` if the voting power used for any motion in `votes` exceeds `origin`'s DID's voting power.(change_endca_idCAId end(Moment0Amend the end date of the ballot of the CA identified by `ca_id`.0## ArgumentsE- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`.- `ca_id` identifies the attached ballot's CA.- `end` specifies the new end date of the ballot. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchBallot` if `ca_id` does not identify a ballot.1- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time.- `StartAfterEnd` if `start > end`.,change_metaca_idCAIdmeta1(BallotMeta4aAmend the metadata (title, motions, etc.) of the ballot of the CA identified by `ca_id`.0## ArgumentsE- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`.- `ca_id` identifies the attached ballot's CA.- `meta` specifies the new metadata. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchBallot` if `ca_id` does not identify a ballot.1- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time.1- `NumberOfChoicesOverflow` if the total choice in `meta` overflows `usize`. - `TooLong` if any of the embedded strings in `meta` are too long.(change_rcvca_idCAId rcv)bool,Amend RCV support for the ballot of the CA identified by `ca_id`.0## ArgumentsE- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`.- `ca_id` identifies the attached ballot's CA.- `rcv` specifies if RCV is to be supported or not. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchBallot` if `ca_id` does not identify a ballot.1- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time.4remove_ballotca_idCAId(Remove the ballot of the CA identified by `ca_id`.0## ArgumentsE- `origin` is a signer that has permissions to act as an agent of `ca_id.ticker`.- `ca_id` identifies the attached ballot's CA. # Errors%- `UnauthorizedAgent` if `origin` is not agent-permissioned for `ticker`.- `NoSuchBallot` if `ca_id` does not identify a ballot.1- `VotingAlreadyStarted` if `start >= now`, where `now` is the current time. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.,pallet_pipsCallTDdset_prune_historical_pipsprune)boolChange whether completed PIPs are pruned.lCan only be called by root.,# Arguments* `prune` specifies whether completed PIPs should be pruned.`set_min_proposal_depositdepositBalance!Change the minimum proposal deposit amount required to start a proposal.lCan only be called by root.,# Arguments* `deposit` the new min deposit required to start a proposalpset_default_enactment_period duration8T::BlockNumberChange the default enactment period.lCan only be called by root.,# Argumentsi* `duration` the new default enactment period it takes for a scheduled PIP to be executed.Xset_pending_pip_expiryexpiryIhMaybeBlockChange the amount of blocks after which a pending PIP is expired.If `expiry` is `None` then PIPs never expire.lCan only be called by root.,# Arguments* `expiry` the block-time it takes for a still-`Pending` PIP to expire.Xset_max_pip_skip_count max0SkippedCountChange the maximum skip count (`max_pip_skip_count`).lCan only be called by root.,# Arguments* `max` skips before a PIP cannot be skipped by GC anymore.Pset_active_pip_limitlimit u32iChange the maximum number of active PIPs before community members cannot propose anything.lCan only be called by root.,# Arguments* `limit` of concurrent active PIPs.propose proposal@BoxdepositBalance urle,Option,descriptionqXOption$A network member creates a PIP by submitting a dispatchable whichUchanges the network in someway. A minimum deposit is required to open a new proposal.,# Arguments* `proposer` is either a signing key or committee.e Used to understand whether this is a committee proposal and verified against `origin`.* `proposal` a dispatchable callE* `deposit` minimum deposit value, which is ignored if `proposer` is a committee.* `url` a link to a website for proposal discussionvote idmPipId(aye_or_nay)booldepositBalanceHVote either in favor (`aye_or_nay` == true) or against a PIP with `id`.MThe "convinction" or strength of the vote is given by `deposit`, which is reserved.Note that `vote` is *not* additive.That is, `vote(id, true, 50)` followed by `vote(id, true, 40)`Iwill first reserve `50` and then refund `50 - 10`, ending up with `40` in deposit.%To add atop of existing votes, you'll need `existing_deposit + addition`.,# ArgumentsL* `id`, proposal id* `aye_or_nay`, a bool representing for or against vote* `deposit`, the "conviction" with which the vote is made. # Errors* `NoSuchProposal` if `id` doesn't reference a valid PIP.* `NotFromCommunity` if proposal was made by a committee.* `IncorrectProposalState` if PIP isn't pending.-* `InsufficientDeposit` if `origin` cannot reserve `deposit - old_deposit`.happrove_committee_proposalidmPipIdApproves the pending committee PIP given by the `id`. # Errors* `BadOrigin` unless a GC voting majority executes this function.* `NoSuchProposal` if the PIP with `id` doesn't exist.* `IncorrectProposalState` if the proposal isn't pending.* `NotByCommittee` if the proposal isn't by a committee. $Updates the execution schedule of the PIP given by `id`.,# Arguments1* `until` defines the future block where the enactment period will finished.E `None` value means that enactment period is going to finish in the next block. # Errors9* `RescheduleNotByReleaseCoordinator` unless triggered by release coordinator.!* `IncorrectProposalState` unless the proposal was in a scheduled state.8clear_snapshot Clears the snapshot and emits the event `SnapshotCleared`. # Errors=* `NotACommitteeMember` - triggered when a non-GC-member executes the function. snapshot  Takes a new snapshot of the current list of active && pending PIPs.)The PIPs are then sorted into a priority queue based on each PIP's weight. # Errors=* `NotACommitteeMember` - triggered when a non-GC-member executes the function.Xenact_snapshot_resultsresultspVec<(PipId, SnapshotResult)>DEnacts `results` for the PIPs in the snapshot queue.)The snapshot will be available for further enactments until it is cleared.UThe `results` are encoded a list of `(id, result)` where `result` is applied to `id`.INote that the snapshot priority queue is encoded with the *lowest priority first*.Uso `results = [(id, Approve)]` will approve `SnapshotQueue[SnapshotQueue.len() - 1]`. # Errors * `BadOrigin` - unless a GC voting majority executes this function.!* `CannotSkipPip` - a given PIP has already been skipped too many times. * `SnapshotResultTooLarge` - on len(results) > len(snapshot_queue).p* `SnapshotIdMismatch` - if:$ ```text ∃ (i ∈ 0..SnapshotQueue.len()). results[i].0 ≠ SnapshotQueue[SnapshotQueue.len() - i].id ``` This is protects against clearing queue while GC is voting.Texecute_scheduled_pipidmPipIdInternal dispatchable that handles execution of a PIP.Pexpire_scheduled_pip did(IdentityIdidmPipIdInternal dispatchable that handles expiration of a PIP. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.m,pallet_pips8SnapshotResult ApproveRejectSkip@pallet_portfolioCallT,@create_portfolioname4PortfolioNameCreates a portfolio with the given `name`.@delete_portfolio numHMoves fungigle an non-fungible tokens from one portfolio of an identity to another portfolio of the sameidentity. Must be called by the custodian of the sender.Funds from deleted portfolios can also be recovered via this method.A short memo can be added to to each token amount moved. # Errorsi* `PortfolioDoesNotExist` if one or both of the portfolios reference an invalid portfolio.Q* `destination_is_same_portfolio` if both sender and receiver portfolio are the same* `DifferentIdentityPortfolios` if the sender and receiver portfolios belong to different identitiesI* `UnauthorizedCustodian` if the caller is not the custodian of the from portfolioA* `InsufficientPortfolioBalance` if the sender does not have enough free balanceM* `NoDuplicateAssetsAllowed` the same ticker can't be repeated in the items vector.U* `InvalidTransferNFTNotOwned` if the caller is trying to move an NFT he doesn't own.1* `InvalidTransferNFTIsLocked` if the caller is trying to move a locked NFT.4# Permissions,* PortfolioTpre_approve_portfoliotickerTicker0portfolio_id,PortfolioId$Pre-approves the receivement of an asset to a portfolio.,# Arguments* `origin` - the secondary key of the sender.* `ticker` - the [`Ticker`] that will be exempt from affirmation.U* `portfolio_id` - the [`PortfolioId`] that can receive `ticker` without affirmation.4# Permissions,* Portfoliotremove_portfolio_pre_approvaltickerTicker0portfolio_id,PortfolioId$Removes the pre approval of an asset to a portfolio.,# Arguments* `origin` - the secondary key of the sender.* `ticker` - the [`Ticker`] that will be exempt from affirmation.U* `portfolio_id` - the [`PortfolioId`] that can receive `ticker` without affirmation.4# Permissions,* Portfolioallow_identity_to_create_portfolios@trusted_identity(IdentityIdAdds an identity that will be allowed to create and take custody of a portfolio under the caller's identity.,# Arguments* `trusted_identity` - the [`IdentityId`] that will be allowed to call `create_custody_portfolio`.revoke_create_portfolios_permission identity(IdentityId Removes permission of an identity to create and take custody of a portfolio under the caller's identity.,# Arguments* `identity` - the [`IdentityId`] that will have the permissions to call `create_custody_portfolio` revoked.`create_custody_portfolioHportfolio_owner_id(IdentityId8portfolio_name4PortfolioName Creates a portfolio under the `portfolio_owner_id` identity and transfers its custody to the caller's identity.,# Arguments1* `portfolio_owner_id` - the [`IdentityId`] that will own the new portfolio.* `portfolio_name` - the [`PortfolioName`] of the new portfolio. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module. Lpolymesh_primitives$portfolioFund,descriptionLpallet_protocol_feeCallTHchange_coefficient,coefficient PosRatioChanges the fee coefficient for the root origin. # Errors* `BadOrigin` - Only root allowed.> priorityHschedule::Prioritycall|Box<::RuntimeCall>pAnonymously schedule a task.cancelwhen8T::BlockNumberindex u32Cancel an anonymously scheduled task.8schedule_namedid TaskNamewhen8T::BlockNumber8maybe_periodicOption> priorityHschedule::Prioritycall|Box<::RuntimeCall>XSchedule a named task.0cancel_namedid TaskNamexCancel a named scheduled task.8schedule_afterafter8T::BlockNumber8maybe_periodicOption> priorityHschedule::Prioritycall|Box<::RuntimeCall>Anonymously schedule a task after a delay.Pschedule_named_afterid TaskNameafter8T::BlockNumber8maybe_periodicOption> priorityHschedule::Prioritycall|Box<::RuntimeCall>Schedule a named task after a delay.%Contains one variant per dispatchable that can be called by an extrinsic.OptionTNoneSomeDpallet_settlementCallTL0create_venue details0VenueDetailssignersDVec typ$VenueTypeXRegisters a new venue.* `details` - Extra details about a venue=* `signers` - Array of signers that are allowed to sign receipts for this venue* `typ` - Type of venue being createdPupdate_venue_detailsidVenueIddetails0VenueDetails\Edit a venue's details.* `id` specifies the ID of the venue to edit.* `details` specifies the updated venue details.Dupdate_venue_typeidVenueId typ$VenueTypePEdit a venue's type.* `id` specifies the ID of the venue to edit.* `type` specifies the new type of the venue.Paffirm_with_receipts id4InstructionId>(portfolios@Vec$Affirms an instruction using receipts for offchain transfers.,# Arguments* `id` - the [`InstructionId`] of the instruction being affirmed.* `receipt_details` - a vector of [`ReceiptDetails`], which contain the details about the offchain transfer.* `portfolios` - a vector of [`PortfolioId`] under the caller's control and intended for affirmation.4# Permissions,* PortfolioLset_venue_filteringtickerTickerenabled)bool Enables or disabled venue filtering for a token.,# Arguments* `ticker` - Ticker of the token in question.* `enabled` - Boolean that decides if the filtering should be enabled.4# Permissions* Asset0allow_venuestickerTickervenues0Vec Allows additional venues to create instructions involving an asset.* `ticker` - Ticker of the token in question.}* `venues` - Array of venues that are allowed to create instructions for the token in question.4# Permissions* AssetiRevokes permission given to venues for creating instructions involving a particular asset.* `ticker` - Ticker of the token in question.* `venues` - Array of venues that are no longer allowed to create instructions for the token in question.4# Permissions* AssetPupdate_venue_signers idVenueIdsignersDVec,add_signers)bool\Edit a venue's signers.* `id` specifies the ID of the venue to edit.* `signers` specifies the signers to add/remove.* `add_signers` specifies the update type add/remove of venue where add is true and remove is false.hexecute_manual_instructionid4InstructionId$portfolioLOptionHfungible_transfers u328nfts_transfers u32Hoffchain_transfers u320weight_limit8Option4Manually executes an instruction.,# Arguments* `id`: The [`InstructionId`] of the instruction to be executed.* `portfolio`: One of the caller's [`PortfolioId`] which is also a counter patry in the instruction.aIf None, the caller must be the venue creator or a counter party in a [`Leg::OffChain`].* `fungible_transfers`: The number of fungible legs in the instruction.1* `nfts_transfers`: The number of nfts being transferred in the instruction.* `offchain_transfers`: The number of offchain legs in the instruction.* `weight_limit`: An optional maximum [`Weight`] value to be charged for executing the instruction.qIf the `weight_limit` is less than the required amount, the instruction will fail execution.MNote: calling the rpc method `get_execute_instruction_info` returns an instance of [`ExecuteInstructionInfo`], which contains the count parameters.(trade_dateDOption(value_dateDOptionlegs Vec@instruction_memo0Option 4\Adds a new instruction.,# Arguments* `venue_id` - ID of the venue this instruction belongs to.* `settlement_type` - Defines if the instruction should be settled in the next block, after receiving all affirmationsor waiting till a specific block.Q* `trade_date` - Optional date from which people can interact with this instruction.m* `value_date` - Optional date after which the instruction should be settled (not enforced)* `legs` - Legs included in this instruction.* `memo` - Memo field for this instruction. # Weight`950_000_000 + 1_000_000 * legs.len()`hadd_and_affirm_instruction venue_idVenueId(trade_dateDOption(value_dateDOptionlegs Vec(portfolios@Vec@instruction_memo0Option 8Adds and affirms a new instruction.,# Arguments* `venue_id` - ID of the venue this instruction belongs to.* `settlement_type` - Defines if the instruction should be settled in the next block, after receiving all affirmationsor waiting till a specific block.Q* `trade_date` - Optional date from which people can interact with this instruction.m* `value_date` - Optional date after which the instruction should be settled (not enforced)* `legs` - Legs included in this instruction.m* `portfolios` - Portfolios that the sender controls and wants to use in this affirmations.* `instruction_memo` - Memo field for this instruction.4# Permissions,* PortfolioHaffirm_instructionid4InstructionId(portfolios@Vec Provide affirmation to an existing instruction.,# Arguments* `id` - the [`InstructionId`] of the instruction being affirmed.* `portfolios` - a vector of [`PortfolioId`] under the caller's control and intended for affirmation.4# Permissions,* PortfolioPwithdraw_affirmationid4InstructionId(portfolios@Vec Withdraw an affirmation for a given instruction.,# ArgumentsM* `id` - the [`InstructionId`] of the instruction getting an affirmation withdrawn.* `portfolios` - a vector of [`PortfolioId`] under the caller's control and intended for affirmation withdrawal.4# Permissions,* PortfolioHreject_instructionid4InstructionId$portfolio,PortfolioId Rejects an existing instruction.,# Arguments* `id` - the [`InstructionId`] of the instruction being rejected.a* `portfolio` - the [`PortfolioId`] that belongs to the instruction and is rejecting it.4# Permissions,* Portfoliotexecute_scheduled_instructionid4InstructionId0weight_limit WeightRoot callable extrinsic, used as an internal call to execute a scheduled settlement instruction.|affirm_with_receipts_with_countid4InstructionId>(portfolios@Vec@number_of_assets`Option0Affirms an instruction using receipts for offchain transfers.,# Arguments* `id` - the [`InstructionId`] of the instruction being affirmed.* `receipt_details` - a vector of [`ReceiptDetails`], which contain the details about the offchain transfer.* `portfolios` - a vector of [`PortfolioId`] under the caller's control and intended for affirmation.* `number_of_assets` - an optional [`AffirmationCount`] that will be used for a precise fee estimation before executing the extrinsic.Note: calling the rpc method `get_affirmation_count` returns an instance of [`AffirmationCount`].4# Permissions,* Portfoliotaffirm_instruction_with_count id4InstructionId(portfolios@Vec@number_of_assets`Option,Provide affirmation to an existing instruction.,# Arguments* `id` - the [`InstructionId`] of the instruction being affirmed.* `portfolios` - a vector of [`PortfolioId`] under the caller's control and intended for affirmation.* `number_of_assets` - an optional [`AffirmationCount`] that will be used for a precise fee estimation before executing the extrinsic.Note: calling the rpc method `get_affirmation_count` returns an instance of [`AffirmationCount`].4# Permissions,* Portfoliotreject_instruction_with_count id4InstructionId$portfolio,PortfolioId@number_of_assetsHOption,Rejects an existing instruction.,# Arguments* `id` - the [`InstructionId`] of the instruction being rejected.a* `portfolio` - the [`PortfolioId`] that belongs to the instruction and is rejecting it.* `number_of_assets` - an optional [`AssetCount`] that will be used for a precise fee estimation before executing the extrinsic.5Note: calling the rpc method `get_execute_instruction_info` returns an instance of [`ExecuteInstructionInfo`], which contain the asset count.4# Permissions,* Portfolio|withdraw_affirmation_with_count id4InstructionId(portfolios@Vec@number_of_assets`Option,Withdraw an affirmation for a given instruction.,# ArgumentsM* `id` - the [`InstructionId`] of the instruction getting an affirmation withdrawn.* `portfolios` - a vector of [`PortfolioId`] under the caller's control and intended for affirmation withdrawal.* `number_of_assets` - an optional [`AffirmationCount`] that will be used for a precise fee estimation before executing the extrinsic.Note: calling the rpc method `get_affirmation_count` returns an instance of [`AffirmationCount`].4# Permissions,* Portfolio LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module. Lpolymesh_primitives(settlement8ReceiptDetails$AccountIdDOffChainSignature uid( u648instruction_id4InstructionIdleg_idLegIdsigner$AccountId$signatureDOffChainSignature metadata\Option(sp_runtime8MultiSignature Ed25519=Hed25519::SignatureSr25519mHsr25519::SignatureEcdsa@ecdsa::Signature sp_coreecdsa$Signature [u8; 65]AOptionTNoneSome Lpolymesh_primitives(settlement@AffirmationCount Hsender_asset_count(AssetCountPreceiver_asset_count(AssetCount8offchain_count u32 Lpolymesh_primitives(settlement(AssetCount  fungible u320non_fungible u32$off_chain u32OptionTNoneSomeDpallet_statisticsCallTXset_active_asset_statsasset(AssetScope(stat_typesHBTreeSet8Set/unset entities exempt from an asset's transfer compliance rules.,# ArgumentsQ- `origin` - a signer that has permissions to act as an agent of `exempt_key.asset`.- `is_exempt` - enable/disable exemption for `entities`.- `exempt_key` - the asset and stat type to exempt the `entities` from.- `entities` - the entities to set/unset the exemption for. # Errors!- `UnauthorizedAgent` if `origin` is not agent-permissioned for `asset`.4# Permissions- Agent- Asset LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module. BTreeSetT   BTreeSetT!  BTreeSetT95  BTreeSetT5(pallet_stoCallTDcreate_fundraiser(Hoffering_portfolio,PortfolioId8offering_assetTickerDraising_portfolio,PortfolioId4raising_assetTickertiers8Vec venue_idVenueIdstartDOption endDOptionHminimum_investmentBalancereceiptOption>0\Invest in a fundraiser.A* `investment_portfolio` - Portfolio that `offering_asset` will be deposited in.* `funding_portfolio` - Portfolio that will fund the investment.* `offering_asset` - Asset to invest in.* `id` - ID of the fundraiser to invest in.* `purchase_amount` - Amount of `offering_asset` to purchase.* `max_price` - Maximum price to pay per unit of `offering_asset`, If `None`there are no constraints on price.i* `receipt` - Off-chain receipt to use instead of on-chain balance in `funding_portfolio`.4# Permissions,* PortfolioDfreeze_fundraiser8offering_assetTickeridI0FundraiserIdPFreeze a fundraiser.* `offering_asset` - Asset to freeze.* `id` - ID of the fundraiser to freeze.4# Permissions* AssetLunfreeze_fundraiser8offering_assetTickeridI0FundraiserIdXUnfreeze a fundraiser.* `offering_asset` - Asset to unfreeze.* `id` - ID of the fundraiser to unfreeze.4# Permissions* Asset`modify_fundraiser_window8offering_assetTickeridI0FundraiserIdstart($T::Moment endDOption$Modify the time window a fundraiser is active* `offering_asset` - Asset to modify.* `id` - ID of the fundraiser to modify.* `start` - New start of the fundraiser.* `end` - New end of the fundraiser to modify.4# Permissions* Assetstop8offering_assetTickeridI0FundraiserIdHStop a fundraiser.* `offering_asset` - Asset to stop.* `id` - ID of the fundraiser to stop.4# Permissions* Asset LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.(pallet_sto$PriceTiertotalBalancepriceBalanceOptionTNoneSome!>>QIt transfers balances from treasury to each of beneficiaries and the specific amountDfor each of them.# Error* `BadOrigin`: Only root can execute transaction.]* `InsufficientBalance`: If treasury balances is not enough to cover all beneficiaries.%* `InvalidIdentity`: If one of the beneficiaries has an invalid identity.4reimbursementamount0BalanceOf It transfers the specific `amount` from `origin` account into treasury.IOnly accounts which are associated to an identity can make a donation to treasury. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.%))Lpolymesh_primitives,BeneficiaryBalanceid(IdentityIdamountBalance- 8pallet_utilitypalletCallT(batchcalls1|Vec<::RuntimeCall>H|Send a batch of dispatch calls.May be called from any origin except `None`.]- `calls`: The calls to be dispatched from the same origin. The number of call must not9 exceed the constant: `batched_calls_limit` (available in constant metadata).UIf origin is root then the calls are dispatched without checking origin filter. (Thisincludes bypassing `frame_system::Config::BaseCallFilter`).4## Complexity- O(C) where C is the number of calls to be batched.UThis will return `Ok` in all circumstances. To determine the success of the batch, an1event is deposited. If a call failed and the batch was interrupted, then theU`BatchInterrupted` event is deposited, along with the number of successful calls madeMand the error of the failed call. If all were successful, then the `BatchCompleted`Levent is deposited. relay_tx target0T::AccountId$signaturePT::OffChainSignaturecall5UniqueCall<::RuntimeCall>4Relay a call for a target from an originQRelaying in this context refers to the ability of origin to make a call on behalf oftarget.hFees are charged to origin0# Parameters- `target`: Account to be relayed- `signature`: Signature from target authorizing the relay- `call`: Call to be relayed on behalf of target@POLYMESH: added.$batch_allcalls1|Vec<::RuntimeCall>4Send a batch of dispatch calls and atomically execute them.!The whole transaction will rollback and fail if any of the calls failed.May be called from any origin except `None`.]- `calls`: The calls to be dispatched from the same origin. The number of call must not9 exceed the constant: `batched_calls_limit` (available in constant metadata).UIf origin is root then the calls are dispatched without checking origin filter. (Thisincludes bypassing `frame_system::Config::BaseCallFilter`).4## Complexity- O(C) where C is the number of calls to be batched.,dispatch_as$as_origin9TBoxcall|Box<::RuntimeCall>Dispatches a function call with a provided origin.The dispatch origin for this call must be _Root_.4## Complexity- O(1).,force_batchcalls1|Vec<::RuntimeCall>4|Send a batch of dispatch calls.Unlike `batch`, it allows errors and won't interrupt.May be called from any origin except `None`.]- `calls`: The calls to be dispatched from the same origin. The number of call must not9 exceed the constant: `batched_calls_limit` (available in constant metadata).MIf origin is root then the calls are dispatch without checking origin filter. (Thisincludes bypassing `frame_system::Config::BaseCallFilter`).4## Complexity- O(C) where C is the number of calls to be batched.,with_weightcall|Box<::RuntimeCall>weight WeightDispatch a function call with a specified weight.-This function does not check the weight of the call, and instead allows theRoot origin to specify the weight of the call.The dispatch origin for this call must be _Root_.$batch_oldcalls1|Vec<::RuntimeCall>PDispatch multiple calls from the sender's origin.This will execute until the first one fails and then stop.May be called from root or a signed origin.0# Parameters- `calls`: The calls to be dispatched from the same origin. # Weight- The sum of the weights of the `calls`.0- One event.This will return `Ok` in all circumstances except an unsigned origin. To determine the success of the batch, an1event is deposited. If a call failed and the batch was interrupted, then thea`BatchInterruptedOld` event is deposited, along with the number of successful calls madeYand the error of the failed call. If all were successful, then the `BatchCompletedOld`Levent is deposited.POLYMESH: Renamed from `batch` and deprecated.0batch_atomiccalls1|Vec<::RuntimeCall>TDispatch multiple calls from the sender's origin.This will execute all calls, in order, stopping at the first failure,in which case the state changes are rolled back.1On failure, an event `BatchInterruptedOld(failure_idx, error)` is deposited.May be called from root or a signed origin.0# Parameters- `calls`: The calls to be dispatched from the same origin. # Weight- The sum of the weights of the `calls`.0- One event.This will return `Ok` in all circumstances except an unsigned origin.To determine the success of the batch, an event is deposited.If any call failed, then `BatchInterruptedOld` is deposited.!If all were successful, then the `BatchCompletedOld` event is deposited.TPOLYMESH: deprecated.@batch_optimisticcalls1|Vec<::RuntimeCall>\Dispatch multiple calls from the sender's origin.This will execute all calls, in order, irrespective of failures. Any failures will be available in a `BatchOptimisticFailed` event.May be called from root or a signed origin.0# Parameters- `calls`: The calls to be dispatched from the same origin. # Weight- The sum of the weights of the `calls`.0- One event.This will return `Ok` in all circumstances except an unsigned origin.To determine the success of the batch, an event is deposited.If any call failed, then `BatchOptimisticFailed` is deposited,with a vector of event counts for each call as well as a vector(of errors.!If all were successful, then the `BatchCompletedOld` event is deposited.TPOLYMESH: deprecated.4as_derivativeindex] u16call|Box<::RuntimeCall> Send a call through an indexed pseudonym of the sender.UFilter from origin are passed along. The call will be dispatched with an origin whichuse the same filter as the origin of this call.The dispatch origin for this call must be _Signed_.%Contains one variant per dispatchable that can be called by an extrinsic.158pallet_utility(UniqueCallCnonce(HAuthorizationNoncecallBox9 `polymesh_runtime_developruntime0OriginCallersystem=tframe_system::OriginDPolymeshCommitteeApallet_committee::Origin HTechnicalCommitteeEpallet_committee::Origin @UpgradeCommitteeIpallet_committee::Origin VoidMself::sp_api_hidden_includes_construct_runtime::hidden_include::Void= 4frame_support dispatch$RawOrigin$AccountId RootSigned$AccountIdNoneA@pallet_committee$RawOrigin$AccountIdI= EndorsedE@pallet_committee$RawOrigin$AccountIdIY EndorsedI@pallet_committee$RawOrigin$AccountIdIi EndorsedMsp_coreVoidQ,pallet_baseCallT LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.UXpallet_external_agentsCallT 0create_grouptickerTickerpermsPExtrinsicPermissionsHCreates a custom agent group (AG) for the given `ticker`.The AG will have the permissions as given by `perms`.)This new AG is then assigned `id = AGIdSequence::get() + 1` as its `AGId`,9which you can use as `AgentGroup::Custom(id)` when adding agents for `ticker`.,# Arguments- `ticker` to add the custom group for.- `perms` that the new AG will have. # Errors9- `UnauthorizedAgent` if `origin` was not authorized as an agent to call this.!- `TooLong` if `perms` had some string or list length that was too long.%- `CounterOverflow` if `AGIdSequence::get() + 1` would exceed `u32::MAX`.4# Permissions* Asset* AgentTset_group_permissions tickerTickerid%AGIdpermsPExtrinsicPermissionsUtility extrinsic to batch `create_group` and `add_auth`.4# Permissions* Asset* Agentxcreate_and_change_custom_group tickerTickerpermsPExtrinsicPermissionsagent(IdentityIdUUtility extrinsic to batch `create_group` and `change_group` for custom groups only.4# Permissions* Asset* Agent LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.Y8pallet_relayerCallT8set_paying_key user_key0T::AccountId,polyx_limitBalance Creates an authorization to allow `user_key` to accept the caller (`origin == paying_key`) as their subsidiser.,# Arguments- `user_key` the user key to subsidise.- `polyx_limit` the initial POLYX limit for this subsidy. # Errors1- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic.Daccept_paying_keyauth_id( u648Accepts a `paying_key` authorization.,# Arguments- `auth_id` the authorization id to accept a `paying_key`. # ErrorsE- `AuthorizationError::Invalid` if `auth_id` does not exist for the given caller.-- `AuthorizationError::Expired` if `auth_id` the authorization has expired.m- `AuthorizationError::BadType` if `auth_id` was not a `AddRelayerPayingKey` authorization.- `NotAuthorizedForUserKey` if `origin` is not authorized to accept the authorization for the `user_key`.- `NotAuthorizedForPayingKey` if the authorization was created an identity different from the `paying_key`'s identity.1- `UserKeyCddMissing` if the `user_key` is not attached to a CDD'd identity.A- `PayingKeyCddMissing` if the `paying_key` is not attached to a CDD'd identity.1- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic.Dremove_paying_key user_key0T::AccountId(paying_key0T::AccountId,Removes the `paying_key` from a `user_key`.,# Arguments- `user_key` the user key to remove the subsidy from. - `paying_key` the paying key that was subsidising the `user_key`. # Errors- `NotAuthorizedForUserKey` if `origin` is not authorized to remove the subsidy for the `user_key`.- `NoPayingKey` if the `user_key` doesn't have a `paying_key`.1- `NotPayingKey` if the `paying_key` doesn't match the current `paying_key`.1- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic.Hupdate_polyx_limit user_key0T::AccountId,polyx_limitBalance(Updates the available POLYX for a `user_key`.,# Arguments- `user_key` the user key of the subsidy to update the available POLYX.5- `polyx_limit` the amount of POLYX available for subsidising the `user_key`. # Errors- `NoPayingKey` if the `user_key` doesn't have a `paying_key`.- `NotPayingKey` if `origin` doesn't match the current `paying_key`.1- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic.Pincrease_polyx_limit user_key0T::AccountIdamountBalance,Increase the available POLYX for a `user_key`.,# Arguments- `user_key` the user key of the subsidy to update the available POLYX. - `amount` the amount of POLYX to add to the subsidy of `user_key`. # Errors- `NoPayingKey` if the `user_key` doesn't have a `paying_key`.- `NotPayingKey` if `origin` doesn't match the current `paying_key`.1- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic.=- `Overlow` if the subsidy's remaining POLYX would have overflowed `u128::MAX`.Pdecrease_polyx_limit user_key0T::AccountIdamountBalance,Decrease the available POLYX for a `user_key`.,# Arguments- `user_key` the user key of the subsidy to update the available POLYX.!- `amount` the amount of POLYX to remove from the subsidy of `user_key`. # Errors- `NoPayingKey` if the `user_key` doesn't have a `paying_key`.- `NotPayingKey` if `origin` doesn't match the current `paying_key`.1- `UnauthorizedCaller` if `origin` is not authorized to call this extrinsic. - `Overlow` if the subsidy has less then `amount` POLYX remaining. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.] @pallet_contractspalletCallT$value0BalanceOf$gas_limita$OldWeightTstorage_deposit_limitiOption< as codec::HasCompact>::Type>data0VecDeprecated version if [`Self::call`] for use in an in-storage `Call`.instantiate_with_code_old_weightvalue0BalanceOf$gas_limita$OldWeightTstorage_deposit_limitiOption< as codec::HasCompact>::Type>code0Vecdata0Vecsalt0VecYDeprecated version if [`Self::instantiate_with_code`] for use in an in-storage `Call`.Xinstantiate_old_weightvalue0BalanceOf$gas_limita$OldWeightTstorage_deposit_limitiOption< as codec::HasCompact>::Type>$code_hash,,CodeHashdata0Vecsalt0Vec1Deprecated version if [`Self::instantiate`] for use in an in-storage `Call`.,upload_code code0VecTstorage_deposit_limitiOption< as codec::HasCompact>::Type>,determinismm,DeterminismPUpload new `code` without instantiating a contract from it.!If the code does not already exist a deposit is reserved from the callerEand unreserved only when [`Self::remove_code`] is called. The size of the reservedepends on the instrumented size of the the supplied `code`.1If the code already exists in storage it will still return `Ok` and upgradesthe in storage version to the current[`InstructionWeights::version`](InstructionWeights).U- `determinism`: If this is set to any other value but [`Determinism::Deterministic`]E then the only way to use this code is to delegate call into it from an offchain execution. Set to [`Determinism::Deterministic`] if in doubt.# NoteYAnyone can instantiate a contract from any uploaded code and thus prevent its removal.ATo avoid this situation a constructor could employ access control so that it can9only be instantiated by permissioned entities. The same is true when uploadingthrough [`Self::instantiate_with_code`].,remove_code$code_hash,,CodeHash5Remove the code stored under `code_hash` and refund the deposit to its owner.EA code can only be removed by its original uploader (its owner) and only if it isdnot used by any contract. set_codedestuPAccountIdLookupOf$code_hash,,CodeHash( Privileged function that changes the code of an existing contract.EThis takes care of updating refcounts and all other necessary operations. Returnsan error if either the `code_hash` or `dest` do not exist.# Note1This does **not** change the address of the contract in question. This means=that the contract address is no longer derived from its code hash after callingHthis dispatchable.calldestuPAccountIdLookupOfvalue0BalanceOf$gas_limit WeightTstorage_deposit_limitiOption< as codec::HasCompact>::Type>data0Vec@Makes a call to an account, optionally transferring some balance.0# Parameters* `dest`: Address of the contract to call.* `value`: The balance to transfer from the `origin` to `dest`.* `gas_limit`: The gas limit enforced when executing the constructor.U* `storage_deposit_limit`: The maximum amount of balance that can be charged from the caller to pay for the storage consumed.* `data`: The input data to pass to the contract.%* If the account is a smart-contract account, the associated code will beexecuted and any value will be transferred.* If the account is a regular account, any value will be transferred.E* If no account exists and the call value is not less than `existential_deposit`,a regular account will be created and any value will be transferred.Tinstantiate_with_codevalue0BalanceOf$gas_limit WeightTstorage_deposit_limitiOption< as codec::HasCompact>::Type>code0Vecdata0Vecsalt0Vech1Instantiates a new contract from the supplied `code` optionally transferring4some balance.!This dispatchable has the same effect as calling [`Self::upload_code`] +=[`Self::instantiate`]. Bundling them together provides efficiency gains. Pleasealso check the documentation of [`Self::upload_code`].0# ParametersM* `value`: The balance to transfer from the `origin` to the newly created contract.* `gas_limit`: The gas limit enforced when executing the constructor.U* `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved from the caller to pay for the storage consumed.* `code`: The contract code to deploy in raw bytes.* `data`: The input data to pass to the contract constructor.1* `salt`: Used for the address derivation. See [`Pallet::contract_address`].Instantiation is executed as follows:Y- The supplied `code` is instrumented, deployed, and a `code_hash` is created for that code.Y- If the `code_hash` already exists on the chain the underlying `code` will be shared.I- The destination address is computed based on the sender, code_hash and the salt.- The smart-contract account is created at the computed address.- The `value` is transferred to the new account.A- The `deploy` function is executed in the context of the newly-created account.,instantiatevalue0BalanceOf$gas_limit WeightTstorage_deposit_limitiOption< as codec::HasCompact>::Type>$code_hash,,CodeHashdata0Vecsalt0VecInstantiates a contract from a previously deployed wasm binary.5This function is identical to [`Self::instantiate_with_code`] but without theIcode deployment step. Instead, the `code_hash` of an on-chain deployed wasm binaryDmust be supplied.%Contains one variant per dispatchable that can be called by an extrinsic.aee(sp_weights$OldWeight( u64iOptionTNoneSomem @pallet_contractswasm,Determinism4DeterministicHAllowIndeterminismqHpolymesh_contractsCallTlinstantiate_with_code_perms$endowmentBalance$gas_limit WeightTstorage_deposit_limit1code0Vecdata0Vecsalt0Vecperms,Permissions`-Instantiates a smart contract defining it with the given `code` and `salt`.The contract will be attached as a secondary key,with `perms` as its permissions, to `origin`'s identity.The contract is transferred `endowment` amount of POLYX.This is distinct from the `gas_limit`,which controls how much gas the deployment code may at most consume.,# Arguments- `endowment` amount of POLYX to transfer to the contract.U- `gas_limit` for how much gas the `deploy` code in the contract may at most consume.Q- `storage_deposit_limit` The maximum amount of balance that can be charged/reserved from the caller to pay for the storage consumed.- `code` with the WASM binary defining the smart contract.- `data` The input data to pass to the contract constructor.- `salt` used for contract address derivation.! By varying this, the same `code` can be used under the same identity.- `perms` that the new secondary key will have. # Errorse- All the errors in `pallet_contracts::Call::instantiate_with_code` can also happen here.- CDD/Permissions are checked, unlike in `pallet_contracts`.!- Errors that arise when adding a new secondary key can also occur here.linstantiate_with_hash_perms$endowmentBalance$gas_limit WeightTstorage_deposit_limit1$code_hash,,CodeHashdata0Vecsalt0Vecperms,Permissionsl9Instantiates a smart contract defining using the given `code_hash` and `salt`.|Unlike `instantiate_with_code`,ithis assumes that at least one contract with the same WASM code has already been uploaded.The contract will be attached as a secondary key,with `perms` as its permissions, to `origin`'s identity.The contract is transferred `endowment` amount of POLYX.This is distinct from the `gas_limit`,which controls how much gas the deployment code may at most consume.,# Arguments- `endowment` amount of POLYX to transfer to the contract.U- `gas_limit` for how much gas the `deploy` code in the contract may at most consume.Q- `storage_deposit_limit` The maximum amount of balance that can be charged/reserved from the caller to pay for the storage consumed.- `code_hash` of an already uploaded WASM binary.- `data` The input data to pass to the contract constructor.- `salt` used for contract address derivation.! By varying this, the same `code` can be used under the same identity.- `perms` that the new secondary key will have. # Errors=- All the errors in `pallet_contracts::Call::instantiate` can also happen here.- CDD/Permissions are checked, unlike in `pallet_contracts`.!- Errors that arise when adding a new secondary key can also occur here.tupdate_call_runtime_whitelistupdatesu`Vec<(ExtrinsicId, bool)>tUpdate CallRuntime whitelist.,# Arguments # Errorsinstantiate_with_code_as_primary_key$endowmentBalance$gas_limit WeightTstorage_deposit_limit1code0Vecdata0Vecsalt0Vec0-Instantiates a smart contract defining it with the given `code` and `salt`.}The contract will be attached as a primary key of a newly created child identity of the caller.,# Arguments- `endowment`: Amount of POLYX to transfer to the contract.Y- `gas_limit`: For how much gas the `deploy` code in the contract may at most consume.- `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved from the caller to pay for the storage consumed.- `code`: The WASM binary defining the smart contract.- `data`: The input data to pass to the contract constructor.- `salt`: Used for contract address derivation. By varying this, the same `code` can be used under the same identity.instantiate_with_hash_as_primary_key$endowmentBalance$gas_limit WeightTstorage_deposit_limit1$code_hash,,CodeHashdata0Vecsalt0Vec89Instantiates a smart contract defining using the given `code_hash` and `salt`.Unlike `instantiate_with_code`, this assumes that at least one contract with the same WASM code has already been uploaded.}The contract will be attached as a primary key of a newly created child identity of the caller.,# Arguments- `endowment`: amount of POLYX to transfer to the contract.Y- `gas_limit`: for how much gas the `deploy` code in the contract may at most consume.- `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved from the caller to pay for the storage consumed.- `code_hash`: of an already uploaded WASM binary.- `data`: The input data to pass to the contract constructor.- `salt`: used for contract address derivation. By varying this, the same `code` can be used under the same identity.,upgrade_api api Api0next_upgrade}8NextUpgrade LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.uyy)}Hpolymesh_contracts,NextUpgradeT4chain_version0ChainVersion api_hash8ApiCodeHashHpolymesh_contracts,ApiCodeHashThash,,CodeHash tRegister a preimage on-chain.UIf the preimage was previously requested, no fees or deposits are taken for providingUthe preimage. Otherwise, a deposit is taken proportional to the size of the preimage.8portfolio_kind4PortfolioKindDpIssues an NFT to the caller.,# Arguments5* `origin` - is a signer that has permissions to act as an agent of `ticker`.* `ticker` - the ticker of the NFT collection.E* `nft_metadata_attributes` - all mandatory metadata keys and values for the NFT.- `portfolio_kind` - the portfolio that will receive the minted nft.$## Errors}- `CollectionNotFound` - if the collection associated to the given ticker has not been created.- `InvalidMetadataAttribute` - if the number of attributes is not equal to the number set in the collection or attempting to set a value for a key not definied in the collection.E- `DuplicateMetadataKey` - if a duplicate metadata keys has been passed as input.4# Permissions* Asset,* Portfolio(redeem_nft tickerTickernft_idNFTId8portfolio_kind4PortfolioKind} Lpolymesh_primitives nftPNFTMetadataAttribute key}@AssetMetadataKeyvalueIHAssetMetadataValueDpallet_test_utilsCallT0register_did8secondary_keys|Vec>(MGenerates a new `IdentityID` for the caller, and issues a self-generated CDD claim.The caller account will be the primary key of that identity.]For each account of `secondary_keys`, a new `JoinIdentity` authorization is created, soAeach of them will need to accept it before become part of this new `IdentityID`. # Errors- `AlreadyLinked` if the caller account or if any of the given `secondary_keys` has already linked to an `IdentityID`M- `SecondaryKeysContainPrimaryKey` if `secondary_keys` contains the caller account.- `DidAlreadyExists` if auto-generated DID already exists.Tmock_cdd_register_did8target_account0T::AccountId=Registers a new Identity for the `target_account` and issues a CDD claim to it.$# FailureI- `origin` has to be an active CDD provider. Inactive CDD providers cannot add newclaims.]- `target_account` (primary key of the new Identity) can be linked to just one and only4one identity.(get_my_didEmits an event with caller's identity.(get_cdd_ofof0T::AccountIdEmits an event with caller's identity and CDD status. LDispatchable calls.UEach variant of this enum maps to a dispatchable function from the associated module.@pallet_committee4PolymeshVotes,BlockNumberindex4ProposalIndexayes5nays5expiryI\MaybeBlock@pallet_committeeVersionu8@pallet_committeeErrorTI$4DuplicateVoteDuplicate votes are not allowed.(NotAMemberA DID isn't part of the committee.The DID may either be a caller or some other context.8NoSuchProposalDNo such proposal.(auto_close)bool Lpolymesh_primitives multisig8ProposalStatusInvalid>   8pallet_staking,UnlockChunkBalancevalueBalance era EraIndex 8pallet_staking,Nominations$AccountId targets8Vec0submitted_in EraIndex(suppressed)bool 8pallet_staking4ActiveEraInfoindex EraIndexstart,Option  8pallet_staking  BTreeMapKV  ! 8pallet_stakingForcing(NotForcing ForceNew$ForceNone,ForceAlways% ) ) 8pallet_staking8UnappliedSlash$AccountIdBalance$validator$AccountId ownBalanceothers- dVec<(AccountId, Balance)>$reporters8VecpayoutBalance- 1 1 5 9 8pallet_staking slashing4SlashingSpans(span_index$SpanIndex(last_start EraIndexHlast_nonzero_slash EraIndexpriori4Vec= 8pallet_staking slashing(SpanRecordBalanceslashedBalance paid_outBalanceA E E )I 8pallet_staking8ElectionResult$AccountIdBalance $exposuresVec<(AccountId, Exposure)>compute= 2/3 of `validator_count`.0BondTooSmall&When the amount to be bonded is less than `MinimumBond` BadState'9Internal state has become somehow corrupted and the operation cannot continue.8TooManyTargets(Too many nomination targets supplied.$BadTarget)=A nomination target was supplied that was blocked or otherwise not a validator.pInvalidValidatorUnbondAmount*Validator should have minimum 50k POLYX bonded.tError for the staking module.a (sp_stakingoffence8OffenceDetails Reporter Offender offender Offender$reporters4Vece 0i m m q u 0u sp_corecrypto$KeyTypeId@[u8; 4]y 8pallet_sessionpalletErrorT0InvalidProof`Invalid ownership proof.\NoAssociatedValidatorIdNo associated validator ID for account.4DuplicatedKeydRegistered duplicate key.NoKeysNo keys are associated with this account.$NoAccountKey setting account is not live, so it's impossible to associate keys.tError for the session pallet.} 8pallet_grandpa,StoredStateNLive0PendingPause0scheduled_atNdelayNPaused4PendingResume0scheduled_atNdelayN 8pallet_grandpaLStoredPendingChangeNLimit0scheduled_atNdelayN@next_authorities lBoundedAuthorityListforced=$Option Lbounded_collections@weak_bounded_vec8WeakBoundedVecTSVec 8pallet_grandpapalletErrorT,PauseFailedAttempt to signal GRANDPA pause when the authority set isn't live(either paused or already pending pause).0ResumeFailedAttempt to signal GRANDPA resume when the authority set isn't paused(either live or already pending resume).4ChangePendingAttempt to signal GRANDPA change with one already pending.TooSoonCannot signal forced change so soon after last.`InvalidKeyOwnershipProof1A key ownership proof provided as part of an equivocation report is invalid.`InvalidEquivocationProof1An equivocation proof provided as part of an equivocation report is invalid.XDuplicateOffenceReportA given equivocation report is valid but already previously reported. Custom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/) of this pallet. Lbounded_collections@weak_bounded_vec8WeakBoundedVecTS Vec  4frame_supporttraitsmisc4WrapperOpaqueT  T @pallet_im_onlinedBoundedOpaqueNetworkState LPeerIdEncodingLimitXMultiAddrEncodingLimit8AddressesLimitpeer_id WeakBoundedVecHexternal_addresses -WeakBoundedVec, AddressesLimit > Lbounded_collections@weak_bounded_vec8WeakBoundedVecTS0Vec Lbounded_collections@weak_bounded_vec8WeakBoundedVecT S Vec  @pallet_im_onlinepalletErrorT(InvalidKey`Non existent public key.LDuplicatedHeartbeatTDuplicated heartbeat. Custom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/) of this pallet. Lbounded_collections,bounded_vec(BoundedVecT,SVec ,pallet_sudoErrorT,RequireSudo|Sender must be the Sudo accountdError for the Sudo module 0pallet_assetHTickerRegistrationU(owner(IdentityIdexpiry$Option 0pallet_asset`TickerRegistrationConfigU(Dmax_ticker_lengthu8Lregistration_length$Option 0pallet_asset4SecurityToken0total_supplyBalance$owner_did(IdentityId$divisible)bool(asset_type$AssetType    0pallet_assetXAssetOwnershipRelation NotOwned,TickerOwned(AssetOwned  } Y ] 0pallet_assetVersionu8 0pallet_assetErrorT0UnauthorizedlThe user is not authorized.LAssetAlreadyCreatedThe token has already been created.4TickerTooLongThe ticker length is over the limit.TTickerNotAlphanumericThe ticker has non-alphanumeric parts.\TickerAlreadyRegisteredThe ticker is already registered to someone else.TTotalSupplyAboveLimitThe total supply is above the limit.,NoSuchAsset8No such token.4AlreadyFrozenpThe token is already frozen.(NotAnOwnerNot an owner of the token on Ethereum.  BTreeMapKV(  (  0pallet_asset(checkpointVersionu8 0pallet_asset(checkpointErrorT8NoSuchScheduleA checkpoint schedule does not exist for the asset.PScheduleNotRemovableA checkpoint schedule is not removable as `ref_count(schedule_id) > 0`.hSchedulesOverMaxComplexity)The new schedule would put the ticker over the maximum complexity allowed.! dpallet_compliance_managerVersionu8% dpallet_compliance_managerErrorT0Unauthorized\User is not authorized.,DidNotExist8Did not exist.xInvalidComplianceRequirementIdCompliance requirement id doesn't exist.IncorrectOperationOnTrustedIssuerIssuer exist but trying to add it again.|DuplicateComplianceRequirementsThere are duplicate compliance requirements.|ComplianceRequirementTooComplexThe worst case scenario of the compliance requirement is too complex.LWeightLimitExceededThe maximum weight limit for executing the function was exceeded.) - `pallet_corporate_actionsVersionu81 `pallet_corporate_actionsErrorT,8DetailsTooLongThe `details` of a CA exceeded the max allowed length.,descriptionqXOption(created_at,BlockNumberLtransaction_version u32expiryI\MaybeBlockE mI ,pallet_pips,DepositInfo$AccountIdowner$AccountIdamountBalanceM ,pallet_pips Pip Proposal$AccountId idmPipId proposal Proposal proposereLProposerQ ,pallet_pips0VotingResult(ayes_count u32(ayes_stakeBalance(nays_count u32(nays_stakeBalanceU ,pallet_pipsVote)boolBalanceY ,pallet_pips@SnapshotMetadata,BlockNumber$AccountId (created_at,BlockNumbermade_by$AccountIdid(SnapshotId] ,pallet_pipsVersionu8a ,pallet_pipsErrorTHRescheduleNotByReleaseCoordinator1Only the GC release coordinator is allowed to reschedule proposal execution.@NotFromCommunityThe given dispatchable call is not valid for this proposal.The proposal must be from the community, but isn't.8NotByCommitteeThe given dispatchable call is not valid for this proposal.The proposal must be by community, but isn't.DTooManyActivePips)The current number of active (pending | scheduled) PIPs exceed the maximumand the proposal is not by a committee.@IncorrectDepositProposer specifies an incorrect depositLInsufficientDepositProposer can't afford to lock minimum deposit8NoSuchProposalpThe proposal does not exist.LNotACommitteeMemberNot part of governance committee.`InvalidFutureBlockNumberWhen a block number is less than current block number.TNumberOfVotesExceeded |When number of votes overflows.hStakeAmountOfVotesExceeded When stake amount of a vote overflows.XMissingCurrentIdentity LMissing current DIDXIncorrectProposalState Proposal is not in the correct state4CannotSkipPip When enacting snapshot results, an unskippable PIP was skipped.XSnapshotResultTooLargeTried to enact results for the snapshot queue overflowing its length.HSnapshotIdMismatch]Tried to enact result for PIP with id different from that at the position in the queue.pScheduledProposalDoesntExistExecution of a scheduled proposal failed because it is missing.lProposalNotInScheduledStateA proposal that is not in a scheduled state cannot be executed.e i m q u y y }  @pallet_portfolioVersionu8 @pallet_portfolioErrorTDTPortfolioDoesNotExistpThe portfolio doesn't exist.pInsufficientPortfolioBalanceInsufficient balance for a transaction.hDestinationIsSamePortfolioThe source and destination portfolios should be different.dPortfolioNameAlreadyInUse1The portfolio couldn't be renamed because the chosen name is already in use.SecondaryKeyNotAuthorizedForPortfolioThe secondary key is not authorized to access the portfolio(s).TUnauthorizedCustodianThe porfolio's custody is with someone other than the caller.`InsufficientTokensLockedCan not unlock more tokens than what are lockedDPortfolioNotEmptyThe portfolio still has some asset balance leftlDifferentIdentityPortfoliosThe portfolios belong to different identities`NoDuplicateAssetsAllowed Duplicate asset among the items.XNFTNotFoundInPortfolio The NFT does not exist in the portfolio.@NFTAlreadyLocked hThe NFT is already locked.0NFTNotLocked xThe NFT has never been locked.hInvalidTransferNFTNotOwned Only owned NFTs can be moved between portfolios.hInvalidTransferNFTIsLockedLocked NFTs can not be moved between portfolios.4EmptyTransferTrying to move an amount of zero assets.\MissingOwnersPermission9The caller doesn't have permission to create portfolios on the owner's behalf. Lpallet_protocol_feeErrorT hInsufficientAccountBalanceInsufficient account balance to pay the fee.LUnHandledImbalancesNot able to handled the imbalanceshInsufficientSubsidyBalanceInsufficient subsidy balance to pay the fee. Lbounded_collections,bounded_vec(BoundedVecT S Vec OptionT NoneSome  @pallet_scheduler$ScheduledNameCall ,BlockNumber4PalletsOrigin9$AccountId maybe_id0Option priorityHschedule::Prioritycall Call8maybe_periodicOption>origin94PalletsOrigin 4frame_supporttraits$preimagesBoundedT Legacyhash,HashInline 4BoundedInlineLookuphash,Hash len u32 Lbounded_collections,bounded_vec(BoundedVecTS0Vec  @pallet_schedulerpalletErrorT@FailedToScheduledFailed to schedule a call NotFound|Cannot find the scheduled call.\TargetBlockNumberInPastGiven target block number is in the past.HRescheduleNoChangeReschedule failed because it does not change scheduled time.NamedAttempt to use a non-named function on a named task. Custom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/) of this pallet. Lpolymesh_primitives(settlementVenuecreator(IdentityId(venue_type$VenueType    Lpolymesh_primitives(settlement,InstructionMoment(,BlockNumber8instruction_id4InstructionId venue_idVenueId(created_at8Option(trade_date8Option(value_date8Option  Lpolymesh_primitives(settlement$LegStatus$AccountId @PendingTokenLock@ExecutionPendingPExecutionToBeSkipped$AccountId( u64  Lpolymesh_primitives(settlementDAffirmationStatus UnknownPending Affirmed   Dpallet_settlementVersionu8 Lpolymesh_primitives(settlementDInstructionStatus,BlockNumberUnknownPendingFailedSuccess,BlockNumber Rejected,BlockNumber Dpallet_settlementErrorT0InvalidVenueTVenue does not exist.0UnauthorizedSender does not have required permissions.XInstructionNotAffirmedInstruction has not been affirmed.HUnauthorizedSignerSigner is not authorized by the venue.TReceiptAlreadyClaimedTReceipt already used.DUnauthorizedVenueVenue does not have required permissions.\InstructionDatesInvalidtInstruction has invalid datespInstructionSettleBlockPassedInstruction's target settle block reached.@InvalidSignaturexOffchain signature is invalid.HSameSenderReceiver Sender and receiver are the same.DSettleOnPastBlock aThe provided settlement block number is in the past and cannot be used by the scheduler.lUnexpectedAffirmationStatus EThe current instruction affirmation status does not support the requested action.@FailedToSchedule Scheduling of an instruction fails.HUnknownInstruction tInstruction status is unknownLSignerAlreadyExistsSigner is already added to venue.HSignerDoesNotExisttSigner is not added to venue.(ZeroAmountInstruction leg amount can't be zero.InstructionSettleBlockNotReachedInstruction settlement block has not yet been reached.DCallerIsNotAPartyThe caller is not a party of this instruction.\MaxNumberOfNFTsExceededThe number of nfts being transferred in the instruction was exceeded.NumberOfTransferredNFTsUnderestimatedThe given number of nfts being transferred was underestimated.`ReceiptForInvalidLegTypeOff-chain receipts can only be used for off-chain leg type.LWeightLimitExceededThe maximum weight limit for executing the function was exceeded.MaxNumberOfFungibleAssetsExceededThe maximum number of fungible assets was exceeded.MaxNumberOfOffChainAssetsExceededThe maximum number of off-chain assets was exceeded.NumberOfFungibleTransfersUnderestimatedThe given number of fungible transfers was underestimated.\UnexpectedOFFChainAssetTicker could not be found on chain.dOffChainAssetCantBeLockedOff-Chain assets cannot be locked.NumberOfOffChainTransfersUnderestimatedThe given number of off-chain transfers was underestimated.,LegNotFoundNo leg with the given id was foundpInputWeightIsLessThanMinimumThe input weight is less than the minimum required.lMaxNumberOfReceiptsExceededThe maximum number of receipts was exceeded.NotAllAffirmationsHaveBeenReceived There are parties who have not affirmed the instruction.InvalidInstructionStatusForExecution!Only [`InstructionStatus::Pending`] or [`InstructionStatus::Failed`] instructions can be executed.FailedToReleaseLockOrTransferAssets"The instruction failed to release asset locks or transfer the assets.LDuplicateReceiptUid#No duplicate uid are allowed for different receipts.tReceiptInstructionIdMissmatch$The instruction id in all receipts must match the extrinsic parameter.dMultipleReceiptsForOneLeg%Multiple receipts for the same leg are not allowed.LUnexpectedLegStatus&pAn invalid has been reached.pNumberOfVenueSignersExceeded'The maximum number of venue signers was exceeded.Errors for the Settlement module. Lbounded_collectionsDbounded_btree_set  % Lpolymesh_primitives(statistics(Stat1stKeyasset(AssetScope$stat_type  StatType Lpolymesh_primitivesLtransfer_compliance\AssetTransferComplianceSpaused)bool0requirements BoundedBTreeSet Lbounded_collectionsDbounded_btree_set = Dpallet_statisticsVersionu8 Dpallet_statisticsErrorT current nonce, the call(s) before the current failed to execute8POLYMESH error\UnableToDeriveAccountIdDecoding derivative account Id failed. Custom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/) of this pallet.  ,pallet_baseErrorTTooLongExceeded a generic length limit.The limit could be for any sort of lists of things, including a string.) @pallet_contractswasm@PrefabWasmModuleTlinstruction_weights_version u32initial u32maximum u32code- DRelaxedCodeVec,determinismm,Determinism- Lbounded_collections@weak_bounded_vec8WeakBoundedVecTS0Vec1 @pallet_contractswasm$OwnerInfoT owner8AccountIdOfdeposit0BalanceOf refcount$ u645 @pallet_contractsstorage0ContractInfoT trie_id TrieId$code_hash,,CodeHash4storage_bytes u324storage_items u32Pstorage_byte_deposit0BalanceOfPstorage_item_deposit0BalanceOfPstorage_base_deposit0BalanceOf9 @pallet_contractsstorage8DepositAccountT8AccountIdOf= Lbounded_collections,bounded_vec(BoundedVecTA SE VecA @pallet_contractsstorageM @pallet_contracts scheduleLimits$0event_topics u32globals u32locals u32(parameters u320memory_pages u32(table_size u324br_table_size u32,subject_len u32,payload_len u32Q @pallet_contracts scheduleHInstructionWeightsTversion u32 fallback u32 i64const u32i64load u32 i64store u32select u32r#if u32br u32br_if u32 br_table u32Hbr_table_per_entry u32call u324call_indirect u32\call_indirect_per_param u328call_per_local u32$local_get u32$local_set u32$local_tee u32(global_get u32(global_set u328memory_current u32,memory_grow u32i64clz u32i64ctz u32$i64popcnt u32i64eqz u324i64extendsi32 u324i64extendui32 u32(i32wrapi64 u32i64eq u32i64ne u32i64lts u32i64ltu u32i64gts u32i64gtu u32i64les u32i64leu u32i64ges u32i64geu u32i64add u32i64sub u32i64mul u32i64divs u32i64divu u32i64rems u32i64remu u32i64and u32i64or u32i64xor u32i64shl u32i64shrs u32i64shru u32i64rotl u32i64rotr u32U @pallet_contracts schedule4HostFnWeightsTcaller Weight,is_contract Weight$code_hash Weight4own_code_hash Weight@caller_is_origin Weightaddress Weight gas_left Weightbalance WeightDvalue_transferred Weightcount u32 len=,Optioni OptionT1 NoneSome1 m ,q Lbounded_collections,bounded_vec(BoundedVecTS0Vecu Mortal63? Mortal64@ Mortal65A Mortal66B Mortal67C Mortal68D Mortal69E Mortal70F Mortal71G Mortal72H Mortal73I Mortal74J Mortal75K Mortal76L Mortal77M Mortal78N Mortal79O Mortal80P Mortal81Q Mortal82R Mortal83S Mortal84T Mortal85U Mortal86V Mortal87W Mortal88X Mortal89Y Mortal90Z Mortal91[ Mortal92\ Mortal93] Mortal94^ Mortal95_ Mortal96` Mortal97a Mortal98b Mortal99c$Mortal100d$Mortal101e$Mortal102f$Mortal103g$Mortal104h$Mortal105i$Mortal106j$Mortal107k$Mortal108l$Mortal109m$Mortal110n$Mortal111o$Mortal112p$Mortal113q$Mortal114r$Mortal115s$Mortal116t$Mortal117u$Mortal118v$Mortal119w$Mortal120x$Mortal121y$Mortal122z$Mortal123{$Mortal124|$Mortal125}$Mortal126~$Mortal127$Mortal128$Mortal129$Mortal130$Mortal131$Mortal132$Mortal133$Mortal134$Mortal135$Mortal136$Mortal137$Mortal138$Mortal139$Mortal140$Mortal141$Mortal142$Mortal143$Mortal144$Mortal145$Mortal146$Mortal147$Mortal148$Mortal149$Mortal150$Mortal151$Mortal152$Mortal153$Mortal154$Mortal155$Mortal156$Mortal157$Mortal158$Mortal159$Mortal160$Mortal161$Mortal162$Mortal163$Mortal164$Mortal165$Mortal166$Mortal167$Mortal168$Mortal169$Mortal170$Mortal171$Mortal172$Mortal173$Mortal174$Mortal175$Mortal176$Mortal177$Mortal178$Mortal179$Mortal180$Mortal181$Mortal182$Mortal183$Mortal184$Mortal185$Mortal186$Mortal187$Mortal188$Mortal189$Mortal190$Mortal191$Mortal192$Mortal193$Mortal194$Mortal195$Mortal196$Mortal197$Mortal198$Mortal199$Mortal200$Mortal201$Mortal202$Mortal203$Mortal204$Mortal205$Mortal206$Mortal207$Mortal208$Mortal209$Mortal210$Mortal211$Mortal212$Mortal213$Mortal214$Mortal215$Mortal216$Mortal217$Mortal218$Mortal219$Mortal220$Mortal221$Mortal222$Mortal223$Mortal224$Mortal225$Mortal226$Mortal227$Mortal228$Mortal229$Mortal230$Mortal231$Mortal232$Mortal233$Mortal234$Mortal235$Mortal236$Mortal237$Mortal238$Mortal239$Mortal240$Mortal241$Mortal242$Mortal243$Mortal244$Mortal245$Mortal246$Mortal247$Mortal248$Mortal249$Mortal250$Mortal251$Mortal252$Mortal253$Mortal254$Mortal255 0frame_system(extensions,check_nonce(CheckNonceT T::Index Lpolymesh_extensions0check_weight,CheckWeightT CW 0frame_system(extensions0check_weight,CheckWeightT hpallet_transaction_payment`ChargeTransactionPaymentT0BalanceOf Hpallet_permissionsDStoreCallMetadataT `polymesh_runtime_developruntimeRuntimeSystemSystem@Account A The full account information for a particular account ID.8ExtrinsicCount Total extrinsics count for the current block.,BlockWeight The current weight for the block.@AllExtrinsicsLenA Total length (in bytes) for all extrinsics put together, for the current block.$BlockHash, Map of block numbers to block hashes.4ExtrinsicData0= Extrinsics data for the current block (maps an extrinsic's index to its data).Number  The current block number being processed. Set by `execute_block`.(ParentHash,p Hash of the previous block.Digest4 Digest of the current block, also part of the block header.EventsD Events deposited for the current block. NOTE: The item is unbound and should therefore never be read on chain. It could otherwise inflate the PoV size of a block.- Events have a large in-memory size. Box the events to not go out-of-memory just in case someone still reads them from within the runtime.(EventCount The number of events in the `Events` list.,EventTopics,(% Mapping between a topic (represented by T::Hash) and a vector of indexes of events in the `>` list.Q All topic vectors have deterministic storage locations depending on the topic. ThisE allows light-clients to leverage the changes trie storage tracking mechanism and in case of changes fetch the list of events of interest.M The value has the type `(T::BlockNumber, EventIndex)` because if we used only justM the `EventIndex` then in case if the topic has the same contents on the next block no notification will be triggered thus the event might be lost.HLastRuntimeUpgradeU Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened.TUpgradedToU32RefCount)M True if we have upgraded so that `type RefCount` is `u32`. False (default) if not.`UpgradedToTripleRefCount)] True if we have upgraded so that AccountInfo contains three types of `RefCount`. FalseH (default) if not.8ExecutionPhase The execution phase of the block.P0BlockWeights J K.fffffff >] fffffff JRjt@ Block & extrinsics weights: base values and limits.,BlockLength0x The maximum length of a block (in bytes).8BlockHashCountU Maximum number of block number to block hash mappings to keep (oldest pruned first). DbWeight@   The weight of runtime database operations the runtime can invoke.Version0polymesh_dev0polymesh_devh[Tjh`7|@:ҼЏ'?ELŬ^%#hzJO[?hk"?7ȻPիRpY<r)X{p2BGs )}򎀀k<\xYZL^aSPA;F Get the chain's current version.(SS58Prefix]* The designated SS58 prefix of this chain.9 This replaces the "ss58Format" property declared in the chain spec. Reason is1 that the runtime should know about the prefix in order to make use of it asp an identifier of the chain.BabeBabeD(EpochIndex( T Current epoch index.,Authoritiesl Current epoch authorities.,GenesisSlot  The slot at which the first epoch actually started. This is 0 until the first block of the chain.,CurrentSlot T Current slot number.(Randomness( The epoch randomness for the *current* epoch., # Security This MUST NOT be used for gambling, as it can be influenced by a malicious validator in the short term. It MAY be used in many cryptographic protocols, however, so long as one remembers that this (like everything else on-chain) it is public. For example, it can be used where a number is needed that cannot have been chosen by an  adversary, for purposes such as public-coin zero-knowledge proofs.`PendingEpochConfigChangea Pending epoch configuration change that will be applied when the next epoch is enacted.8NextRandomness\ Next epoch randomness. identity info,IsDidFrozen) DID -> bool that indicates if secondary keys are frozen.(CurrentDid It stores the current identity for current transaction.0CurrentPayer It stores the current gas fee payer for the current transactionClaims (Target ID, claim type) (issuer,scope) -> Associated claims0CustomClaims0 CustomClaimTypeId -> String constantLCustomClaimsInverse0 String constant -> CustomClaimTypeIdTCustomClaimIdSequencex The next `CustomClaimTypeId`.(KeyRecordsE Map from AccountId to `KeyRecord` that holds the key's identity and permissions.DidKeys) A reverse double map to allow finding all keys for an identity.DMultiPurposeNonce(  Nonce to ensure unique actions. starts from 1.hOffChainAuthorizationNonce(  Authorization nonce per Identity. Initially is 0.8Authorizations All authorizations that an identity/key hasLAuthorizationsGiven}M All authorizations that an identity has given. (Authorizer, auth_id -> authorized)pCddAuthForPrimaryKeyRotation)] A config flag that, if set, instructs an authorization from a CDD provider in order to change the primary key of an identity.8StorageVersionD Storage version.HAccountKeyRefCount(  How many "strong" references to the account key. Strong references will block a key from leaving it's identity. Pallets using "strong" references to account keys: * Relayer: For `user_key` and `paying_key`$ParentDid Parent identity if the DID is a child Identity.0InitialPOLYX@LCddServiceProviders8Instance2Group 4ActiveMembers5 The current "active" membership, stored as an ordered Vec. bool. proposal id => Option.,ProposalIds( A mapping of proposals to their IDs.Votes) Individual multisig signer votes. (multisig, proposal_id) -> signer => vote.HMultiSigToIdentity Maps a multisig account to its identity.8ProposalDetailL | Details of a multisig proposal multisig -> proposal id => ProposalDetails.TLostCreatorPrivileges)) Tracks creators who are no longer allowed to call via_creator extrinsics.HTransactionVersion The last transaction version, used for `on_runtime_upgrade`.8StorageVersionD Storage version.uBridgeBridge((Controller A The multisig account of the bridge controller. The genesis signers accept theirE authorizations and are able to get their proposals delivered. The bridge creator transfers some POLY to their identity. current_era - history_depth` must be0 guaranteed.8ValidatorCount The ideal number of staking participants.TMinimumValidatorCountA Minimum number of staking participants before emergency conditions are imposed.4Invulnerables Y Any validators that may never be slashed or forcibly kicked. It's a Vec since they'reM easy to initialize and the performance hit is minimal (we expect no more than four invulnerables) and restricted to testnets.Bonded Map from all locked "stash" accounts to the controller account.LedgerE Map from all (unlocked) "controller" accounts to the info regarding the staking.Payee) Where the reward payment should be made. Keyed by stash.(Validators-E The map from (wannabe) validator stash key to the preferences of that validator.(Nominators e The map from nominator stash key to the set of stash keys of all validators to nominate.(CurrentEra\ The current era index.e This is the latest planned era, depending on how the Session pallet queues the validator set, it might be active or not.$ActiveEra  The active era information, it holds index and start.Y The active era is the era being currently rewarded. Validator set of this era must be equal to [`SessionInterface::validators`].TErasStartSessionIndex1 The session index at which the era start for the last `HISTORY_DEPTH` eras.a Note: This tracks the starting session (i.e. session index when era start being active) for the eras in `[CurrentEra - HISTORY_DEPTH, CurrentEra]`.,ErasStakers  x Exposure of validator at era.a This is keyed first by the era index to allow bulk deletion and then the stash account. Is it removed after `HISTORY_DEPTH` eras.A If stakers hasn't been set or has been removed then empty exposure is returned.HErasStakersClipped  , Clipped Exposure of validator at era.Y This is similar to [`ErasStakers`] but number of nominators exposed is reduced to the `T::MaxNominatorRewardedPerValidator` biggest stakers. (Note: the field `total` and `own` of the exposure remains unchanged). This is used to limit the i/o cost for the nominator payout.] This is keyed fist by the era index to allow bulk deletion and then the stash account. Is it removed after `HISTORY_DEPTH` eras.A If stakers hasn't been set or has been removed then empty exposure is returned.HErasValidatorPrefs - Similar to `ErasStakers`, this holds the preferences of validators.a This is keyed first by the era index to allow bulk deletion and then the stash account. Is it removed after `HISTORY_DEPTH` eras.LErasValidatorReward  The total validator era payout for the last `HISTORY_DEPTH` eras.! Eras that haven't finished yet or has been removed doesn't have reward.@ErasRewardPoints  Rewards for the last `HISTORY_DEPTH` eras.% If reward hasn't been set or has been removed then 0 reward is returned.8ErasTotalStake@ The total amount staked for the last `HISTORY_DEPTH` eras. If total hasn't been set or has been removed then 0 stake is returned. ForceEra! T Mode of era forcing.LSlashRewardFraction The percentage of the slash that is distributed to reporters. The rest of the slashed value is handled by the `Slash`.LCanceledSlashPayout@ The amount of currency given to reporters of a slash event which was canceled by extraordinary circumstances (e.g. governance).@UnappliedSlashes%  All unapplied slashes that are queued for later.(BondedEras% A mapping from still-bonded eras to the first session index of that era. Must contains information for eras for the range: `[active_era - bounding_duration; active_era]`LValidatorSlashInEra 5 E All slashing events on validators, mapped by era to the highest slash proportionp and slash value of the era.LNominatorSlashInEra a All slashing events on nominators, mapped by era to the highest slash value of the era.4SlashingSpans9  Slashing spans for stash accounts.$SpanSlash= = Records information about the maximum slash of a stash within a slashing span, as well as how much reward has been paid out.XEarliestUnappliedSlash The earliest era for which we have a pending, unapplied slash.LOffendingValidatorsA $i Indices of validators that have offended in the active era and whether they are currently( disabled.i This value should be a superset of disabled validators since not all offences lead to theq validator being disabled (if there was no slash). This is needed to track the percentage ofI validators that have offended in the current era, ensuring a new era is forced ifu `OffendingValidatorsThreshold` is reached. The vec is always kept sorted so that we can findq whether a given validator has previously offended using binary search. It gets cleared when8 the era ends.HSnapshotValidatorse Snapshot of validators at the beginning of the current election window. This should only have a value when [`EraElectionStatus`] == `ElectionStatus::Open(_)`.HSnapshotNominatorse Snapshot of nominators at the beginning of the current election window. This should only have a value when [`EraElectionStatus`] == `ElectionStatus::Open(_)`.4QueuedElectedI  e The next validator set. At the end of an era, if this is available (potentially from thea result of an offchain worker), it is immediately used. Otherwise, the on-chain election4 is executed.,QueuedScore The score of the current [`QueuedElected`].DEraElectionStatusM I Flag to control the execution of the offchain election. When `Open(_)`, we acceptl solutions to be submitted.TIsCurrentSessionFinal)M True if the current **planned** session is final. Note that this does not take eraX forcing into account.PPermissionedIdentityQ  Entities that are allowed to run operator/validator nodes.XValidatorCommissionCap Every validator has commission that should be in the range [0, Cap].PMinimumBondThreshold@ The minimum amount with which a validator can bond.HSlashingAllowedFor8StorageVersionU  True if network has been upgraded to this version.| Storage version of the pallet. This is set to v6.0.1 for new networks.XPolymeshStorageVersionY h Polymesh Storage version.%,8SessionsPerErap Number of sessions per era.`, this is because values ofi different types are not supported at the moment so we are doing the manual serialization.SessionSession(Validators| The current set of validators.0CurrentIndexx Current index of the session.4QueuedChanged)9 True if the underlying economic identities or weighting behind the validators has changed in the queued validator set.(QueuedKeysi = The queued keys for the next session. When the next session begins, these keys will be used to determine the validator's session keys.HDisabledValidatorsi Indices of disabled validators.= The vec is always kept sorted so that we can find whether a given validator is= disabled using binary search. It gets cleared when `on_session_ending` returnsd a new set of identities. NextKeys The next session keys for a validator. KeyOwnerq   The owner of a key. The key is the `KeyTypeId` + the encoded key.y HAuthorityDiscoveryGrandpaGrandpaState}  State of the current authority set.4PendingChange  Pending change: (signaled at, scheduled change).(NextForced next block number where we can force a change.Stalled `true` if we are currently stalled.0CurrentSetId( ] The number of changes (both in terms of keys and underlying economic responsibilities) in the "set" of Grandpa validators from genesis.0SetIdSession((Y A mapping from grandpa set ID to the index of the *most recent* session for which itsh members were responsible.E This is only used for validating equivocation proofs. An equivocation proof mustM contains a key-ownership proof for a given session, therefore we need a way to tieE together sessions and GRANDPA set ids, i.e. we need to validate that a validatorA was the owner of a given key on a given session, and what the active set ID wasT during that session. TWOX-NOTE: `SetId` is not under user control.%8MaxAuthorities\ Max Authorities in useXMaxSetIdSessionEntries( 9 The maximum number of entries to keep in the set id to session index mapping.1 Since the `SetIdSession` map is only used for validating equivocations this) value should relate to the bonding duration of whatever staking system is5 being used (if any). If equivocation handling is not enabled then this value4 can be zero. (Historical ImOnline ImOnline8HeartbeatAfter, The block number after which it's ok to send heartbeats in the current$ session.% At the beginning of each session we set this to a value that should fall5 roughly in the middle of the session duration. The idea is to first wait for the validators to produce a block in the current session, so that the heartbeat later on will not be necessary.9 This value will only be used as a fallback if we fail to get a proper session- progress estimate from `NextSessionRotation`, as those estimates should be more accurate then the value we calculate for `HeartbeatAfter`.Keys  The current set of keys that may issue a heartbeat.HReceivedHeartbeats = For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to `WrapperOpaque`.8AuthoredBlocks  For each session index, we keep a mapping of `ValidatorId` to the number of blocks authored by the given authority.Q@UnsignedPriority(  A configuration for base priority of unsigned transactions. This is exposed so that it can be tuned for particular runtime, when multiple pallets send unsigned transactions. `RandomnessCollectiveFlip`RandomnessCollectiveFlip8RandomMaterial  a Series of block headers from the last 81 blocks that acts as random seed material. Thisa is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` ofD the oldest hash.SudoSudo Key The `AccountId` of the sudo key.q AssetAssetpTickers t Ticker registration details.| (ticker) -> TickerRegistration0TickerConfig p Ticker registration config. (ticker) -> TickerRegistrationConfigTokens  Details of the token corresponding to the token ticker. (ticker) -> SecurityToken details [returns SecurityToken struct](AssetNames Asset name of the token corresponding to the token ticker.` (ticker) -> `AssetName`$BalanceOf @ The total asset ticker balance per identity.d (ticker, DID) -> Balance,Identifiers A map of a ticker name and asset identifiers.PCustomTypeIdSequence The next `AssetType::Custom` ID in the sequence. Numbers in the sequence start from 1 rather than 0.,CustomTypes0 Maps custom asset type ids to the registered string contents.HCustomTypesInverse0a Inverse map of `CustomTypes`, from registered string contents to custom asset type ids.0FundingRound The name of the current funding round.` ticker -> funding roundPIssuedInFundingRound @ The total balances of tokens issued in all recorded funding rounds. (ticker, funding round) -> balanceFrozen) The set of frozen assets implemented as a membership map.< ticker -> bool\AssetOwnershipRelations  Tickers and token owned by a user (user, ticker) -> AssetOwnership8AssetDocuments | Documents attached to an Assett (ticker, doc_id) -> document`AssetDocumentsIdSequence Per-ticker document ID counter.L (ticker) -> doc_idLAssetMetadataValues I| Metatdata values for an asset.dAssetMetadataValueDetails Q Details for an asset's Metadata values.lAssetMetadataLocalNameToKey ] Asset Metadata Local Name -> Key.pAssetMetadataGlobalNameToKeyYy Asset Metadata Global Name -> Key.lAssetMetadataLocalKeyToName Y Asset Metadata Local Key -> Name.pAssetMetadataGlobalKeyToNameyY Asset Metadata Global Key -> Name.\AssetMetadataLocalSpecs a Asset Metadata Local Key specs.`AssetMetadataGlobalSpecsya Asset Metadata Global Key specs.dAssetMetadataNextLocalKey] | Next Asset Metadata Local Key.hAssetMetadataNextGlobalKeyy  Next Asset Metadata Global Key.pTickersExemptFromAffirmation)U A list of tickers that exempt all users from affirming the receivement of the asset.DPreApprovedTicker )) All tickers that don't need an affirmation to be received by an identity.8StorageVersion D Storage version.uHAssetNameMaxLengthdFundingRoundNameMaxLengthhAssetMetadataNameMaxLengthlAssetMetadataValueMaxLength tAssetMetadataTypeDefMaxLength  LCapitalDistributionLCapitalDistribution 4Distributions 5 All capital distributions, tied to their respective corporate actions (CAs).\ (CAId) => Distribution(HolderPaid ) Has an asset holder been paid yet? (CAId, DID) -> Was DID paid in the CAId?8StorageVersion D Storage version.} (Checkpoint(Checkpoint0,TotalSupply @ Total supply of the token at the checkpoint. (ticker, checkpointId) -> total supply at given checkpointBalance @ Balance of a DID at a checkpoint. (ticker, did, checkpoint ID) -> Balance of a DID at a checkpointPCheckpointIdSequence  Checkpoints ID generator sequence. ID of first checkpoint is 1 instead of 0.| (ticker) -> no. of checkpoints8BalanceUpdates  Checkpoints where a DID's balance was updated. (ticker, did) -> [checkpoint ID where user balance changed](Timestamps ( \ Checkpoint timestamps.  Every schedule-originated checkpoint maps its ID to its due time.! Every checkpoint manually created maps its ID to the time of recording. (ticker) -> (checkpoint ID) -> checkpoint timestampXSchedulesMaxComplexity(  The maximum complexity allowed for a ticker's schedules.HScheduleIdSequence Checkpoint schedule ID sequence for tickers.` (ticker) -> schedule IDTCachedNextCheckpoints  Cached next checkpoint for each schedule.1 This is used to quickly find the next checkpoint from a ticker's schedules.t (ticker) -> next checkpointsPScheduledCheckpoints  \ Scheduled checkpoints. (ticker, schedule ID) -> schedule checkpoints@ScheduleRefCount   How many "strong" references are there to a given `ScheduleId`? The presence of a "strong" reference, in the sense of `Rc`, entails that the referenced schedule cannot be removed. Thus, as long as `strong_ref_count(schedule_id) > 0`, `remove_schedule(schedule_id)` will error. (ticker, schedule ID) -> strong ref count8SchedulePoints  All the checkpoints a given schedule originated. (ticker, schedule ID) -> [checkpoint ID]8StorageVersion D Storage version. DComplianceManagerDComplianceManager @AssetCompliances  Asset compliance for a ticker (Ticker -> AssetCompliance)HTrustedClaimIssuer List of trusted claim issuer Ticker -> Issuer Identity8StorageVersion! D Storage version.XMaxConditionComplexity2%  target identities)TDefaultWithholdingTax  The default amount of tax to withhold ("withholding tax", WT) for this ticker when distributing dividends.5 To understand withholding tax, e.g., let's assume that you hold ACME shares. ACME now decides to distribute 100 SEK to Alice.Y Alice lives in Sweden, so Skatteverket (the Swedish tax authority) wants 30% of that.] Then those 100 * 30% are withheld from Alice, and ACME will send them to Skatteverket.h (ticker => % to withhold)DDidWithholdingTaxI The amount of tax to withhold ("withholding tax", WT) for a certain ticker x DID.m If an entry exists for a certain DID, it overrides the default in `DefaultWithholdingTax`. (ticker => [(did, % to withhold)]0CAIdSequence The next per-`Ticker` CA ID in the sequence.M The full ID is defined as a combination of `Ticker` and a number in this sequence.@CorporateActions) l All recorded CAs thus far. Only generic information is stored here.} Specific `CAKind`s, e.g., benefits and corporate ballots, may use additional on-chain storage. (ticker => local ID => the corporate action)$CADocLink% Associations from CAs to `Document`s via their IDs.\ (CAId => [DocumentId]) The `CorporateActions` map stores `Ticker => LocalId => The CA`,% so we can infer `Ticker => CAId`. Therefore, we don't need a double map.Details! Associates details in free-form text with a CA by its ID.P (CAId => CADetails)8StorageVersion- D Storage version.0MaxTargetIds(MaxDidWhts1  BallotMeta(TimeRanges- Time details of a corporate ballot associated with a CA. The timestamps denote when voting starts and stops.h (CAId) => BallotTimeRange@MotionNumChoicesA$ Stores how many choices there are in each motion.% At all times, the invariant holds that `motion_choices[idx]` is equal to1 `metas.unwrap().motions[idx].choices.len()`. That is, this is just a cache, used to avoid fetching all the motions with their associated texts. `u16` choices should be more than enough to fit real use cases. (CAId) => Number of choices in each motion. RCV) Is ranked choice voting (RCV) enabled for this ballot?e For an understanding of how RCV is handled, see note on `BallotVote`'s `fallback` field.< (CAId) => boolResults5  Stores the total vote tally on each choice.h RCV is not accounted for, as there are too many wants to interpret the graph, and because it would not be efficient. (CAId) => [current vote weights]Votes Q Stores each DID's votes in a given ballot. See the documentation of `BallotVote` for notes on semantics. (CAId) => (DID) => [vote weight] User must enter 0 vote weight if they don't want to vote for a choice.)9 ,Permissions= PipsPipsXLPruneHistoricalPips) Determines whether historical PIP data is persisted or removedXMinimumProposalDeposit@ The minimum amount to be used as a deposit for community PIP creation.XDefaultEnactmentPeriod9 Default enactment period that will be use after a proposal is accepted by GC.@PendingPipExpiryI How many blocks will it take, after a `Pending` PIP expires, assuming it has not transitioned to another `ProposalState`? deposit$ProposalsmM  Actual proposal for a given id, if it's current.` proposal id -> proposal8ProposalResultmQ  PolymeshVotes on a given proposal, if it is ongoing.h proposal id -> vote count4ProposalVotesE U  Votes per Proposal and account. Used to avoid double vote issue.| (proposal id, account) -> Vote4PipToSchedulem Maps PIPs to the block at which they will be executed, if any.$LiveQueue A live priority queue (lowest priority at index 0) of pending PIPs up to the active limit. Priority is defined by the `weight` in the `SnapshottedPip`.E Unlike `SnapshotQueue`, this queue is live, getting updated with each vote cast.- The snapshot is therefore essentially a point-in-time clone of this queue.4SnapshotQueueY The priority queue (lowest priority at index 0) of PIPs at the point of snapshotting. Priority is defined by the `weight` in the `SnapshottedPip`.  A queued PIP can be skipped. Doing so bumps the `pip_skip_count`.5 Once a (configurable) threshhold is exceeded, a PIP cannot be skipped again.0SnapshotMetaY  The metadata of the snapshot, if there is one.0PipSkipCountm The number of times a certain PIP has been skipped.5 Once a (configurable) threshhold is exceeded, a PIP cannot be skipped again.4CommitteePips All existing PIPs where the proposer is a committee.9 This list is a cache of all ids in `Proposals` with `Proposer::Committee(_)`.8ProposalStatesm}| Proposal state for a given id.t proposal id -> proposalState8StorageVersion] aa !$Portfolio$Portfolio4LNextPortfolioNumber  The next portfolio sequence number of an identity.(Portfoliose  A The set of existing portfolios with their names. If a certain pair of a DID andY portfolio number maps to `None` then such a portfolio doesn't exist. Conversely, if a5 pair maps to `Some(name)` then such a portfolio exists and is called `name`.0NameToNumberi  Inverse map of `Portfolios` used to ensure bijectivitiy, and uniqueness of names in `Portfolios`.LPortfolioAssetCount(  How many assets with non-zero balance this portfolio contains.XPortfolioAssetBalancesm @ The asset balances of portfolios.TPortfolioLockedAssetsm @ Amount of assets locked in a portfolio.- These assets show up in portfolio balance but can not be transferred away.HPortfolioCustodian The custodian of a particular portfolio. None implies that the identity owner is the custodian.LPortfoliosInCustodyq ) U Tracks all the portfolios in custody of a particular identity. Only used by the UIs. When `true` is stored as the value for a given `(did, pid)`, it means that `pid` is in custody of `did`. `false` values are never explicitly stored in the map, and are instead inferred by the absence of a key.0PortfolioNFTu ) The nft associated to the portfolio.HPortfolioLockedNFTu ) All locked nft for a given portfolio.TPreApprovedPortfoliosm )1 All portfolios that don't need to affirm the receivement of a given ticker.DAllowedCustodians} )= Custodians allowed to create and take custody of portfolios on an id's behalf.8StorageVersion D Storage version. ",ProtocolFee,ProtocolFee BaseFees@ The mapping of operation names to the base fees of those operations.,Coefficient  The fee coefficient as a positive rational (numerator, denominator). #$Scheduler$Scheduler v4 the previously unbounded identities are Blake2-256 hashed to form the v40 identities.4MaximumWeight @ nt) The maximum weight that may be scheduled per block for any dispatchables.PMaxScheduledPerBlock2 The maximum number of scheduled calls in the queue for a single block. $(Settlement(SettlementT$VenueInfo  Info about a venue. venue_id -> venueDetails Free-form text about a venue. venue_id -> `VenueDetails`` Only needed for the UI.DVenueInstructions Ep Instructions under a venue.` Only needed for the UI. venue_id -> instruction_id -> ()0VenueSigners ) Signers allowed by the venue. (venue_id, signer) -> bool(UserVenues Eq Array of venues created by an identity. Only needed for the UI. IdentityId -> Vecx Venues create by an identity.` Only needed for the UI.` identity -> venue_id ()HInstructionDetails P Details about an instruction. instruction_id -> instruction_detailsPInstructionLegStatus 1 Status of a leg under an instruction. (instruction_id, leg_id) -> LegStatusdInstructionAffirmsPending(  Number of affirmations pending before instruction is executed. instruction_id -> affirm_pending AffirmationStatus@UserAffirmations U Helps a user track their pending instructions and affirmations (only needed for UI). (counter_party, instruction_id) -> AffirmationStatus0ReceiptsUsed) Tracks redemption of receipts. (signer, receipt_uid) -> receipt_used8VenueFiltering) Tracks if a token has enabled filtering venues that can create instructions involving their token. Ticker -> filtering_enabled8VenueAllowList ) Venues that are allowed to create instructions involving a particular ticker. Only used if filtering is enabled.x (ticker, venue_id) -> allowed0VenueCounter  Number of venues in the system (It's one more than the actual number)HInstructionCounter 1 Number of instructions in the system (It's one more than the actual number)8StorageVersion D Storage version.@InstructionMemosD Instruction memoLInstructionStatuses  Instruction statuses. instruction_id -> InstructionStatus LegPOffChainAffirmations  Tracks the affirmation status for offchain legs in a instruction. [`(InstructionId, LegId)`] -> [`AffirmationStatus`]PNumberOfVenueSigners Tracks the number of signers each venue has. %(Statistics(Statistics@ActiveAssetStats  Active stats for a ticker/company. There should be a max limit on the number of active stats for a ticker/company.(AssetStats @4 Asset stats.`AssetTransferCompliances = Asset transfer compliance for a ticker (AssetScope -> AssetTransferCompliance)|TransferConditionExemptEntities ) Entities exempt from a Transfer Compliance rule.8StorageVersion l Storage migration version.@MaxStatsPerAsset tMaxTransferConditionsPerAsset & Sto Sto ,Fundraisers Q All fundraisers that are currently running. (ticker, fundraiser_id) -> Fundraiser Fundraiser nameE ' Treasury!a (UtilityUtilityNonces( X Nonce for `relay_tx`.D POLYMESH: added.-eLbatched_calls_limit* The limit on the number of batched calls. )BaseQuMaxLen *8ExternalAgents8ExternalAgents0AGIdSequence% The next per-`Ticker` AG ID in the sequence.M The full ID is defined as a combination of `Ticker` and a number in this sequence, which starts from 1, rather than 0.AgentOf E) Maps an agent (`IdentityId`) to all all `Ticker`s they belong to, if any.0GroupOfAgent !5 Maps agents (`IdentityId`) for a `Ticker` to what AG they belong to, if any.4NumFullAgents Maps a `Ticker` to the number of `Full` agents for it.@GroupPermissions ] For custom AGs of a `Ticker`, maps to what permissions an agent in that AG would have.U} +RelayerRelayer$Subsidies  The subsidy for a `user_key` if they are being subsidised, as a map `user_key` => `Subsidy`.  A key can only have one subsidy at a time. To change subsidisers a key needs to call `remove_paying_key` to remove the current subsidy, before they can accept a new subsidiser.Y! ,$Contracts$Contracts0PristineCode,% e A mapping from an original code hash to the original code, untouched by instrumentation.,CodeStorage,) e A mapping between an original code hash and instrumented wasm code, ready for execution.,OwnerInfoOf,1   A mapping between an original code hash and its owner information.Nonce( X This is a **monotonic** counter incremented on contract instantiation. This is used in order to generate unique trie ids for contracts.) The trie id of a new contract is calculated from hash(account_id, nonce).5 The nonce is required because otherwise the following sequence would lead to a possible collision of storage:h 1. Create a new contract.l 2. Terminate the contract. 3. Immediately recreate the contract with the same account_id.E This is bad because the contents of a trie are deleted lazily and there might beY storage of the old instantiation still in it when the new contract is created. PleaseY note that we can't replace the counter by the block number because the sequence aboveQ can happen in the same block. We also can't keep the account counter in memory onlyI because storage is the only way to communicate across different extrinsics in the0 same block. # Note= Do not use it to determine the number of contracts. It won't be decremented ifd a contract is destroyed.8ContractInfoOf5  The code associated with a given account. TWOX-NOTE: SAFE since `AccountId` is a secure hash.4DeletionQueue=  Evicted contracts that await child trie deletion.I Child trie deletion is a heavy operation depending on the amount of storage itemsY stored in said trie. Therefore this operation is performed lazily in `on_initialize`.]$ ScheduleI 1 @&kp1:6'Q,LʁUf+M -2+@:wK ,-*+++D>,'0_.#.*+ 0..q,W.,7.51 ,++@--!*-,&P \?~.M-.η*-.3& j<UN!Q >e^&V>bZ Q =l#>yEr,޹G*prnLO q.485;)q~.Lq 6Vvh Cost schedule and limits.HDeletionQueueDepth<  The maximum number of contracts that can be pending for deletion.= When a contract is deleted by calling `seal_terminate` it becomes inaccessibleM immediately, but the deletion of the storage items it has accumulated is performed) later. The contract is put into the deletion queue. This defines how many] contracts can be queued up at the same time. If that limit is reached `seal_terminate` will fail. The action must be retried in a later block in that case. The reasons for limiting the queue depth are:Y 1. The queue is in storage in order to be persistent between blocks. We want to limit the amount of storage that can be consumed.M 2. The queue is stored in a vector and needs to be decoded as a whole when readingE it at the end of each block. Longer queues take more weight to decode and hence limit the amount of items that can be deleted per block.LDeletionWeightLimit RjtM The maximum amount of weight that can be consumed per block for lazy trie removal.] The amount of weight that is dedicated per block to work on the deletion queue. LargerE values allow more trie keys to be deleted in each block but reduce the amount ofA weight that is left for transactions. See [`Self::DeletionQueueDepth`] for more information about the deletion queue.8DepositPerByte@` The amount of balance a caller has to pay for each byte of storage. # Note) Changing this value for an existing chain might need a storage migration.8DepositPerItem@I The amount of balance a caller has to pay for each storage item. # Note) Changing this value for an existing chain might need a storage migration.(MaxCodeLen] The maximum length of a contract code in bytes. This limit applies to the instrumentedQ version of the code. Therefore `instantiate_with_code` can fail even when supplying a wasm binary below this maximum size.Y The value should be chosen carefully taking into the account the overall memory limit your runtime has, as well as the [maximum allowed callstack] depth](#associatedtype.CallStack). Look into the `integrity_test()` for some insights.@MaxStorageKeyLen The maximum allowable length in bytes for storage keys.\UnsafeUnstableInterface)$ Make contract callable functions marked as `#[unstable]` available.= Contracts that use `#[unstable]` functions won't be able to be uploaded unlessE this is set to `true`. This is only meant for testnets and dev nodes in order tox experiment with new features.( # Warning Do **not** set to `true` on productions chains.DMaxDebugBufferLen  The maximum length of the debug buffer in bytes.Y .DPolymeshContractsDPolymeshContractsPCallRuntimeWhitelist) Whitelist of extrinsics allowed to be called from contracts.8StorageVersion] D Storage version.8ApiNextUpgrade}  Stores the chain version and code hash for the next chain upgrade.8CurrentApiHash Stores the code hash for the current api.qa / Preimage Preimage$StatusFor,e  The request status of a given hash.,PreimageForm q u 0 Nft NFT(0NumberOfNFTs (  The total number of NFTs per identity.@CollectionTicker  The collection id corresponding to each ticker.(Collectiony P All collection details for a given collection id.8CollectionKeys}  All mandatory metadata keys for a given collection.4MetadataValue IE The metadata value of an nft given its collection id, token id and metadata key.@NextCollectionId  The next available id for an NFT collection.$NextNFTId  The next available id for an NFT within a collection.@NFTsInCollection(  The total number of NFTs in a collection NFTOwnery l Tracks the owner of an NFT8StorageVersion D Storage version.dMaxNumberOfCollectionKeysPMaxNumberOfNFTsCount  1$TestUtils$TestUtils 2  @CheckSpecVersion 8CheckTxVersion 0CheckGenesis ,8CheckMortality ,(CheckNonce E,CheckWeight E`ChargeTransactionPayment EDStoreCallMetadata E