From 875977d5ded4e96f6ac55287a73bed231a631eb3 Mon Sep 17 00:00:00 2001 From: arrudagates Date: Sun, 18 Feb 2024 15:13:52 +0000 Subject: [PATCH] deploy: 6db87cb73ca8ed507e151a0839de69f961f6e46a --- help.html | 2 +- index.html | 2 +- pallet_inv4/account_derivation/index.html | 12 ++- .../trait.CoreAccountDerivation.html | 7 +- pallet_inv4/dispatch/fn.dispatch_call.html | 5 +- pallet_inv4/dispatch/index.html | 7 +- pallet_inv4/fee_handling/enum.FeeAsset.html | 13 +-- .../enum.FeeAssetNegativeImbalance.html | 13 ++- pallet_inv4/fee_handling/index.html | 8 +- .../trait.MultisigFeeHandler.html | 18 ++-- pallet_inv4/index.html | 8 +- pallet_inv4/inv4_core/index.html | 10 ++- pallet_inv4/inv4_core/type.CoreIndexOf.html | 2 +- .../inv4_core/type.CoreMetadataOf.html | 2 +- pallet_inv4/lookup/index.html | 11 ++- pallet_inv4/lookup/struct.INV4Lookup.html | 4 +- pallet_inv4/multisig/constant.MAX_SIZE.html | 2 +- pallet_inv4/multisig/index.html | 12 ++- .../multisig/struct.MultisigOperation.html | 22 ++--- .../multisig/type.BoundedCallBytes.html | 2 +- .../multisig/type.MultisigOperationOf.html | 2 +- pallet_inv4/origin/enum.INV4Origin.html | 22 ++--- pallet_inv4/origin/fn.ensure_multisig.html | 5 +- pallet_inv4/origin/index.html | 9 +- .../origin/struct.MultisigInternalOrigin.html | 33 +++---- .../pallet/constant.STORAGE_VERSION.html | 2 +- .../fn.cancel_multisig_proposal.html | 2 +- .../pallet/dispatchables/fn.create_core.html | 2 +- .../dispatchables/fn.operate_multisig.html | 2 +- .../dispatchables/fn.set_parameters.html | 2 +- .../pallet/dispatchables/fn.token_burn.html | 2 +- .../pallet/dispatchables/fn.token_mint.html | 2 +- .../dispatchables/fn.vote_multisig.html | 2 +- .../fn.withdraw_vote_multisig.html | 2 +- pallet_inv4/pallet/dispatchables/index.html | 2 +- pallet_inv4/pallet/enum.Call.html | 54 ++++++------ pallet_inv4/pallet/enum.Error.html | 10 +-- pallet_inv4/pallet/enum.Event.html | 18 ++-- pallet_inv4/pallet/index.html | 2 +- pallet_inv4/pallet/storage_types/index.html | 2 +- .../storage_types/struct.CoreByAccount.html | 2 +- .../storage_types/struct.CoreMembers.html | 2 +- .../storage_types/struct.CoreStorage.html | 2 +- .../pallet/storage_types/struct.Multisig.html | 2 +- .../storage_types/struct.NextCoreId.html | 2 +- pallet_inv4/pallet/struct.Pallet.html | 86 ++++++++++--------- pallet_inv4/pallet/trait.Config.html | 36 ++++---- pallet_inv4/pallet/type.BalanceOf.html | 2 +- pallet_inv4/pallet/type.CallOf.html | 2 +- pallet_inv4/pallet/type.CoreByAccount.html | 2 +- pallet_inv4/pallet/type.CoreInfoOf.html | 2 +- pallet_inv4/pallet/type.CoreMembers.html | 2 +- pallet_inv4/pallet/type.CoreStorage.html | 2 +- pallet_inv4/pallet/type.Module.html | 2 +- pallet_inv4/pallet/type.Multisig.html | 2 +- pallet_inv4/pallet/type.NextCoreId.html | 2 +- pallet_inv4/pallet/type.Origin.html | 2 +- pallet_inv4/pallet/warnings/index.html | 2 +- pallet_inv4/struct.INV4Lookup.html | 4 +- pallet_inv4/voting/enum.Vote.html | 24 +++--- pallet_inv4/voting/index.html | 8 +- pallet_inv4/voting/struct.Tally.html | 30 ++++--- pallet_inv4/voting/trait.CustomPolling.html | 10 +-- pallet_inv4/voting/type.Core.html | 2 +- pallet_inv4/voting/type.VoteRecord.html | 3 +- pallet_inv4/voting/type.Votes.html | 2 +- search-index.js | 2 +- settings.html | 2 +- src/pallet_inv4/account_derivation.rs.html | 52 ++++++++--- src/pallet_inv4/dispatch.rs.html | 24 +++++- src/pallet_inv4/fee_handling.rs.html | 62 +++++++++++-- src/pallet_inv4/inv4_core.rs.html | 22 ++++- src/pallet_inv4/lib.rs.html | 6 ++ src/pallet_inv4/lookup.rs.html | 32 ++++++- src/pallet_inv4/multisig.rs.html | 28 +++++- src/pallet_inv4/origin.rs.html | 30 ++++++- src/pallet_inv4/voting.rs.html | 44 ++++++++-- .../multisig/struct.MultisigOperation.js | 2 +- .../pallet_inv4/origin/enum.INV4Origin.js | 2 +- type.impl/pallet_inv4/pallet/struct.Pallet.js | 2 +- type.impl/pallet_inv4/voting/enum.Vote.js | 2 +- 81 files changed, 602 insertions(+), 286 deletions(-) diff --git a/help.html b/help.html index 729c088d..f1f64380 100644 --- a/help.html +++ b/help.html @@ -1 +1 @@ -Help

Rustdoc help

Back
\ No newline at end of file +Help

Rustdoc help

Back
\ No newline at end of file diff --git a/index.html b/index.html index 8fcbde58..4a50c34b 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Index of crates
\ No newline at end of file +Index of crates
\ No newline at end of file diff --git a/pallet_inv4/account_derivation/index.html b/pallet_inv4/account_derivation/index.html index f94b2e11..8a3785a4 100644 --- a/pallet_inv4/account_derivation/index.html +++ b/pallet_inv4/account_derivation/index.html @@ -1 +1,11 @@ -pallet_inv4::account_derivation - Rust
\ No newline at end of file +pallet_inv4::account_derivation - Rust
Expand description

Core Account Derivation.

+

Overview

+

This module defines a method for generating account addresses, and how it’s implemented within this +pallet. We use a custom derivation scheme to ensure that when a multisig is created, its AccountId +remains consistent across different parachains, promoting seamless interaction.

+

The module contains:

+
    +
  • CoreAccountDerivation trait: The interface for our derivation method.
  • +
  • Pallet implementation: The specific logic used to derive AccountIds.
  • +
+

Traits

\ No newline at end of file diff --git a/pallet_inv4/account_derivation/trait.CoreAccountDerivation.html b/pallet_inv4/account_derivation/trait.CoreAccountDerivation.html index c1104155..d8e2b24d 100644 --- a/pallet_inv4/account_derivation/trait.CoreAccountDerivation.html +++ b/pallet_inv4/account_derivation/trait.CoreAccountDerivation.html @@ -1,6 +1,9 @@ -CoreAccountDerivation in pallet_inv4::account_derivation - Rust
pub trait CoreAccountDerivation<T: Config> {
+CoreAccountDerivation in pallet_inv4::account_derivation - Rust
pub trait CoreAccountDerivation<T: Config> {
     // Required methods
     fn derive_core_account(core_id: T::CoreId) -> T::AccountId;
     fn core_location(core_id: T::CoreId) -> Junctions;
-}

Required Methods§

source

fn derive_core_account(core_id: T::CoreId) -> T::AccountId

source

fn core_location(core_id: T::CoreId) -> Junctions

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T: Config> CoreAccountDerivation<T> for Pallet<T>where +}

Expand description

Trait providing the XCM location and the derived account of a core.

+

Required Methods§

source

fn derive_core_account(core_id: T::CoreId) -> T::AccountId

Derives the core’s AccountId.

+
source

fn core_location(core_id: T::CoreId) -> Junctions

Specifies a core’s location.

+

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T: Config> CoreAccountDerivation<T> for Pallet<T>where T::AccountId: From<[u8; 32]>,

\ No newline at end of file diff --git a/pallet_inv4/dispatch/fn.dispatch_call.html b/pallet_inv4/dispatch/fn.dispatch_call.html index b78f5b6e..51123521 100644 --- a/pallet_inv4/dispatch/fn.dispatch_call.html +++ b/pallet_inv4/dispatch/fn.dispatch_call.html @@ -1,6 +1,7 @@ -dispatch_call in pallet_inv4::dispatch - Rust
pub fn dispatch_call<T: Config>(
+dispatch_call in pallet_inv4::dispatch - Rust
pub fn dispatch_call<T: Config>(
     core_id: <T as Config>::CoreId,
     fee_asset: &FeeAsset,
     call: <T as Config>::RuntimeCall
 ) -> DispatchResultWithPostInfowhere
-    T::AccountId: From<[u8; 32]>,
\ No newline at end of file + T::AccountId: From<[u8; 32]>,
Expand description

Dispatch a call executing pre/post dispatch for proper fee handling.

+
\ No newline at end of file diff --git a/pallet_inv4/dispatch/index.html b/pallet_inv4/dispatch/index.html index 9443ac94..c131b589 100644 --- a/pallet_inv4/dispatch/index.html +++ b/pallet_inv4/dispatch/index.html @@ -1 +1,6 @@ -pallet_inv4::dispatch - Rust
\ No newline at end of file +pallet_inv4::dispatch - Rust

Module pallet_inv4::dispatch

source ·
Expand description

Dispatches calls internally, charging fees to the multisig account.

+

Overview

+

This module employs a custom MultisigInternalOrigin to ensure calls originate +from the multisig account itself, automating fee payments. The dispatch_call function +includes pre and post dispatch handling for streamlined fee management within the multisig context.

+

Functions

  • Dispatch a call executing pre/post dispatch for proper fee handling.
\ No newline at end of file diff --git a/pallet_inv4/fee_handling/enum.FeeAsset.html b/pallet_inv4/fee_handling/enum.FeeAsset.html index a5729564..2f66d7db 100644 --- a/pallet_inv4/fee_handling/enum.FeeAsset.html +++ b/pallet_inv4/fee_handling/enum.FeeAsset.html @@ -1,21 +1,22 @@ -FeeAsset in pallet_inv4::fee_handling - Rust
pub enum FeeAsset {
+FeeAsset in pallet_inv4::fee_handling - Rust
pub enum FeeAsset {
     Native,
     Relay,
-}
Expand description

Asset to be used by the multisig for paying fees transaction fees.

-

Variants§

§

Native

§

Relay

Trait Implementations§

source§

impl Clone for FeeAsset

source§

fn clone(&self) -> FeeAsset

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for FeeAsset

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Decode for FeeAsset

source§

fn decode<__CodecInputEdqy: Input>( +}

Expand description

Represents the asset to be used by the multisig for paying transaction fees.

+

This enum defines the assets that can be used to pay for transaction fees.

+

Variants§

§

Native

§

Relay

Trait Implementations§

source§

impl Clone for FeeAsset

source§

fn clone(&self) -> FeeAsset

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for FeeAsset

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Decode for FeeAsset

source§

fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

Attempt to deserialise the value from input.
§

fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
§

fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

Attempt to skip the encoded value from input. Read more
§

fn encoded_fixed_size() -> Option<usize>

Returns the fixed encoded size of the type. Read more
source§

impl Encode for FeeAsset

source§

fn size_hint(&self) -> usize

If possible give a hint of expected size of the encoding. Read more
source§

fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + I: Input,

Attempt to skip the encoded value from input. Read more
§

fn encoded_fixed_size() -> Option<usize>

Returns the fixed encoded size of the type. Read more
source§

impl Encode for FeeAsset

source§

fn size_hint(&self) -> usize

If possible give a hint of expected size of the encoding. Read more
source§

fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

Convert self to a slice and append it to the destination.
§

fn encode(&self) -> Vec<u8>

Convert self to an owned vector.
§

fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

Convert self to a slice and then invoke the given closure with it.
§

fn encoded_size(&self) -> usize

Calculates the encoded size. Read more
source§

impl MaxEncodedLen for FeeAsset

source§

fn max_encoded_len() -> usize

Upper bound, in bytes, of the maximum encoded size of this item.
source§

impl PartialEq for FeeAsset

source§

fn eq(&self, other: &FeeAsset) -> bool

This method tests for self and other values to be equal, and is used + F: FnOnce(&[u8]) -> R,
Convert self to a slice and then invoke the given closure with it.
§

fn encoded_size(&self) -> usize

Calculates the encoded size. Read more
source§

impl MaxEncodedLen for FeeAsset

source§

fn max_encoded_len() -> usize

Upper bound, in bytes, of the maximum encoded size of this item.
source§

impl PartialEq for FeeAsset

source§

fn eq(&self, other: &FeeAsset) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
source§

impl TypeInfo for FeeAsset

§

type Identity = FeeAsset

The type identifying for which type info is provided. Read more
source§

fn type_info() -> Type

Returns the static type identifier for Self.
source§

impl EncodeLike for FeeAsset

source§

impl Eq for FeeAsset

source§

impl StructuralEq for FeeAsset

source§

impl StructuralPartialEq for FeeAsset

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +sufficient, and should not be overridden without very good reason.

source§

impl TypeInfo for FeeAsset

§

type Identity = FeeAsset

The type identifying for which type info is provided. Read more
source§

fn type_info() -> Type

Returns the static type identifier for Self.
source§

impl EncodeLike for FeeAsset

source§

impl Eq for FeeAsset

source§

impl StructuralEq for FeeAsset

source§

impl StructuralPartialEq for FeeAsset

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CheckedConversion for T

§

fn checked_from<T>(t: T) -> Option<Self>where diff --git a/pallet_inv4/fee_handling/enum.FeeAssetNegativeImbalance.html b/pallet_inv4/fee_handling/enum.FeeAssetNegativeImbalance.html index 9e7834ca..6440b9d7 100644 --- a/pallet_inv4/fee_handling/enum.FeeAssetNegativeImbalance.html +++ b/pallet_inv4/fee_handling/enum.FeeAssetNegativeImbalance.html @@ -1,7 +1,16 @@ -FeeAssetNegativeImbalance in pallet_inv4::fee_handling - Rust
pub enum FeeAssetNegativeImbalance<NativeNegativeImbalance, RelayNegativeImbalance> {
+FeeAssetNegativeImbalance in pallet_inv4::fee_handling - Rust
pub enum FeeAssetNegativeImbalance<NativeNegativeImbalance, RelayNegativeImbalance> {
     Native(NativeNegativeImbalance),
     Relay(RelayNegativeImbalance),
-}

Variants§

§

Native(NativeNegativeImbalance)

§

Relay(RelayNegativeImbalance)

Auto Trait Implementations§

§

impl<NativeNegativeImbalance, RelayNegativeImbalance> RefUnwindSafe for FeeAssetNegativeImbalance<NativeNegativeImbalance, RelayNegativeImbalance>where +}

Expand description

Represents a potential negative asset balance incurred during fee payment operations +within a multisig context.

+

This enum handles imbalances in either the native token or +a relay chain asset used for fees.

+
    +
  • Native(NativeNegativeImbalance): Indicates a deficit balance in the chain’s native asset.
  • +
  • Relay(RelayNegativeImbalance): Indicates a deficit balance in an asset originating on the relay chain.
  • +
+

This enum plays a role in resolving deficit balances in the MultisigFeeHandler trait.

+

Variants§

§

Native(NativeNegativeImbalance)

§

Relay(RelayNegativeImbalance)

Auto Trait Implementations§

§

impl<NativeNegativeImbalance, RelayNegativeImbalance> RefUnwindSafe for FeeAssetNegativeImbalance<NativeNegativeImbalance, RelayNegativeImbalance>where NativeNegativeImbalance: RefUnwindSafe, RelayNegativeImbalance: RefUnwindSafe,

§

impl<NativeNegativeImbalance, RelayNegativeImbalance> Send for FeeAssetNegativeImbalance<NativeNegativeImbalance, RelayNegativeImbalance>where NativeNegativeImbalance: Send, diff --git a/pallet_inv4/fee_handling/index.html b/pallet_inv4/fee_handling/index.html index 179f4587..e211977a 100644 --- a/pallet_inv4/fee_handling/index.html +++ b/pallet_inv4/fee_handling/index.html @@ -1,2 +1,6 @@ -pallet_inv4::fee_handling - Rust

Enums

Traits

  • Fee handler trait. -This should be implemented properly in the runtime to account for native and non-native assets.
\ No newline at end of file +pallet_inv4::fee_handling - Rust
Expand description

MultisigFeeHandler trait.

+

Overview

+

Defines how transaction fees are charged to the multisig account. +This trait requires proper runtime implementation to allow the usage of native or non-native assets.

+

Enums

  • Represents the asset to be used by the multisig for paying transaction fees.
  • Represents a potential negative asset balance incurred during fee payment operations +within a multisig context.

Traits

\ No newline at end of file diff --git a/pallet_inv4/fee_handling/trait.MultisigFeeHandler.html b/pallet_inv4/fee_handling/trait.MultisigFeeHandler.html index abcab8ac..1eb66afc 100644 --- a/pallet_inv4/fee_handling/trait.MultisigFeeHandler.html +++ b/pallet_inv4/fee_handling/trait.MultisigFeeHandler.html @@ -1,4 +1,4 @@ -MultisigFeeHandler in pallet_inv4::fee_handling - Rust
pub trait MultisigFeeHandler<T: Config> {
+MultisigFeeHandler in pallet_inv4::fee_handling - Rust
pub trait MultisigFeeHandler<T: Config> {
     type Pre;
 
     // Required methods
@@ -20,21 +20,25 @@
     fn handle_creation_fee(
         imbalance: FeeAssetNegativeImbalance<<T::Currency as Currency<T::AccountId>>::NegativeImbalance, Credit<T::AccountId, T::Tokens>>
     );
-}
Expand description

Fee handler trait. -This should be implemented properly in the runtime to account for native and non-native assets.

-

Required Associated Types§

Required Methods§

Expand description

Fee handler trait.

+

This should be implemented properly in the runtime to account for native and non-native assets.

+

Required Associated Types§

source

type Pre

Type returned by pre_dispatch - implementation dependent.

+

Required Methods§

source

fn pre_dispatch( asset: &FeeAsset, who: &T::AccountId, call: &<T as Config>::RuntimeCall, info: &DispatchInfoOf<<T as Config>::RuntimeCall>, len: usize -) -> Result<Self::Pre, TransactionValidityError>

source

fn post_dispatch( +) -> Result<Self::Pre, TransactionValidityError>

Checks if the fee can be paid using the selected asset.

+
source

fn post_dispatch( asset: &FeeAsset, pre: Option<Self::Pre>, info: &DispatchInfoOf<<T as Config>::RuntimeCall>, post_info: &PostDispatchInfoOf<<T as Config>::RuntimeCall>, len: usize, result: &DispatchResult -) -> Result<(), TransactionValidityError>

source

fn handle_creation_fee( +) -> Result<(), TransactionValidityError>

Charges the call dispatching fee from the multisig directly.

+
source

fn handle_creation_fee( imbalance: FeeAssetNegativeImbalance<<T::Currency as Currency<T::AccountId>>::NegativeImbalance, Credit<T::AccountId, T::Tokens>> -)

Object Safety§

This trait is not object safe.

Implementors§

\ No newline at end of file +)

Charges the fee for creating the core (multisig).

+

Object Safety§

This trait is not object safe.

Implementors§

\ No newline at end of file diff --git a/pallet_inv4/index.html b/pallet_inv4/index.html index f4fda096..9b46b315 100644 --- a/pallet_inv4/index.html +++ b/pallet_inv4/index.html @@ -1,5 +1,5 @@ pallet_inv4 - Rust

Crate pallet_inv4

source ·
Expand description

Crate pallet_inv4

source ·
Expand description

Pallet INV4

Overview

This pallet handles advanced virtual multisigs (internally called cores).

+

Lower level implementation details of this pallet’s calls are contained in separate modules, each of them +containing their own docs.

Pallet Functions

  • create_core - Create a new core
  • @@ -18,7 +20,7 @@

    Pallet Functions

  • cancel_multisig_proposal - Cancel an existing multisig proposal (called by a core origin)
  • set_parameters - Change core parameters incl. voting thresholds and token freeze state (called by a core origin)
-

Re-exports

Modules

Re-exports

Modules

  • Core Account Derivation.
  • dispatch 🔒
    Dispatches calls internally, charging fees to the multisig account.
  • MultisigFeeHandler trait.
  • Core creation and internal management.
  • lookup 🔒
    Custom account lookup implementation.
  • Multisig Operations.
  • Custom Multisig Origin (INV4Origin).
  • The module that hosts all the FRAME types needed to add this pallet to a -runtime.
  • Autogenerated weights for pallet_inv4

Structs

  • StaticLookup implementor using MultiAddress::Index for looking up cores by id.
\ No newline at end of file +runtime.
  • Voting Mechanism.
  • Autogenerated weights for pallet_inv4
  • Structs

    \ No newline at end of file diff --git a/pallet_inv4/inv4_core/index.html b/pallet_inv4/inv4_core/index.html index 6420cd17..936d1f4a 100644 --- a/pallet_inv4/inv4_core/index.html +++ b/pallet_inv4/inv4_core/index.html @@ -1 +1,9 @@ -pallet_inv4::inv4_core - Rust
    \ No newline at end of file +pallet_inv4::inv4_core - Rust

    Module pallet_inv4::inv4_core

    source ·
    Expand description

    Core creation and internal management.

    +

    Overview

    +

    This module handles the mechanics of creating multisigs (referred to as “cores”) and their lifecycle management. Key functions include:

    +
      +
    • inner_create_core: Sets up a new core, deriving its AccountId, distributing voting tokens, and handling creation fees.
    • +
    • inner_set_parameters: Updates the core’s operational rules.
    • +
    • is_asset_frozen: Utility function for checking if a core’s voting asset is frozen (can’t be transferred by the owner).
    • +
    +

    Type Aliases

    \ No newline at end of file diff --git a/pallet_inv4/inv4_core/type.CoreIndexOf.html b/pallet_inv4/inv4_core/type.CoreIndexOf.html index a30ca1b9..8d6dbb13 100644 --- a/pallet_inv4/inv4_core/type.CoreIndexOf.html +++ b/pallet_inv4/inv4_core/type.CoreIndexOf.html @@ -1 +1 @@ -CoreIndexOf in pallet_inv4::inv4_core - Rust
    pub type CoreIndexOf<T> = <T as Config>::CoreId;
    \ No newline at end of file +CoreIndexOf in pallet_inv4::inv4_core - Rust
    pub type CoreIndexOf<T> = <T as Config>::CoreId;
    \ No newline at end of file diff --git a/pallet_inv4/inv4_core/type.CoreMetadataOf.html b/pallet_inv4/inv4_core/type.CoreMetadataOf.html index 67962bbc..af7dfe77 100644 --- a/pallet_inv4/inv4_core/type.CoreMetadataOf.html +++ b/pallet_inv4/inv4_core/type.CoreMetadataOf.html @@ -1 +1 @@ -CoreMetadataOf in pallet_inv4::inv4_core - Rust
    pub type CoreMetadataOf<T> = BoundedVec<u8, <T as Config>::MaxMetadata>;

    Aliased Type§

    struct CoreMetadataOf<T>(pub(crate) Vec<u8>, PhantomData<<T as Config>::MaxMetadata>);

    Fields§

    §0: Vec<u8>§1: PhantomData<<T as Config>::MaxMetadata>
    \ No newline at end of file +CoreMetadataOf in pallet_inv4::inv4_core - Rust
    pub type CoreMetadataOf<T> = BoundedVec<u8, <T as Config>::MaxMetadata>;

    Aliased Type§

    struct CoreMetadataOf<T>(pub(crate) Vec<u8>, PhantomData<<T as Config>::MaxMetadata>);

    Fields§

    §0: Vec<u8>§1: PhantomData<<T as Config>::MaxMetadata>
    \ No newline at end of file diff --git a/pallet_inv4/lookup/index.html b/pallet_inv4/lookup/index.html index dd877728..475f6816 100644 --- a/pallet_inv4/lookup/index.html +++ b/pallet_inv4/lookup/index.html @@ -1 +1,10 @@ -pallet_inv4::lookup - Rust

    Module pallet_inv4::lookup

    source ·

    Structs

    • StaticLookup implementor using MultiAddress::Index for looking up cores by id.
    \ No newline at end of file +pallet_inv4::lookup - Rust

    Module pallet_inv4::lookup

    source ·
    Expand description

    Custom account lookup implementation.

    +

    Overview

    +

    This module implements the [StaticLookup] trait allowing for convenient lookup of a core’s +AccountId from its CoreId. +This implementation abstracts on top of two lower level functions:

    +
      +
    • lookup_core: Used for accessing the storage and retrieving a core’s AccountId.
    • +
    • lookup_address: Used for converting from a MultiAddress::Index that contains a CoreId to this core’s AccountId.
    • +
    +

    Structs

    • StaticLookup implementor using MultiAddress::Index for looking up cores by id.
    \ No newline at end of file diff --git a/pallet_inv4/lookup/struct.INV4Lookup.html b/pallet_inv4/lookup/struct.INV4Lookup.html index 6c69e2e8..e3cee49e 100644 --- a/pallet_inv4/lookup/struct.INV4Lookup.html +++ b/pallet_inv4/lookup/struct.INV4Lookup.html @@ -1,5 +1,5 @@ -INV4Lookup in pallet_inv4::lookup - Rust
    pub struct INV4Lookup<T: Config>(PhantomData<T>);
    Expand description

    StaticLookup implementor using MultiAddress::Index for looking up cores by id.

    -

    Tuple Fields§

    §0: PhantomData<T>

    Trait Implementations§

    source§

    impl<T: Config> StaticLookup for INV4Lookup<T>

    §

    type Source = MultiAddress<<T as Config>::AccountId, <T as Config>::CoreId>

    Type to lookup from.
    §

    type Target = <T as Config>::AccountId

    Type to lookup into.
    source§

    fn lookup(a: Self::Source) -> Result<Self::Target, LookupError>

    Attempt a lookup.
    source§

    fn unlookup(a: Self::Target) -> Self::Source

    Convert from Target back to Source.

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for INV4Lookup<T>where +INV4Lookup in pallet_inv4::lookup - Rust
    pub struct INV4Lookup<T: Config>(PhantomData<T>);
    Expand description

    StaticLookup implementor using MultiAddress::Index for looking up cores by id.

    +

    Tuple Fields§

    §0: PhantomData<T>

    Trait Implementations§

    source§

    impl<T: Config> StaticLookup for INV4Lookup<T>

    §

    type Source = MultiAddress<<T as Config>::AccountId, <T as Config>::CoreId>

    Type to lookup from.
    §

    type Target = <T as Config>::AccountId

    Type to lookup into.
    source§

    fn lookup(a: Self::Source) -> Result<Self::Target, LookupError>

    Attempt a lookup.
    source§

    fn unlookup(a: Self::Target) -> Self::Source

    Convert from Target back to Source.

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for INV4Lookup<T>where T: RefUnwindSafe,

    §

    impl<T> Send for INV4Lookup<T>where T: Send,

    §

    impl<T> Sync for INV4Lookup<T>where T: Sync,

    §

    impl<T> Unpin for INV4Lookup<T>where diff --git a/pallet_inv4/multisig/constant.MAX_SIZE.html b/pallet_inv4/multisig/constant.MAX_SIZE.html index b992347b..7d74a218 100644 --- a/pallet_inv4/multisig/constant.MAX_SIZE.html +++ b/pallet_inv4/multisig/constant.MAX_SIZE.html @@ -1,2 +1,2 @@ -MAX_SIZE in pallet_inv4::multisig - Rust

    Constant pallet_inv4::multisig::MAX_SIZE

    source ·
    pub const MAX_SIZE: u32 = _; // 51_200u32
    Expand description

    Maximum size of call we store is 50kb.

    +MAX_SIZE in pallet_inv4::multisig - Rust

    Constant pallet_inv4::multisig::MAX_SIZE

    source ·
    pub const MAX_SIZE: u32 = _; // 51_200u32
    Expand description

    Maximum size of call we store is 50kb.

    \ No newline at end of file diff --git a/pallet_inv4/multisig/index.html b/pallet_inv4/multisig/index.html index 2136c67e..62b74dc0 100644 --- a/pallet_inv4/multisig/index.html +++ b/pallet_inv4/multisig/index.html @@ -1 +1,11 @@ -pallet_inv4::multisig - Rust

    Module pallet_inv4::multisig

    source ·

    Structs

    Constants

    • Maximum size of call we store is 50kb.

    Type Aliases

    \ No newline at end of file +pallet_inv4::multisig - Rust

    Module pallet_inv4::multisig

    source ·
    Expand description

    Multisig Operations.

    +

    Overview

    +

    Handles the core actions within an already established multisig.

    +

    Core functionalities:

    +
      +
    • Minting/Burning voting tokens to existing and new members.
    • +
    • Handling proposal votes.
    • +
    • Dispatching approved proposals when both support and approval meet/exceed their minimum required thresholds.
    • +
    • Canceling proposals.
    • +
    +

    Structs

    Constants

    • Maximum size of call we store is 50kb.

    Type Aliases

    \ No newline at end of file diff --git a/pallet_inv4/multisig/struct.MultisigOperation.html b/pallet_inv4/multisig/struct.MultisigOperation.html index 48b128a7..53d6c91b 100644 --- a/pallet_inv4/multisig/struct.MultisigOperation.html +++ b/pallet_inv4/multisig/struct.MultisigOperation.html @@ -1,52 +1,52 @@ -MultisigOperation in pallet_inv4::multisig - Rust
    pub struct MultisigOperation<AccountId, TallyOf, Call, Metadata> {
    +MultisigOperation in pallet_inv4::multisig - Rust
    pub struct MultisigOperation<AccountId, TallyOf, Call, Metadata> {
         pub tally: TallyOf,
         pub original_caller: AccountId,
         pub actual_call: Call,
         pub metadata: Option<Metadata>,
         pub fee_asset: FeeAsset,
     }
    Expand description

    Details of a multisig operation.

    -

    Fields§

    §tally: TallyOf§original_caller: AccountId§actual_call: Call§metadata: Option<Metadata>§fee_asset: FeeAsset

    Trait Implementations§

    source§

    impl<AccountId: Clone, TallyOf: Clone, Call: Clone, Metadata: Clone> Clone for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn clone(&self) -> MultisigOperation<AccountId, TallyOf, Call, Metadata>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> Debug for MultisigOperation<AccountId, TallyOf, Call, Metadata>where +

    Fields§

    §tally: TallyOf§original_caller: AccountId§actual_call: Call§metadata: Option<Metadata>§fee_asset: FeeAsset

    Trait Implementations§

    source§

    impl<AccountId: Clone, TallyOf: Clone, Call: Clone, Metadata: Clone> Clone for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn clone(&self) -> MultisigOperation<AccountId, TallyOf, Call, Metadata>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> Debug for MultisigOperation<AccountId, TallyOf, Call, Metadata>where AccountId: Debug, TallyOf: Debug, Call: Debug, - Metadata: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> Decode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where + Metadata: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> Decode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where TallyOf: Decode, AccountId: Decode, Call: Decode, - Option<Metadata>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( + Option<Metadata>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> Encode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> Encode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where TallyOf: Encode, AccountId: Encode, Call: Encode, - Option<Metadata>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + Option<Metadata>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> MaxEncodedLen for MultisigOperation<AccountId, TallyOf, Call, Metadata>where + F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<AccountId, TallyOf, Call, Metadata> MaxEncodedLen for MultisigOperation<AccountId, TallyOf, Call, Metadata>where TallyOf: MaxEncodedLen, AccountId: MaxEncodedLen, Call: MaxEncodedLen, - Option<Metadata>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<AccountId: PartialEq, TallyOf: PartialEq, Call: PartialEq, Metadata: PartialEq> PartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn eq( + Option<Metadata>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<AccountId: PartialEq, TallyOf: PartialEq, Call: PartialEq, Metadata: PartialEq> PartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn eq( &self, other: &MultisigOperation<AccountId, TallyOf, Call, Metadata> ) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<AccountId, TallyOf, Call, Metadata> TypeInfo for MultisigOperation<AccountId, TallyOf, Call, Metadata>where +sufficient, and should not be overridden without very good reason.

    source§

    impl<AccountId, TallyOf, Call, Metadata> TypeInfo for MultisigOperation<AccountId, TallyOf, Call, Metadata>where TallyOf: TypeInfo + 'static, AccountId: TypeInfo + 'static, Call: TypeInfo + 'static, Option<Metadata>: TypeInfo + 'static, - Metadata: TypeInfo + 'static,

    §

    type Identity = MultisigOperation<AccountId, TallyOf, Call, Metadata>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<AccountId, TallyOf, Call, Metadata> EncodeLike for MultisigOperation<AccountId, TallyOf, Call, Metadata>where + Metadata: TypeInfo + 'static,

    §

    type Identity = MultisigOperation<AccountId, TallyOf, Call, Metadata>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<AccountId, TallyOf, Call, Metadata> EncodeLike for MultisigOperation<AccountId, TallyOf, Call, Metadata>where TallyOf: Encode, AccountId: Encode, Call: Encode, - Option<Metadata>: Encode,

    source§

    impl<AccountId: Eq, TallyOf: Eq, Call: Eq, Metadata: Eq> Eq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralPartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    Auto Trait Implementations§

    §

    impl<AccountId, TallyOf, Call, Metadata> RefUnwindSafe for MultisigOperation<AccountId, TallyOf, Call, Metadata>where + Option<Metadata>: Encode,

    source§

    impl<AccountId: Eq, TallyOf: Eq, Call: Eq, Metadata: Eq> Eq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralPartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    Auto Trait Implementations§

    §

    impl<AccountId, TallyOf, Call, Metadata> RefUnwindSafe for MultisigOperation<AccountId, TallyOf, Call, Metadata>where AccountId: RefUnwindSafe, Call: RefUnwindSafe, Metadata: RefUnwindSafe, diff --git a/pallet_inv4/multisig/type.BoundedCallBytes.html b/pallet_inv4/multisig/type.BoundedCallBytes.html index 5582d4d5..b2828e26 100644 --- a/pallet_inv4/multisig/type.BoundedCallBytes.html +++ b/pallet_inv4/multisig/type.BoundedCallBytes.html @@ -1 +1 @@ -BoundedCallBytes in pallet_inv4::multisig - Rust
    pub type BoundedCallBytes<T> = BoundedVec<u8, <T as Config>::MaxCallSize>;

    Aliased Type§

    struct BoundedCallBytes<T>(pub(crate) Vec<u8>, PhantomData<<T as Config>::MaxCallSize>);

    Fields§

    §0: Vec<u8>§1: PhantomData<<T as Config>::MaxCallSize>
    \ No newline at end of file +BoundedCallBytes in pallet_inv4::multisig - Rust
    pub type BoundedCallBytes<T> = BoundedVec<u8, <T as Config>::MaxCallSize>;

    Aliased Type§

    struct BoundedCallBytes<T>(pub(crate) Vec<u8>, PhantomData<<T as Config>::MaxCallSize>);

    Fields§

    §0: Vec<u8>§1: PhantomData<<T as Config>::MaxCallSize>
    \ No newline at end of file diff --git a/pallet_inv4/multisig/type.MultisigOperationOf.html b/pallet_inv4/multisig/type.MultisigOperationOf.html index 78cd5dc4..3c9b9474 100644 --- a/pallet_inv4/multisig/type.MultisigOperationOf.html +++ b/pallet_inv4/multisig/type.MultisigOperationOf.html @@ -1,4 +1,4 @@ -MultisigOperationOf in pallet_inv4::multisig - Rust
    pub type MultisigOperationOf<T> = MultisigOperation<<T as Config>::AccountId, Tally<T>, BoundedCallBytes<T>, BoundedVec<u8, <T as Config>::MaxMetadata>>;

    Aliased Type§

    struct MultisigOperationOf<T> {
    +MultisigOperationOf in pallet_inv4::multisig - Rust
    pub type MultisigOperationOf<T> = MultisigOperation<<T as Config>::AccountId, Tally<T>, BoundedCallBytes<T>, BoundedVec<u8, <T as Config>::MaxMetadata>>;

    Aliased Type§

    struct MultisigOperationOf<T> {
         pub tally: Tally<T>,
         pub original_caller: <T as Config>::AccountId,
         pub actual_call: BoundedVec<u8, <T as Config>::MaxCallSize>,
    diff --git a/pallet_inv4/origin/enum.INV4Origin.html b/pallet_inv4/origin/enum.INV4Origin.html
    index 2e199ea6..88849bcf 100644
    --- a/pallet_inv4/origin/enum.INV4Origin.html
    +++ b/pallet_inv4/origin/enum.INV4Origin.html
    @@ -1,27 +1,27 @@
    -INV4Origin in pallet_inv4::origin - Rust
    pub enum INV4Origin<T: Config> {
    +INV4Origin in pallet_inv4::origin - Rust
    pub enum INV4Origin<T: Config> {
         Multisig(MultisigInternalOrigin<T>),
     }
    Expand description

    Origin representing a core by its id.

    -

    Variants§

    Trait Implementations§

    source§

    impl<T: Clone + Config> Clone for INV4Origin<T>

    source§

    fn clone(&self) -> INV4Origin<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T> Debug for INV4Origin<T>where - T: Debug + Config,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for INV4Origin<T>where - MultisigInternalOrigin<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( +

    Variants§

    Trait Implementations§

    source§

    impl<T: Clone + Config> Clone for INV4Origin<T>

    source§

    fn clone(&self) -> INV4Origin<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T> Debug for INV4Origin<T>where + T: Debug + Config,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for INV4Origin<T>where + MultisigInternalOrigin<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for INV4Origin<T>where - MultisigInternalOrigin<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for INV4Origin<T>where + MultisigInternalOrigin<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> MaxEncodedLen for INV4Origin<T>where - MultisigInternalOrigin<T>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<T: PartialEq + Config> PartialEq for INV4Origin<T>

    source§

    fn eq(&self, other: &INV4Origin<T>) -> bool

    This method tests for self and other values to be equal, and is used + F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> MaxEncodedLen for INV4Origin<T>where + MultisigInternalOrigin<T>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<T: PartialEq + Config> PartialEq for INV4Origin<T>

    source§

    fn eq(&self, other: &INV4Origin<T>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T> TypeInfo for INV4Origin<T>where +sufficient, and should not be overridden without very good reason.

    source§

    impl<T> TypeInfo for INV4Origin<T>where MultisigInternalOrigin<T>: TypeInfo + 'static, - T: Config + TypeInfo + 'static,

    §

    type Identity = INV4Origin<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> EncodeLike for INV4Origin<T>where - MultisigInternalOrigin<T>: Encode,

    source§

    impl<T: Eq + Config> Eq for INV4Origin<T>

    source§

    impl<T: Config> StructuralEq for INV4Origin<T>

    source§

    impl<T: Config> StructuralPartialEq for INV4Origin<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for INV4Origin<T>where + T: Config + TypeInfo + 'static,

    §

    type Identity = INV4Origin<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> EncodeLike for INV4Origin<T>where + MultisigInternalOrigin<T>: Encode,

    source§

    impl<T: Eq + Config> Eq for INV4Origin<T>

    source§

    impl<T: Config> StructuralEq for INV4Origin<T>

    source§

    impl<T: Config> StructuralPartialEq for INV4Origin<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for INV4Origin<T>where <T as Config>::CoreId: RefUnwindSafe,

    §

    impl<T> Send for INV4Origin<T>

    §

    impl<T> Sync for INV4Origin<T>

    §

    impl<T> Unpin for INV4Origin<T>where <T as Config>::CoreId: Unpin,

    §

    impl<T> UnwindSafe for INV4Origin<T>where <T as Config>::CoreId: UnwindSafe,

    Blanket Implementations§

    source§

    impl<T> Any for Twhere diff --git a/pallet_inv4/origin/fn.ensure_multisig.html b/pallet_inv4/origin/fn.ensure_multisig.html index ba075192..5af0c447 100644 --- a/pallet_inv4/origin/fn.ensure_multisig.html +++ b/pallet_inv4/origin/fn.ensure_multisig.html @@ -1,4 +1,5 @@ -ensure_multisig in pallet_inv4::origin - Rust
    pub fn ensure_multisig<T: Config, OuterOrigin>(
    +ensure_multisig in pallet_inv4::origin - Rust
    pub fn ensure_multisig<T: Config, OuterOrigin>(
         o: OuterOrigin
     ) -> Result<MultisigInternalOrigin<T>, BadOrigin>where
    -    OuterOrigin: Into<Result<Origin<T>, OuterOrigin>>,
    \ No newline at end of file + OuterOrigin: Into<Result<Origin<T>, OuterOrigin>>,
    Expand description

    Ensures the passed origin is a multisig, returning MultisigInternalOrigin.

    +
    \ No newline at end of file diff --git a/pallet_inv4/origin/index.html b/pallet_inv4/origin/index.html index 923d067e..10f0345b 100644 --- a/pallet_inv4/origin/index.html +++ b/pallet_inv4/origin/index.html @@ -1 +1,8 @@ -pallet_inv4::origin - Rust
    \ No newline at end of file +pallet_inv4::origin - Rust

    Module pallet_inv4::origin

    source ·
    Expand description

    Custom Multisig Origin (INV4Origin).

    +

    Overview

    +

    This module introduces a custom origin INV4Origin, enabling self-management for cores and +includes the ensure_multisig function to guarantee calls genuinely come from the multisig account. +This is an efficient approach considering that converting from CoreId to AccountId is a one-way operation, +so the origin brings the CoreId to dispatchable calls. +Converting to a RawOrigin::Signed origin for other calls is handled in the runtime.

    +

    Structs

    Enums

    Functions

    \ No newline at end of file diff --git a/pallet_inv4/origin/struct.MultisigInternalOrigin.html b/pallet_inv4/origin/struct.MultisigInternalOrigin.html index 43cc1869..1add5a27 100644 --- a/pallet_inv4/origin/struct.MultisigInternalOrigin.html +++ b/pallet_inv4/origin/struct.MultisigInternalOrigin.html @@ -1,32 +1,33 @@ -MultisigInternalOrigin in pallet_inv4::origin - Rust
    pub struct MultisigInternalOrigin<T: Config> {
    +MultisigInternalOrigin in pallet_inv4::origin - Rust
    pub struct MultisigInternalOrigin<T: Config> {
         pub id: T::CoreId,
    -}

    Fields§

    §id: T::CoreId

    Implementations§

    source§

    impl<T: Config> MultisigInternalOrigin<T>where - T::AccountId: From<[u8; 32]>,

    source

    pub fn new(id: T::CoreId) -> Self

    source

    pub fn to_account_id(&self) -> T::AccountId

    Trait Implementations§

    source§

    impl<T: Clone + Config> Clone for MultisigInternalOrigin<T>where - T::CoreId: Clone,

    source§

    fn clone(&self) -> MultisigInternalOrigin<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T> Debug for MultisigInternalOrigin<T>where - T: Debug + Config,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for MultisigInternalOrigin<T>where - T::CoreId: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( +}

    Expand description

    Internal origin for identifying the multisig CoreId.

    +

    Fields§

    §id: T::CoreId

    Implementations§

    source§

    impl<T: Config> MultisigInternalOrigin<T>where + T::AccountId: From<[u8; 32]>,

    source

    pub fn new(id: T::CoreId) -> Self

    source

    pub fn to_account_id(&self) -> T::AccountId

    Trait Implementations§

    source§

    impl<T: Clone + Config> Clone for MultisigInternalOrigin<T>where + T::CoreId: Clone,

    source§

    fn clone(&self) -> MultisigInternalOrigin<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T> Debug for MultisigInternalOrigin<T>where + T: Debug + Config,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for MultisigInternalOrigin<T>where + T::CoreId: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for MultisigInternalOrigin<T>where - T::CoreId: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for MultisigInternalOrigin<T>where + T::CoreId: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy -)

    Convert self to a slice and append it to the destination.
    source§

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    source§

    fn using_encoded<__CodecOutputReturn, __CodecUsingEncodedCallback: FnOnce(&[u8]) -> __CodecOutputReturn>( +)

    Convert self to a slice and append it to the destination.
    source§

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    source§

    fn using_encoded<__CodecOutputReturn, __CodecUsingEncodedCallback: FnOnce(&[u8]) -> __CodecOutputReturn>( &self, f: __CodecUsingEncodedCallback -) -> __CodecOutputReturn

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> MaxEncodedLen for MultisigInternalOrigin<T>where - T::CoreId: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<T: PartialEq + Config> PartialEq for MultisigInternalOrigin<T>where - T::CoreId: PartialEq,

    source§

    fn eq(&self, other: &MultisigInternalOrigin<T>) -> bool

    This method tests for self and other values to be equal, and is used +) -> __CodecOutputReturn

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> MaxEncodedLen for MultisigInternalOrigin<T>where + T::CoreId: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<T: PartialEq + Config> PartialEq for MultisigInternalOrigin<T>where + T::CoreId: PartialEq,

    source§

    fn eq(&self, other: &MultisigInternalOrigin<T>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T> TypeInfo for MultisigInternalOrigin<T>where +sufficient, and should not be overridden without very good reason.

    source§

    impl<T> TypeInfo for MultisigInternalOrigin<T>where T::CoreId: TypeInfo + 'static, - T: Config + TypeInfo + 'static,

    §

    type Identity = MultisigInternalOrigin<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> EncodeLike for MultisigInternalOrigin<T>where - T::CoreId: Encode,

    source§

    impl<T: Eq + Config> Eq for MultisigInternalOrigin<T>where - T::CoreId: Eq,

    source§

    impl<T: Config> StructuralEq for MultisigInternalOrigin<T>

    source§

    impl<T: Config> StructuralPartialEq for MultisigInternalOrigin<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for MultisigInternalOrigin<T>where + T: Config + TypeInfo + 'static,

    §

    type Identity = MultisigInternalOrigin<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> EncodeLike for MultisigInternalOrigin<T>where + T::CoreId: Encode,

    source§

    impl<T: Eq + Config> Eq for MultisigInternalOrigin<T>where + T::CoreId: Eq,

    source§

    impl<T: Config> StructuralEq for MultisigInternalOrigin<T>

    source§

    impl<T: Config> StructuralPartialEq for MultisigInternalOrigin<T>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere diff --git a/pallet_inv4/pallet/constant.STORAGE_VERSION.html b/pallet_inv4/pallet/constant.STORAGE_VERSION.html index ab2d3649..65f51013 100644 --- a/pallet_inv4/pallet/constant.STORAGE_VERSION.html +++ b/pallet_inv4/pallet/constant.STORAGE_VERSION.html @@ -1,2 +1,2 @@ -STORAGE_VERSION in pallet_inv4::pallet - Rust
    const STORAGE_VERSION: StorageVersion;
    Expand description

    The current storage version.

    +STORAGE_VERSION in pallet_inv4::pallet - Rust
    const STORAGE_VERSION: StorageVersion;
    Expand description

    The current storage version.

    \ No newline at end of file diff --git a/pallet_inv4/pallet/dispatchables/fn.cancel_multisig_proposal.html b/pallet_inv4/pallet/dispatchables/fn.cancel_multisig_proposal.html index b51a2c06..84842466 100644 --- a/pallet_inv4/pallet/dispatchables/fn.cancel_multisig_proposal.html +++ b/pallet_inv4/pallet/dispatchables/fn.cancel_multisig_proposal.html @@ -1,4 +1,4 @@ -cancel_multisig_proposal in pallet_inv4::pallet::dispatchables - Rust
    pub fn cancel_multisig_proposal<T: Config>(call_hash: T::Hash)
    Expand description

    Cancel an existing multisig proposal (called by a core origin)

    +cancel_multisig_proposal in pallet_inv4::pallet::dispatchables - Rust
    pub fn cancel_multisig_proposal<T: Config>(call_hash: T::Hash)
    Expand description

    Cancel an existing multisig proposal (called by a core origin)

    • call_hash: Hash of the call identifying the proposal
    diff --git a/pallet_inv4/pallet/dispatchables/fn.create_core.html b/pallet_inv4/pallet/dispatchables/fn.create_core.html index 571feeff..37c64d56 100644 --- a/pallet_inv4/pallet/dispatchables/fn.create_core.html +++ b/pallet_inv4/pallet/dispatchables/fn.create_core.html @@ -1,4 +1,4 @@ -create_core in pallet_inv4::pallet::dispatchables - Rust
    pub fn create_core<T: Config>(
    +create_core in pallet_inv4::pallet::dispatchables - Rust
    pub fn create_core<T: Config>(
         metadata: BoundedVec<u8, T::MaxMetadata>,
         minimum_support: Perbill,
         required_approval: Perbill,
    diff --git a/pallet_inv4/pallet/dispatchables/fn.operate_multisig.html b/pallet_inv4/pallet/dispatchables/fn.operate_multisig.html
    index a1c8f5a2..bc45ce80 100644
    --- a/pallet_inv4/pallet/dispatchables/fn.operate_multisig.html
    +++ b/pallet_inv4/pallet/dispatchables/fn.operate_multisig.html
    @@ -1,4 +1,4 @@
    -operate_multisig in pallet_inv4::pallet::dispatchables - Rust
    pub fn operate_multisig<T: Config>(
    +operate_multisig in pallet_inv4::pallet::dispatchables - Rust
    pub fn operate_multisig<T: Config>(
         core_id: T::CoreId,
         metadata: Option<BoundedVec<u8, T::MaxMetadata>>,
         fee_asset: FeeAsset,
    diff --git a/pallet_inv4/pallet/dispatchables/fn.set_parameters.html b/pallet_inv4/pallet/dispatchables/fn.set_parameters.html
    index 30c3483b..832fb4ca 100644
    --- a/pallet_inv4/pallet/dispatchables/fn.set_parameters.html
    +++ b/pallet_inv4/pallet/dispatchables/fn.set_parameters.html
    @@ -1,4 +1,4 @@
    -set_parameters in pallet_inv4::pallet::dispatchables - Rust
    pub fn set_parameters<T: Config>(
    +set_parameters in pallet_inv4::pallet::dispatchables - Rust
    pub fn set_parameters<T: Config>(
         metadata: Option<BoundedVec<u8, T::MaxMetadata>>,
         minimum_support: Option<Perbill>,
         required_approval: Option<Perbill>,
    diff --git a/pallet_inv4/pallet/dispatchables/fn.token_burn.html b/pallet_inv4/pallet/dispatchables/fn.token_burn.html
    index 2f7f2143..6b43ab91 100644
    --- a/pallet_inv4/pallet/dispatchables/fn.token_burn.html
    +++ b/pallet_inv4/pallet/dispatchables/fn.token_burn.html
    @@ -1,4 +1,4 @@
    -token_burn in pallet_inv4::pallet::dispatchables - Rust
    pub fn token_burn<T: Config>(amount: BalanceOf<T>, target: T::AccountId)
    Expand description

    Burn the core’s voting token from a target (called by a core origin)

    +token_burn in pallet_inv4::pallet::dispatchables - Rust
    pub fn token_burn<T: Config>(amount: BalanceOf<T>, target: T::AccountId)
    Expand description

    Burn the core’s voting token from a target (called by a core origin)

    Trait Implementations§

    source§

    impl<T: Config> Clone for Call<T>where +

    Trait Implementations§

    source§

    impl<T: Config> Clone for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> Debug for Call<T>where + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> Debug for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for Call<T>where + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn decode<__CodecInputEdqy: Input>( + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for Call<T>where + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> GetCallIndex for Call<T>where + F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> GetCallIndex for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn get_call_index(&self) -> u8

    Return the index of this Call.
    source§

    fn get_call_indices() -> &'static [u8]

    Return all call indices in the same order as [GetCallName].
    source§

    impl<T: Config> GetCallName for Call<T>where + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn get_call_index(&self) -> u8

    Return the index of this Call.
    source§

    fn get_call_indices() -> &'static [u8]

    Return all call indices in the same order as [GetCallName].
    source§

    impl<T: Config> GetCallName for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn get_call_name(&self) -> &'static str

    Return the function name of the Call.
    source§

    fn get_call_names() -> &'static [&'static str]

    Return all function names in the same order as [GetCallIndex].
    source§

    impl<T: Config> GetDispatchInfo for Call<T>where + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn get_call_name(&self) -> &'static str

    Return the function name of the Call.
    source§

    fn get_call_names() -> &'static [&'static str]

    Return all function names in the same order as [GetCallIndex].
    source§

    impl<T: Config> GetDispatchInfo for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn get_dispatch_info(&self) -> DispatchInfo

    Return a DispatchInfo, containing relevant information of this dispatch. Read more
    source§

    impl<T: Config> GetDispatchInfo for Call<T>where + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn get_dispatch_info(&self) -> DispatchInfo

    Return a DispatchInfo, containing relevant information of this dispatch. Read more
    source§

    impl<T: Config> GetDispatchInfo for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    §

    fn get_dispatch_info(&self) -> DispatchInfo

    👎Deprecated: Trait has moved to frame_support::dispatch
    source§

    impl<T: Config> PartialEq for Call<T>where + <T as Config>::AccountId: From<[u8; 32]>,

    §

    fn get_dispatch_info(&self) -> DispatchInfo

    👎Deprecated: Trait has moved to frame_support::dispatch
    source§

    impl<T: Config> PartialEq for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T> TypeInfo for Call<T>where +sufficient, and should not be overridden without very good reason.

    source§

    impl<T> TypeInfo for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, <T as Config>::AccountId: From<[u8; 32]>, @@ -181,16 +181,16 @@ Option<BoundedVec<u8, T::MaxMetadata>>: TypeInfo + 'static, Box<<T as Config>::RuntimeCall>: TypeInfo + 'static, T::Hash: TypeInfo + 'static, - T: Config + 'static,

    §

    type Identity = Call<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> UnfilteredDispatchable for Call<T>where + T: Config + 'static,

    §

    type Identity = Call<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> UnfilteredDispatchable for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    §

    type RuntimeOrigin = <T as Config>::RuntimeOrigin

    The origin type of the runtime, (i.e. frame_system::Config::RuntimeOrigin).
    source§

    fn dispatch_bypass_filter( + <T as Config>::AccountId: From<[u8; 32]>,

    §

    type RuntimeOrigin = <T as Config>::RuntimeOrigin

    The origin type of the runtime, (i.e. frame_system::Config::RuntimeOrigin).
    source§

    fn dispatch_bypass_filter( self, origin: Self::RuntimeOrigin -) -> DispatchResultWithPostInfo

    Dispatch this call but do not check the filter in origin.
    source§

    impl<T: Config> EncodeLike for Call<T>where +) -> DispatchResultWithPostInfo

    Dispatch this call but do not check the filter in origin.
    source§

    impl<T: Config> EncodeLike for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    impl<T: Config> Eq for Call<T>where + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    impl<T: Config> Eq for Call<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, <T as Config>::AccountId: From<[u8; 32]>,

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Call<T>where diff --git a/pallet_inv4/pallet/enum.Error.html b/pallet_inv4/pallet/enum.Error.html index c4dcc55a..071f26cd 100644 --- a/pallet_inv4/pallet/enum.Error.html +++ b/pallet_inv4/pallet/enum.Error.html @@ -1,4 +1,4 @@ -Error in pallet_inv4::pallet - Rust

    Trait Implementations§

    source§

    impl<T: Config> Debug for Error<T>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T> Decode for Error<T>

    source§

    fn decode<__CodecInputEdqy: Input>( +

    Trait Implementations§

    source§

    impl<T: Config> Debug for Error<T>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T> Decode for Error<T>

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T> Encode for Error<T>

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T> Encode for Error<T>

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> From<Error<T>> for &'static str

    source§

    fn from(err: Error<T>) -> &'static str

    Converts to this type from the input type.
    source§

    impl<T: Config> From<Error<T>> for DispatchError

    source§

    fn from(err: Error<T>) -> Self

    Converts to this type from the input type.
    source§

    impl<T> PalletError for Error<T>

    source§

    const MAX_ENCODED_SIZE: usize = 1usize

    The maximum encoded size for the implementing type. Read more
    source§

    impl<T> TypeInfo for Error<T>where + F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> From<Error<T>> for &'static str

    source§

    fn from(err: Error<T>) -> &'static str

    Converts to this type from the input type.
    source§

    impl<T: Config> From<Error<T>> for DispatchError

    source§

    fn from(err: Error<T>) -> Self

    Converts to this type from the input type.
    source§

    impl<T> PalletError for Error<T>

    source§

    const MAX_ENCODED_SIZE: usize = 1usize

    The maximum encoded size for the implementing type. Read more
    source§

    impl<T> TypeInfo for Error<T>where PhantomData<T>: TypeInfo + 'static, - T: 'static,

    §

    type Identity = Error<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T> EncodeLike for Error<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Error<T>where + T: 'static,

    §

    type Identity = Error<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T> EncodeLike for Error<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Error<T>where T: RefUnwindSafe,

    §

    impl<T> Send for Error<T>where T: Send,

    §

    impl<T> Sync for Error<T>where T: Sync,

    §

    impl<T> Unpin for Error<T>where diff --git a/pallet_inv4/pallet/enum.Event.html b/pallet_inv4/pallet/enum.Event.html index 03db7172..9d2afe34 100644 --- a/pallet_inv4/pallet/enum.Event.html +++ b/pallet_inv4/pallet/enum.Event.html @@ -1,4 +1,4 @@ -Event in pallet_inv4::pallet - Rust
    pub enum Event<T: Config> {
    +Event in pallet_inv4::pallet - Rust
    pub enum Event<T: Config> {
         CoreCreated {
             core_account: T::AccountId,
             core_id: T::CoreId,
    @@ -69,34 +69,34 @@
     
    §

    MultisigVoteWithdrawn

    Fields

    §core_id: T::CoreId
    §executor_account: T::AccountId
    §voter: T::AccountId
    §votes_removed: VoteRecord<T>
    §call_hash: T::Hash

    A vote was removed from an existing multisig proposal

    §

    MultisigExecuted

    Fields

    §core_id: T::CoreId
    §executor_account: T::AccountId
    §voter: T::AccountId
    §call_hash: T::Hash
    §call: CallOf<T>
    §result: DispatchResult

    A multisig proposal passed and it’s call was executed

    §

    MultisigCanceled

    Fields

    §core_id: T::CoreId
    §call_hash: T::Hash

    A multisig proposal was cancelled

    -

    Trait Implementations§

    source§

    impl<T: Config> Clone for Event<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> Debug for Event<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for Event<T>where +

    Trait Implementations§

    source§

    impl<T: Config> Clone for Event<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> Debug for Event<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for Event<T>where T::AccountId: Decode, T::CoreId: Decode, BalanceOf<T>: Decode, VoteRecord<T>: Decode, T::Hash: Decode, Tally<T>: Decode, - CallOf<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( + CallOf<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for Event<T>where + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for Event<T>where T::AccountId: Encode, T::CoreId: Encode, BalanceOf<T>: Encode, VoteRecord<T>: Encode, T::Hash: Encode, Tally<T>: Encode, - CallOf<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + CallOf<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> From<Event<T>> for ()

    source§

    fn from(_: Event<T>)

    Converts to this type from the input type.
    source§

    impl<T: Config> PartialEq for Event<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used + F: FnOnce(&[u8]) -> R,
    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> From<Event<T>> for ()

    source§

    fn from(_: Event<T>)

    Converts to this type from the input type.
    source§

    impl<T: Config> PartialEq for Event<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T> TypeInfo for Event<T>where +sufficient, and should not be overridden without very good reason.

    source§

    impl<T> TypeInfo for Event<T>where T::AccountId: TypeInfo + 'static, T::CoreId: TypeInfo + 'static, BalanceOf<T>: TypeInfo + 'static, @@ -105,14 +105,14 @@ Tally<T>: TypeInfo + 'static, CallOf<T>: TypeInfo + 'static, PhantomData<T>: TypeInfo + 'static, - T: Config + 'static,

    §

    type Identity = Event<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> EncodeLike for Event<T>where + T: Config + 'static,

    §

    type Identity = Event<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> EncodeLike for Event<T>where T::AccountId: Encode, T::CoreId: Encode, BalanceOf<T>: Encode, VoteRecord<T>: Encode, T::Hash: Encode, Tally<T>: Encode, - CallOf<T>: Encode,

    source§

    impl<T: Config> Eq for Event<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Event<T>where + CallOf<T>: Encode,

    source§

    impl<T: Config> Eq for Event<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Event<T>where T: RefUnwindSafe, <T as Config>::AccountId: RefUnwindSafe, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: RefUnwindSafe, diff --git a/pallet_inv4/pallet/index.html b/pallet_inv4/pallet/index.html index ecea5fbf..298a973d 100644 --- a/pallet_inv4/pallet/index.html +++ b/pallet_inv4/pallet/index.html @@ -1,4 +1,4 @@ -pallet_inv4::pallet - Rust

    Module pallet_inv4::pallet

    source ·
    Expand description

    The module that hosts all the +pallet_inv4::pallet - Rust

    Module pallet_inv4::pallet

    source ·
    Expand description

    The module that hosts all the FRAME types needed to add this pallet to a runtime.

    diff --git a/pallet_inv4/pallet/storage_types/index.html b/pallet_inv4/pallet/storage_types/index.html index 3b313774..8ff58d8a 100644 --- a/pallet_inv4/pallet/storage_types/index.html +++ b/pallet_inv4/pallet/storage_types/index.html @@ -1,4 +1,4 @@ -pallet_inv4::pallet::storage_types - Rust
    Expand description

    Auto-generated docs-only module listing all defined storage types for this pallet. +pallet_inv4::pallet::storage_types - Rust

    Expand description

    Auto-generated docs-only module listing all defined storage types for this pallet. Note that members of this module cannot be used directly and are only provided for documentation purposes.

    Structs

    -
    source

    pub fn token_mint( +

    source

    pub fn token_mint( origin: OriginFor<T>, amount: BalanceOf<T>, target: T::AccountId @@ -83,7 +87,7 @@
  • amount: Balance amount
  • target: Account receiving the minted tokens
  • -

    source

    pub fn token_burn( +

    source

    pub fn token_burn( origin: OriginFor<T>, amount: BalanceOf<T>, target: T::AccountId @@ -92,7 +96,7 @@
  • amount: Balance amount
  • target: Account having tokens burned
  • -

    source

    pub fn operate_multisig( +

    source

    pub fn operate_multisig( caller: OriginFor<T>, core_id: T::CoreId, metadata: Option<BoundedVec<u8, T::MaxMetadata>>, @@ -107,7 +111,7 @@
  • fee_asset: Token to be used by the multisig to pay for call fees
  • call: The actual call to be proposed
  • -

    source

    pub fn vote_multisig( +

    source

    pub fn vote_multisig( caller: OriginFor<T>, core_id: T::CoreId, call_hash: T::Hash, @@ -118,7 +122,7 @@
  • call_hash: Hash of the call identifying the proposal
  • aye: Wheter or not to vote positively
  • -

    source

    pub fn withdraw_vote_multisig( +

    source

    pub fn withdraw_vote_multisig( caller: OriginFor<T>, core_id: T::CoreId, call_hash: T::Hash @@ -127,14 +131,14 @@
  • core_id: Id of the core where the proposal is
  • call_hash: Hash of the call identifying the proposal
  • -

    source

    pub fn cancel_multisig_proposal( +

    source

    pub fn cancel_multisig_proposal( caller: OriginFor<T>, call_hash: T::Hash ) -> DispatchResultWithPostInfo

    Cancel an existing multisig proposal (called by a core origin)

    • call_hash: Hash of the call identifying the proposal
    -
    source

    pub fn set_parameters( +

    source

    pub fn set_parameters( origin: OriginFor<T>, metadata: Option<BoundedVec<u8, T::MaxMetadata>>, minimum_support: Option<Perbill>, @@ -147,48 +151,52 @@
  • required_approval: Minimum amount of positive votes out of current positive + negative votes required to approve a proposal
  • frozen_tokens: Wheter or not the core’s voting token should be transferable by the holders
  • -

    source§

    impl<T: Config> Pallet<T>

    source

    pub(crate) fn deposit_event(event: Event<T>)

    source§

    impl<T: Config> Pallet<T>

    source

    pub fn next_core_id() -> T::CoreId

    Next available Core ID.

    -
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_storage<KArg>(k: KArg) -> Option<CoreInfoOf<T>>where +

    source§

    impl<T: Config> Pallet<T>

    source

    pub(crate) fn deposit_event(event: Event<T>)

    source§

    impl<T: Config> Pallet<T>

    source

    pub fn next_core_id() -> T::CoreId

    Next available Core ID.

    +
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_storage<KArg>(k: KArg) -> Option<CoreInfoOf<T>>where KArg: EncodeLike<T::CoreId>,

    Core info storage.

    -
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_by_account<KArg>(k: KArg) -> Option<T::CoreId>where +

    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_by_account<KArg>(k: KArg) -> Option<T::CoreId>where KArg: EncodeLike<T::AccountId>,

    Mapping of account id -> core id.

    -
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn multisig<KArg1, KArg2>( +

    source§

    impl<T: Config> Pallet<T>

    source

    pub fn multisig<KArg1, KArg2>( k1: KArg1, k2: KArg2 ) -> Option<MultisigOperationOf<T>>where KArg1: EncodeLike<T::CoreId>, KArg2: EncodeLike<T::Hash>,

    Details of a multisig call.

    Key: (Core ID, call hash)

    -
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_members<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Option<()>where +

    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_members<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Option<()>where KArg1: EncodeLike<T::CoreId>, KArg2: EncodeLike<T::AccountId>,

    Stores a list of members for each Core. This storage should be always handled by the runtime and mutated by CoreAssets hooks.

    -

    Trait Implementations§

    source§

    impl<T: Config> Callable<T> for Pallet<T>where +

    Trait Implementations§

    source§

    impl<T: Config> Callable<T> for Pallet<T>where Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum, - <T as Config>::AccountId: From<[u8; 32]>,

    source§

    impl<T> Clone for Pallet<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> CoreAccountDerivation<T> for Pallet<T>where - T::AccountId: From<[u8; 32]>,

    source§

    fn derive_core_account(core_id: T::CoreId) -> T::AccountId

    source§

    fn core_location(core_id: T::CoreId) -> Junctions

    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    source§

    fn classes() -> Vec<Self::Class>

    source§

    fn access_poll<R>( + <T as Config>::AccountId: From<[u8; 32]>,

    source§

    impl<T> Clone for Pallet<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> CoreAccountDerivation<T> for Pallet<T>where + T::AccountId: From<[u8; 32]>,

    source§

    fn derive_core_account(core_id: T::CoreId) -> T::AccountId

    HashedDescription of the core location from the perspective of a sibling chain. +This derivation allows the local account address to match the account address in other parachains. +Reference: https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/xcm-builder/src/location_conversion.rs

    +
    source§

    fn core_location(core_id: T::CoreId) -> Junctions

    Core location is defined as a plurality within the parachain.

    +
    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    source§

    fn classes() -> Vec<Self::Class>

    source§

    fn access_poll<R>( class: Self::Class, index: Self::Index, f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> R -) -> R

    source§

    fn try_access_poll<R>( +) -> R

    source§

    fn try_access_poll<R>( class: Self::Class, index: Self::Index, f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> Result<R, DispatchError> -) -> Result<R, DispatchError>

    source§

    fn as_ongoing( +) -> Result<R, DispatchError>

    source§

    fn as_ongoing( class: Self::Class, index: Self::Index ) -> Option<(Tally<T>, T::CoreId)>

    Some if the referendum index can be voted on, along with the tally and class of -referendum. Read more
    source§

    impl<T> Debug for Pallet<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> GetStorageVersion for Pallet<T>

    §

    type CurrentStorageVersion = StorageVersion

    This will be filled out by the pallet macro. Read more
    source§

    fn current_storage_version() -> Self::CurrentStorageVersion

    Returns the current storage version as supported by the pallet.
    source§

    fn on_chain_storage_version() -> StorageVersion

    Returns the on-chain storage version of the pallet as stored in the storage.
    source§

    impl<T: Config> Hooks<<T as Config>::BlockNumber> for Pallet<T>

    §

    fn on_finalize(_n: BlockNumber)

    The block is being finalized. Implement to have something happen.
    §

    fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight

    This will be run when the block is being finalized (before on_finalize). Read more
    §

    fn on_initialize(_n: BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    §

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    §

    fn offchain_worker(_n: BlockNumber)

    Implementing this function on a module allows you to perform long-running tasks +referendum. Read more
    source§

    impl<T> Debug for Pallet<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> GetStorageVersion for Pallet<T>

    §

    type CurrentStorageVersion = StorageVersion

    This will be filled out by the pallet macro. Read more
    source§

    fn current_storage_version() -> Self::CurrentStorageVersion

    Returns the current storage version as supported by the pallet.
    source§

    fn on_chain_storage_version() -> StorageVersion

    Returns the on-chain storage version of the pallet as stored in the storage.
    source§

    impl<T: Config> Hooks<<T as Config>::BlockNumber> for Pallet<T>

    §

    fn on_finalize(_n: BlockNumber)

    The block is being finalized. Implement to have something happen.
    §

    fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight

    This will be run when the block is being finalized (before on_finalize). Read more
    §

    fn on_initialize(_n: BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    §

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    §

    fn offchain_worker(_n: BlockNumber)

    Implementing this function on a module allows you to perform long-running tasks that make (by default) validators generate transactions that feed results -of those long-running computations back on chain. Read more
    §

    fn integrity_test()

    Run integrity test. Read more
    source§

    impl<T: Config> IntegrityTest for Pallet<T>

    source§

    fn integrity_test()

    Run integrity test. Read more
    source§

    impl<T: Config> OffchainWorker<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn offchain_worker(n: <T as Config>::BlockNumber)

    This function is being called after every block import (when fully synced). Read more
    source§

    impl<T: Config> OnFinalize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_finalize(n: <T as Config>::BlockNumber)

    The block is being finalized. Implement to have something happen. Read more
    source§

    impl<T: Config> OnGenesis for Pallet<T>

    source§

    fn on_genesis()

    Something that should happen at genesis.
    source§

    impl<T: Config> OnIdle<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_idle(n: <T as Config>::BlockNumber, remaining_weight: Weight) -> Weight

    The block is being finalized. +of those long-running computations back on chain. Read more
    §

    fn integrity_test()

    Run integrity test. Read more
    source§

    impl<T: Config> IntegrityTest for Pallet<T>

    source§

    fn integrity_test()

    Run integrity test. Read more
    source§

    impl<T: Config> OffchainWorker<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn offchain_worker(n: <T as Config>::BlockNumber)

    This function is being called after every block import (when fully synced). Read more
    source§

    impl<T: Config> OnFinalize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_finalize(n: <T as Config>::BlockNumber)

    The block is being finalized. Implement to have something happen. Read more
    source§

    impl<T: Config> OnGenesis for Pallet<T>

    source§

    fn on_genesis()

    Something that should happen at genesis.
    source§

    impl<T: Config> OnIdle<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_idle(n: <T as Config>::BlockNumber, remaining_weight: Weight) -> Weight

    The block is being finalized. Implement to have something happen in case there is leftover weight. Check the passed remaining_weight to make sure it is high enough to allow for -your pallet’s extra computation. Read more
    source§

    impl<T: Config> OnInitialize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_initialize(n: <T as Config>::BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    source§

    impl<T: Config> OnRuntimeUpgrade for Pallet<T>

    source§

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    source§

    impl<T: Config> PalletInfoAccess for Pallet<T>

    source§

    fn index() -> usize

    Index of the pallet as configured in the runtime.
    source§

    fn name() -> &'static str

    Name of the pallet as configured in the runtime.
    source§

    fn module_name() -> &'static str

    Name of the Rust module containing the pallet.
    source§

    fn crate_version() -> CrateVersion

    Version of the crate containing the pallet.
    source§

    impl<T: Config> PalletsInfoAccess for Pallet<T>

    source§

    fn count() -> usize

    The number of pallets’ information that this type represents. Read more
    source§

    fn infos() -> Vec<PalletInfoData>

    All of the pallets’ information that this type represents.
    source§

    impl<T> PartialEq for Pallet<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used +your pallet’s extra computation. Read more
    source§

    impl<T: Config> OnInitialize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_initialize(n: <T as Config>::BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    source§

    impl<T: Config> OnRuntimeUpgrade for Pallet<T>

    source§

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    source§

    impl<T: Config> PalletInfoAccess for Pallet<T>

    source§

    fn index() -> usize

    Index of the pallet as configured in the runtime.
    source§

    fn name() -> &'static str

    Name of the pallet as configured in the runtime.
    source§

    fn module_name() -> &'static str

    Name of the Rust module containing the pallet.
    source§

    fn crate_version() -> CrateVersion

    Version of the crate containing the pallet.
    source§

    impl<T: Config> PalletsInfoAccess for Pallet<T>

    source§

    fn count() -> usize

    The number of pallets’ information that this type represents. Read more
    source§

    fn infos() -> Vec<PalletInfoData>

    All of the pallets’ information that this type represents.
    source§

    impl<T> PartialEq for Pallet<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T: Config> StorageInfoTrait for Pallet<T>

    source§

    fn storage_info() -> Vec<StorageInfo>

    source§

    impl<T: Config> WhitelistedStorageKeys for Pallet<T>

    source§

    fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>

    Returns a Vec<TrackedStorageKey> indicating the storage keys that +sufficient, and should not be overridden without very good reason.
    source§

    impl<T: Config> StorageInfoTrait for Pallet<T>

    source§

    fn storage_info() -> Vec<StorageInfo>

    source§

    impl<T: Config> WhitelistedStorageKeys for Pallet<T>

    source§

    fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>

    Returns a Vec<TrackedStorageKey> indicating the storage keys that should be whitelisted during benchmarking. This means that those keys -will be excluded from the benchmarking performance calculation.
    source§

    impl<T> Eq for Pallet<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Pallet<T>where +will be excluded from the benchmarking performance calculation.

    source§

    impl<T> Eq for Pallet<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Pallet<T>where T: RefUnwindSafe,

    §

    impl<T> Send for Pallet<T>where T: Send,

    §

    impl<T> Sync for Pallet<T>where T: Sync,

    §

    impl<T> Unpin for Pallet<T>where diff --git a/pallet_inv4/pallet/trait.Config.html b/pallet_inv4/pallet/trait.Config.html index da4537ea..d48a33d6 100644 --- a/pallet_inv4/pallet/trait.Config.html +++ b/pallet_inv4/pallet/trait.Config.html @@ -1,4 +1,4 @@ -Config in pallet_inv4::pallet - Rust
    pub trait Config: Config + Config {
    +Config in pallet_inv4::pallet - Rust
    pub trait Config: Config + Config {
     
    Show 17 associated items type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>; type CoreId: Parameter + Member + AtLeast32BitUnsigned + Default + Copy + Display + MaxEncodedLen + Clone + Into<u32>; type Currency: Currency<Self::AccountId> + ReservableCurrency<Self::AccountId>; @@ -18,21 +18,21 @@ type WeightInfo: WeightInfo;
    }
    Expand description

    Configuration trait of this pallet.

    Implement this type for a runtime in order to customize this pallet.

    -

    Required Associated Types§

    source

    type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>

    Runtime event type

    -
    source

    type CoreId: Parameter + Member + AtLeast32BitUnsigned + Default + Copy + Display + MaxEncodedLen + Clone + Into<u32>

    Integer id type for the core id

    -
    source

    type Currency: Currency<Self::AccountId> + ReservableCurrency<Self::AccountId>

    Currency type

    -
    source

    type RuntimeCall: Parameter + Dispatchable<Info = DispatchInfo, RuntimeOrigin = <Self as Config>::RuntimeOrigin, PostInfo = PostDispatchInfo> + GetDispatchInfo + From<Call<Self>> + GetCallMetadata + Encode

    The overarching call type

    -
    source

    type MaxCallers: Get<u32>

    The maximum numbers of caller accounts on a single multisig proposal

    -
    source

    type MaxMetadata: Get<u32>

    The maximum length of the core metadata and the metadata of multisig proposals

    -
    source

    type RuntimeOrigin: From<Origin<Self>> + From<<Self as Config>::RuntimeOrigin> + From<RawOrigin<<Self as Config>::AccountId>>

    The outer Origin type.

    -
    source

    type CoreSeedBalance: Get<BalanceOf<Self>>

    Base voting token balance to give callers when creating a core

    -
    source

    type CoreCreationFee: Get<BalanceOf<Self>>

    Fee for creating a core in the native token

    -
    source

    type RelayCoreCreationFee: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::Balance>

    Fee for creating a core in the relay token

    -
    source

    type RelayAssetId: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::AssetId>

    Relay token asset id in the runtime

    -
    source

    type AssetsProvider: Inspect<Self::AccountId, Balance = BalanceOf<Self>, AssetId = Self::CoreId> + Mutate<Self::AccountId, AssetId = Self::CoreId>

    Provider of assets functionality for the voting tokens

    -
    source

    type Tokens: Balanced<Self::AccountId> + Inspect<Self::AccountId>

    Provider of balance tokens in the runtime

    -
    source

    type FeeCharger: MultisigFeeHandler<Self>

    Implementation of the fee handler for both core creation fee and multisig call fees

    -
    source

    type ParaId: Get<u32>

    ParaId of the parachain, to be used for deriving the core account id

    -
    source

    type MaxCallSize: Get<u32>

    Maximum size of a multisig proposal call

    -
    source

    type WeightInfo: WeightInfo

    Weight info for dispatchable calls

    +

    Required Associated Types§

    source

    type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>

    Runtime event type

    +
    source

    type CoreId: Parameter + Member + AtLeast32BitUnsigned + Default + Copy + Display + MaxEncodedLen + Clone + Into<u32>

    Integer id type for the core id

    +
    source

    type Currency: Currency<Self::AccountId> + ReservableCurrency<Self::AccountId>

    Currency type

    +
    source

    type RuntimeCall: Parameter + Dispatchable<Info = DispatchInfo, RuntimeOrigin = <Self as Config>::RuntimeOrigin, PostInfo = PostDispatchInfo> + GetDispatchInfo + From<Call<Self>> + GetCallMetadata + Encode

    The overarching call type

    +
    source

    type MaxCallers: Get<u32>

    The maximum numbers of caller accounts on a single multisig proposal

    +
    source

    type MaxMetadata: Get<u32>

    The maximum length of the core metadata and the metadata of multisig proposals

    +
    source

    type RuntimeOrigin: From<Origin<Self>> + From<<Self as Config>::RuntimeOrigin> + From<RawOrigin<<Self as Config>::AccountId>>

    The outer Origin type.

    +
    source

    type CoreSeedBalance: Get<BalanceOf<Self>>

    Base voting token balance to give callers when creating a core

    +
    source

    type CoreCreationFee: Get<BalanceOf<Self>>

    Fee for creating a core in the native token

    +
    source

    type RelayCoreCreationFee: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::Balance>

    Fee for creating a core in the relay token

    +
    source

    type RelayAssetId: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::AssetId>

    Relay token asset id in the runtime

    +
    source

    type AssetsProvider: Inspect<Self::AccountId, Balance = BalanceOf<Self>, AssetId = Self::CoreId> + Mutate<Self::AccountId, AssetId = Self::CoreId>

    Provider of assets functionality for the voting tokens

    +
    source

    type Tokens: Balanced<Self::AccountId> + Inspect<Self::AccountId>

    Provider of balance tokens in the runtime

    +
    source

    type FeeCharger: MultisigFeeHandler<Self>

    Implementation of the fee handler for both core creation fee and multisig call fees

    +
    source

    type ParaId: Get<u32>

    ParaId of the parachain, to be used for deriving the core account id

    +
    source

    type MaxCallSize: Get<u32>

    Maximum size of a multisig proposal call

    +
    source

    type WeightInfo: WeightInfo

    Weight info for dispatchable calls

    Object Safety§

    This trait is not object safe.

    Implementors§

    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.BalanceOf.html b/pallet_inv4/pallet/type.BalanceOf.html index b57a8b51..9efb7294 100644 --- a/pallet_inv4/pallet/type.BalanceOf.html +++ b/pallet_inv4/pallet/type.BalanceOf.html @@ -1 +1 @@ -BalanceOf in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::BalanceOf

    source ·
    pub type BalanceOf<T> = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance;
    \ No newline at end of file +BalanceOf in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::BalanceOf

    source ·
    pub type BalanceOf<T> = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance;
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.CallOf.html b/pallet_inv4/pallet/type.CallOf.html index ce477a5e..ac54b952 100644 --- a/pallet_inv4/pallet/type.CallOf.html +++ b/pallet_inv4/pallet/type.CallOf.html @@ -1 +1 @@ -CallOf in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CallOf

    source ·
    pub type CallOf<T> = <T as Config>::RuntimeCall;
    \ No newline at end of file +CallOf in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CallOf

    source ·
    pub type CallOf<T> = <T as Config>::RuntimeCall;
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.CoreByAccount.html b/pallet_inv4/pallet/type.CoreByAccount.html index 4741d66a..aa80ff00 100644 --- a/pallet_inv4/pallet/type.CoreByAccount.html +++ b/pallet_inv4/pallet/type.CoreByAccount.html @@ -1,2 +1,2 @@ -CoreByAccount in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreByAccount

    source ·
    pub type CoreByAccount<T: Config> = StorageMap<_GeneratedPrefixForStorageCoreByAccount<T>, Blake2_128Concat, T::AccountId, T::CoreId>;
    Expand description

    Mapping of account id -> core id.

    +CoreByAccount in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreByAccount

    source ·
    pub type CoreByAccount<T: Config> = StorageMap<_GeneratedPrefixForStorageCoreByAccount<T>, Blake2_128Concat, T::AccountId, T::CoreId>;
    Expand description

    Mapping of account id -> core id.

    Aliased Type§

    struct CoreByAccount<T: Config>(PhantomData<(_GeneratedPrefixForStorageCoreByAccount<T>, Blake2_128Concat, <T as Config>::AccountId, <T as Config>::CoreId, OptionQuery, GetDefault, GetDefault)>);

    Fields§

    §0: PhantomData<(_GeneratedPrefixForStorageCoreByAccount<T>, Blake2_128Concat, <T as Config>::AccountId, <T as Config>::CoreId, OptionQuery, GetDefault, GetDefault)>
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.CoreInfoOf.html b/pallet_inv4/pallet/type.CoreInfoOf.html index a0277b5c..fcbc3f39 100644 --- a/pallet_inv4/pallet/type.CoreInfoOf.html +++ b/pallet_inv4/pallet/type.CoreInfoOf.html @@ -1,4 +1,4 @@ -CoreInfoOf in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreInfoOf

    source ·
    pub type CoreInfoOf<T> = CoreInfo<<T as Config>::AccountId, CoreMetadataOf<T>>;

    Aliased Type§

    struct CoreInfoOf<T> {
    +CoreInfoOf in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreInfoOf

    source ·
    pub type CoreInfoOf<T> = CoreInfo<<T as Config>::AccountId, CoreMetadataOf<T>>;

    Aliased Type§

    struct CoreInfoOf<T> {
         pub account: <T as Config>::AccountId,
         pub metadata: BoundedVec<u8, <T as Config>::MaxMetadata>,
         pub minimum_support: Perbill,
    diff --git a/pallet_inv4/pallet/type.CoreMembers.html b/pallet_inv4/pallet/type.CoreMembers.html
    index cc70f7b9..d1e8683d 100644
    --- a/pallet_inv4/pallet/type.CoreMembers.html
    +++ b/pallet_inv4/pallet/type.CoreMembers.html
    @@ -1,3 +1,3 @@
    -CoreMembers in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreMembers

    source ·
    pub type CoreMembers<T: Config> = StorageDoubleMap<_GeneratedPrefixForStorageCoreMembers<T>, Blake2_128Concat, T::CoreId, Blake2_128Concat, T::AccountId, ()>;
    Expand description

    Stores a list of members for each Core. +CoreMembers in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreMembers

    source ·
    pub type CoreMembers<T: Config> = StorageDoubleMap<_GeneratedPrefixForStorageCoreMembers<T>, Blake2_128Concat, T::CoreId, Blake2_128Concat, T::AccountId, ()>;
    Expand description

    Stores a list of members for each Core. This storage should be always handled by the runtime and mutated by CoreAssets hooks.

    Aliased Type§

    struct CoreMembers<T: Config>(PhantomData<(_GeneratedPrefixForStorageCoreMembers<T>, Blake2_128Concat, <T as Config>::CoreId, Blake2_128Concat, <T as Config>::AccountId, (), OptionQuery, GetDefault, GetDefault)>);

    Fields§

    §0: PhantomData<(_GeneratedPrefixForStorageCoreMembers<T>, Blake2_128Concat, <T as Config>::CoreId, Blake2_128Concat, <T as Config>::AccountId, (), OptionQuery, GetDefault, GetDefault)>
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.CoreStorage.html b/pallet_inv4/pallet/type.CoreStorage.html index 57d05610..e72327ea 100644 --- a/pallet_inv4/pallet/type.CoreStorage.html +++ b/pallet_inv4/pallet/type.CoreStorage.html @@ -1,2 +1,2 @@ -CoreStorage in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreStorage

    source ·
    pub type CoreStorage<T: Config> = StorageMap<_GeneratedPrefixForStorageCoreStorage<T>, Blake2_128Concat, T::CoreId, CoreInfoOf<T>>;
    Expand description

    Core info storage.

    +CoreStorage in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::CoreStorage

    source ·
    pub type CoreStorage<T: Config> = StorageMap<_GeneratedPrefixForStorageCoreStorage<T>, Blake2_128Concat, T::CoreId, CoreInfoOf<T>>;
    Expand description

    Core info storage.

    Aliased Type§

    struct CoreStorage<T: Config>(PhantomData<(_GeneratedPrefixForStorageCoreStorage<T>, Blake2_128Concat, <T as Config>::CoreId, CoreInfo<<T as Config>::AccountId, BoundedVec<u8, <T as Config>::MaxMetadata>>, OptionQuery, GetDefault, GetDefault)>);

    Fields§

    §0: PhantomData<(_GeneratedPrefixForStorageCoreStorage<T>, Blake2_128Concat, <T as Config>::CoreId, CoreInfo<<T as Config>::AccountId, BoundedVec<u8, <T as Config>::MaxMetadata>>, OptionQuery, GetDefault, GetDefault)>
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.Module.html b/pallet_inv4/pallet/type.Module.html index d000ac94..df8e8959 100644 --- a/pallet_inv4/pallet/type.Module.html +++ b/pallet_inv4/pallet/type.Module.html @@ -1,3 +1,3 @@ -Module in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::Module

    source ·
    pub type Module<T> = Pallet<T>;
    👎Deprecated: use Pallet instead
    Expand description

    Type alias to Pallet, to be used by construct_runtime.

    +Module in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::Module

    source ·
    pub type Module<T> = Pallet<T>;
    👎Deprecated: use Pallet instead
    Expand description

    Type alias to Pallet, to be used by construct_runtime.

    Generated by pallet attribute macro.

    Aliased Type§

    struct Module<T>(PhantomData<T>);

    Fields§

    §0: PhantomData<T>
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.Multisig.html b/pallet_inv4/pallet/type.Multisig.html index 53d9fe90..0f1bfb7a 100644 --- a/pallet_inv4/pallet/type.Multisig.html +++ b/pallet_inv4/pallet/type.Multisig.html @@ -1,3 +1,3 @@ -Multisig in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::Multisig

    source ·
    pub type Multisig<T: Config> = StorageDoubleMap<_GeneratedPrefixForStorageMultisig<T>, Blake2_128Concat, T::CoreId, Blake2_128Concat, T::Hash, MultisigOperationOf<T>>;
    Expand description

    Details of a multisig call.

    +Multisig in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::Multisig

    source ·
    pub type Multisig<T: Config> = StorageDoubleMap<_GeneratedPrefixForStorageMultisig<T>, Blake2_128Concat, T::CoreId, Blake2_128Concat, T::Hash, MultisigOperationOf<T>>;
    Expand description

    Details of a multisig call.

    Key: (Core ID, call hash)

    Aliased Type§

    struct Multisig<T: Config>(PhantomData<(_GeneratedPrefixForStorageMultisig<T>, Blake2_128Concat, <T as Config>::CoreId, Blake2_128Concat, <T as Config>::Hash, MultisigOperation<<T as Config>::AccountId, Tally<T>, BoundedVec<u8, <T as Config>::MaxCallSize>, BoundedVec<u8, <T as Config>::MaxMetadata>>, OptionQuery, GetDefault, GetDefault)>);

    Fields§

    §0: PhantomData<(_GeneratedPrefixForStorageMultisig<T>, Blake2_128Concat, <T as Config>::CoreId, Blake2_128Concat, <T as Config>::Hash, MultisigOperation<<T as Config>::AccountId, Tally<T>, BoundedVec<u8, <T as Config>::MaxCallSize>, BoundedVec<u8, <T as Config>::MaxMetadata>>, OptionQuery, GetDefault, GetDefault)>
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.NextCoreId.html b/pallet_inv4/pallet/type.NextCoreId.html index 557a107d..545fd2a3 100644 --- a/pallet_inv4/pallet/type.NextCoreId.html +++ b/pallet_inv4/pallet/type.NextCoreId.html @@ -1,2 +1,2 @@ -NextCoreId in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::NextCoreId

    source ·
    pub type NextCoreId<T: Config> = StorageValue<_GeneratedPrefixForStorageNextCoreId<T>, T::CoreId, ValueQuery>;
    Expand description

    Next available Core ID.

    +NextCoreId in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::NextCoreId

    source ·
    pub type NextCoreId<T: Config> = StorageValue<_GeneratedPrefixForStorageNextCoreId<T>, T::CoreId, ValueQuery>;
    Expand description

    Next available Core ID.

    Aliased Type§

    struct NextCoreId<T: Config>(PhantomData<(_GeneratedPrefixForStorageNextCoreId<T>, <T as Config>::CoreId, ValueQuery, GetDefault)>);

    Fields§

    §0: PhantomData<(_GeneratedPrefixForStorageNextCoreId<T>, <T as Config>::CoreId, ValueQuery, GetDefault)>
    \ No newline at end of file diff --git a/pallet_inv4/pallet/type.Origin.html b/pallet_inv4/pallet/type.Origin.html index e30fd9b7..f3bbf584 100644 --- a/pallet_inv4/pallet/type.Origin.html +++ b/pallet_inv4/pallet/type.Origin.html @@ -1,4 +1,4 @@ -Origin in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::Origin

    source ·
    pub type Origin<T> = INV4Origin<T>;
    Expand description

    The custom core origin.

    +Origin in pallet_inv4::pallet - Rust

    Type Alias pallet_inv4::pallet::Origin

    source ·
    pub type Origin<T> = INV4Origin<T>;
    Expand description

    The custom core origin.

    Aliased Type§

    enum Origin<T> {
         Multisig(MultisigInternalOrigin<T>),
     }

    Variants§

    \ No newline at end of file diff --git a/pallet_inv4/pallet/warnings/index.html b/pallet_inv4/pallet/warnings/index.html index 6fe0e209..f615c755 100644 --- a/pallet_inv4/pallet/warnings/index.html +++ b/pallet_inv4/pallet/warnings/index.html @@ -1 +1 @@ -pallet_inv4::pallet::warnings - Rust
    \ No newline at end of file +pallet_inv4::pallet::warnings - Rust
    \ No newline at end of file diff --git a/pallet_inv4/struct.INV4Lookup.html b/pallet_inv4/struct.INV4Lookup.html index ec93af7d..edb9d77d 100644 --- a/pallet_inv4/struct.INV4Lookup.html +++ b/pallet_inv4/struct.INV4Lookup.html @@ -1,5 +1,5 @@ -INV4Lookup in pallet_inv4 - Rust

    Struct pallet_inv4::INV4Lookup

    source ·
    pub struct INV4Lookup<T: Config>(PhantomData<T>);
    Expand description

    StaticLookup implementor using MultiAddress::Index for looking up cores by id.

    -

    Tuple Fields§

    §0: PhantomData<T>

    Trait Implementations§

    source§

    impl<T: Config> StaticLookup for INV4Lookup<T>

    §

    type Source = MultiAddress<<T as Config>::AccountId, <T as Config>::CoreId>

    Type to lookup from.
    §

    type Target = <T as Config>::AccountId

    Type to lookup into.
    source§

    fn lookup(a: Self::Source) -> Result<Self::Target, LookupError>

    Attempt a lookup.
    source§

    fn unlookup(a: Self::Target) -> Self::Source

    Convert from Target back to Source.

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for INV4Lookup<T>where +INV4Lookup in pallet_inv4 - Rust

    Struct pallet_inv4::INV4Lookup

    source ·
    pub struct INV4Lookup<T: Config>(PhantomData<T>);
    Expand description

    StaticLookup implementor using MultiAddress::Index for looking up cores by id.

    +

    Tuple Fields§

    §0: PhantomData<T>

    Trait Implementations§

    source§

    impl<T: Config> StaticLookup for INV4Lookup<T>

    §

    type Source = MultiAddress<<T as Config>::AccountId, <T as Config>::CoreId>

    Type to lookup from.
    §

    type Target = <T as Config>::AccountId

    Type to lookup into.
    source§

    fn lookup(a: Self::Source) -> Result<Self::Target, LookupError>

    Attempt a lookup.
    source§

    fn unlookup(a: Self::Target) -> Self::Source

    Convert from Target back to Source.

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for INV4Lookup<T>where T: RefUnwindSafe,

    §

    impl<T> Send for INV4Lookup<T>where T: Send,

    §

    impl<T> Sync for INV4Lookup<T>where T: Sync,

    §

    impl<T> Unpin for INV4Lookup<T>where diff --git a/pallet_inv4/voting/enum.Vote.html b/pallet_inv4/voting/enum.Vote.html index 79957cfd..1ac0fbcd 100644 --- a/pallet_inv4/voting/enum.Vote.html +++ b/pallet_inv4/voting/enum.Vote.html @@ -1,26 +1,28 @@ -Vote in pallet_inv4::voting - Rust

    Enum pallet_inv4::voting::Vote

    source ·
    pub enum Vote<Votes> {
    +Vote in pallet_inv4::voting - Rust

    Enum pallet_inv4::voting::Vote

    source ·
    pub enum Vote<Votes> {
         Aye(Votes),
         Nay(Votes),
    -}

    Variants§

    §

    Aye(Votes)

    §

    Nay(Votes)

    Trait Implementations§

    source§

    impl<Votes: Clone> Clone for Vote<Votes>

    source§

    fn clone(&self) -> Vote<Votes>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<Votes> Debug for Vote<Votes>where - Votes: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<Votes> Decode for Vote<Votes>where - Votes: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( +}

    Expand description

    Represents a proposal vote within a multisig context.

    +

    This is both the vote and how many voting tokens it carries.

    +

    Variants§

    §

    Aye(Votes)

    §

    Nay(Votes)

    Trait Implementations§

    source§

    impl<Votes: Clone> Clone for Vote<Votes>

    source§

    fn clone(&self) -> Vote<Votes>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<Votes> Debug for Vote<Votes>where + Votes: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<Votes> Decode for Vote<Votes>where + Votes: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<Votes> Encode for Vote<Votes>where - Votes: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<Votes> Encode for Vote<Votes>where + Votes: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<Votes> MaxEncodedLen for Vote<Votes>where - Votes: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<Votes: PartialEq> PartialEq for Vote<Votes>

    source§

    fn eq(&self, other: &Vote<Votes>) -> bool

    This method tests for self and other values to be equal, and is used + F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.

    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<Votes> MaxEncodedLen for Vote<Votes>where + Votes: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<Votes: PartialEq> PartialEq for Vote<Votes>

    source§

    fn eq(&self, other: &Vote<Votes>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<Votes> TypeInfo for Vote<Votes>where - Votes: TypeInfo + 'static,

    §

    type Identity = Vote<Votes>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<Votes: Copy> Copy for Vote<Votes>

    source§

    impl<Votes> EncodeLike for Vote<Votes>where - Votes: Encode,

    source§

    impl<Votes: Eq> Eq for Vote<Votes>

    source§

    impl<Votes> StructuralEq for Vote<Votes>

    source§

    impl<Votes> StructuralPartialEq for Vote<Votes>

    Auto Trait Implementations§

    §

    impl<Votes> RefUnwindSafe for Vote<Votes>where +sufficient, and should not be overridden without very good reason.

    source§

    impl<Votes> TypeInfo for Vote<Votes>where + Votes: TypeInfo + 'static,

    §

    type Identity = Vote<Votes>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<Votes: Copy> Copy for Vote<Votes>

    source§

    impl<Votes> EncodeLike for Vote<Votes>where + Votes: Encode,

    source§

    impl<Votes: Eq> Eq for Vote<Votes>

    source§

    impl<Votes> StructuralEq for Vote<Votes>

    source§

    impl<Votes> StructuralPartialEq for Vote<Votes>

    Auto Trait Implementations§

    §

    impl<Votes> RefUnwindSafe for Vote<Votes>where Votes: RefUnwindSafe,

    §

    impl<Votes> Send for Vote<Votes>where Votes: Send,

    §

    impl<Votes> Sync for Vote<Votes>where Votes: Sync,

    §

    impl<Votes> Unpin for Vote<Votes>where diff --git a/pallet_inv4/voting/index.html b/pallet_inv4/voting/index.html index fd3f8d67..931eee48 100644 --- a/pallet_inv4/voting/index.html +++ b/pallet_inv4/voting/index.html @@ -1 +1,7 @@ -pallet_inv4::voting - Rust

    Module pallet_inv4::voting

    source ·

    Structs

    • Aggregated votes for an ongoing poll by members of a core.

    Enums

    Traits

    Type Aliases

    \ No newline at end of file +pallet_inv4::voting - Rust

    Module pallet_inv4::voting

    source ·
    Expand description

    Voting Mechanism.

    +

    Overview

    +

    This module provides a weighted voting Tally implementation used for managing the multisig’s proposals. +Members each have a balance in voting tokens and this balance differentiate their voting power +as every vote utilizes the entire power of the said member. +This empowers decision-making where certain members possess greater influence.

    +

    Structs

    • Aggregated votes for an ongoing poll by members of a core.

    Enums

    • Represents a proposal vote within a multisig context.

    Traits

    Type Aliases

    \ No newline at end of file diff --git a/pallet_inv4/voting/struct.Tally.html b/pallet_inv4/voting/struct.Tally.html index e9b39589..e254690b 100644 --- a/pallet_inv4/voting/struct.Tally.html +++ b/pallet_inv4/voting/struct.Tally.html @@ -1,56 +1,58 @@ -Tally in pallet_inv4::voting - Rust

    Struct pallet_inv4::voting::Tally

    source ·
    pub struct Tally<T: Config> {
    +Tally in pallet_inv4::voting - Rust

    Struct pallet_inv4::voting::Tally

    source ·
    pub struct Tally<T: Config> {
         pub ayes: Votes<T>,
         pub nays: Votes<T>,
         pub records: BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>,
         dummy: PhantomData<T>,
     }
    Expand description

    Aggregated votes for an ongoing poll by members of a core.

    -

    Fields§

    §ayes: Votes<T>§nays: Votes<T>§records: BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>§dummy: PhantomData<T>

    Implementations§

    source§

    impl<T: Config> Tally<T>

    Fields§

    §ayes: Votes<T>§nays: Votes<T>§records: BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>§dummy: PhantomData<T>

    Implementations§

    source§

    impl<T: Config> Tally<T>

    source

    pub fn from_parts( ayes: Votes<T>, nays: Votes<T>, records: BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers> -) -> Self

    source

    pub fn process_vote( +) -> Self

    Allows for building a Tally manually.

    +
    source

    pub fn process_vote( &mut self, account: T::AccountId, maybe_vote: Option<Vote<Votes<T>>> -) -> Result<Vote<Votes<T>>, DispatchError>

    Trait Implementations§

    source§

    impl<T: Config> Clone for Tally<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    source§

    fn classes() -> Vec<Self::Class>

    source§

    fn access_poll<R>( +) -> Result<Vote<Votes<T>>, DispatchError>

    Check if a vote is valid and add the member’s total voting token balance to the tally.

    +

    Trait Implementations§

    source§

    impl<T: Config> Clone for Tally<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    source§

    fn classes() -> Vec<Self::Class>

    source§

    fn access_poll<R>( class: Self::Class, index: Self::Index, f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> R -) -> R

    source§

    fn try_access_poll<R>( +) -> R

    source§

    fn try_access_poll<R>( class: Self::Class, index: Self::Index, f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> Result<R, DispatchError> -) -> Result<R, DispatchError>

    source§

    fn as_ongoing( +) -> Result<R, DispatchError>

    source§

    fn as_ongoing( class: Self::Class, index: Self::Index ) -> Option<(Tally<T>, T::CoreId)>

    Some if the referendum index can be voted on, along with the tally and class of -referendum. Read more
    source§

    impl<T: Config> Debug for Tally<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for Tally<T>where +referendum. Read more

    source§

    impl<T: Config> Debug for Tally<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Config> Decode for Tally<T>where Votes<T>: Decode, BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>: Decode, - PhantomData<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( + PhantomData<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where - I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for Tally<T>where + I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    source§

    impl<T: Config> Encode for Tally<T>where Votes<T>: Encode, BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>: Encode, - PhantomData<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( + PhantomData<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere - F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> MaxEncodedLen for Tally<T>

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<T: Config> PartialEq for Tally<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used + F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    source§

    impl<T: Config> MaxEncodedLen for Tally<T>

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    source§

    impl<T: Config> PartialEq for Tally<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T> TypeInfo for Tally<T>where +sufficient, and should not be overridden without very good reason.

    source§

    impl<T> TypeInfo for Tally<T>where Votes<T>: TypeInfo + 'static, BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>: TypeInfo + 'static, PhantomData<T>: TypeInfo + 'static, - T: Config + 'static,

    §

    type Identity = Tally<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> VoteTally<<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance, <T as Config>::CoreId> for Tally<T>

    source§

    fn new(_: Core<T>) -> Self

    source§

    fn ayes(&self, _: Core<T>) -> Votes<T>

    source§

    fn support(&self, class: Core<T>) -> Perbill

    source§

    fn approval(&self, _: Core<T>) -> Perbill

    source§

    impl<T: Config> EncodeLike for Tally<T>where + T: Config + 'static,

    §

    type Identity = Tally<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    source§

    impl<T: Config> VoteTally<<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance, <T as Config>::CoreId> for Tally<T>

    source§

    fn new(_: Core<T>) -> Self

    source§

    fn ayes(&self, _: Core<T>) -> Votes<T>

    source§

    fn support(&self, class: Core<T>) -> Perbill

    source§

    fn approval(&self, _: Core<T>) -> Perbill

    source§

    impl<T: Config> EncodeLike for Tally<T>where Votes<T>: Encode, BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>: Encode, - PhantomData<T>: Encode,

    source§

    impl<T: Config> Eq for Tally<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Tally<T>where + PhantomData<T>: Encode,

    source§

    impl<T: Config> Eq for Tally<T>

    Auto Trait Implementations§

    §

    impl<T> RefUnwindSafe for Tally<T>where T: RefUnwindSafe, <T as Config>::AccountId: RefUnwindSafe, <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: RefUnwindSafe, diff --git a/pallet_inv4/voting/trait.CustomPolling.html b/pallet_inv4/voting/trait.CustomPolling.html index dc05885d..dd1af9b0 100644 --- a/pallet_inv4/voting/trait.CustomPolling.html +++ b/pallet_inv4/voting/trait.CustomPolling.html @@ -1,4 +1,4 @@ -CustomPolling in pallet_inv4::voting - Rust
    pub trait CustomPolling<Tally> {
    +CustomPolling in pallet_inv4::voting - Rust
    pub trait CustomPolling<Tally> {
         type Index: Ord + PartialOrd + Copy + MaxEncodedLen;
         type Votes: Parameter + Ord + PartialOrd + Copy + HasCompact + MaxEncodedLen;
         type Class: Parameter + Member + Ord + PartialOrd + MaxEncodedLen;
    @@ -20,18 +20,18 @@
             index: Self::Index,
             f: impl FnOnce(PollStatus<&mut Tally, Self::Moment, Self::Class>) -> Result<R, DispatchError>
         ) -> Result<R, DispatchError>;
    -}

    Required Associated Types§

    source

    type Index: Ord + PartialOrd + Copy + MaxEncodedLen

    source

    type Votes: Parameter + Ord + PartialOrd + Copy + HasCompact + MaxEncodedLen

    source

    type Class: Parameter + Member + Ord + PartialOrd + MaxEncodedLen

    source

    type Moment

    Required Methods§

    Required Associated Types§

    source

    type Index: Ord + PartialOrd + Copy + MaxEncodedLen

    source

    type Votes: Parameter + Ord + PartialOrd + Copy + HasCompact + MaxEncodedLen

    source

    type Class: Parameter + Member + Ord + PartialOrd + MaxEncodedLen

    source

    type Moment

    Required Methods§

    source

    fn classes() -> Vec<Self::Class>

    source

    fn as_ongoing( class: Self::Class, index: Self::Index ) -> Option<(Tally, Self::Class)>

    Some if the referendum index can be voted on, along with the tally and class of referendum.

    Don’t use this if you might mutate - use try_access_poll instead.

    -
    source

    fn access_poll<R>( +

    source

    fn access_poll<R>( class: Self::Class, index: Self::Index, f: impl FnOnce(PollStatus<&mut Tally, Self::Moment, Self::Class>) -> R -) -> R

    source

    fn try_access_poll<R>( +) -> R

    source

    fn try_access_poll<R>( class: Self::Class, index: Self::Index, f: impl FnOnce(PollStatus<&mut Tally, Self::Moment, Self::Class>) -> Result<R, DispatchError> -) -> Result<R, DispatchError>

    Object Safety§

    This trait is not object safe.

    Implementors§

    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    \ No newline at end of file +) -> Result<R, DispatchError>

    Object Safety§

    This trait is not object safe.

    Implementors§

    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    \ No newline at end of file diff --git a/pallet_inv4/voting/type.Core.html b/pallet_inv4/voting/type.Core.html index 016c1311..0b2a5f69 100644 --- a/pallet_inv4/voting/type.Core.html +++ b/pallet_inv4/voting/type.Core.html @@ -1 +1 @@ -Core in pallet_inv4::voting - Rust

    Type Alias pallet_inv4::voting::Core

    source ·
    pub type Core<T> = <T as Config>::CoreId;
    \ No newline at end of file +Core in pallet_inv4::voting - Rust

    Type Alias pallet_inv4::voting::Core

    source ·
    pub type Core<T> = <T as Config>::CoreId;
    \ No newline at end of file diff --git a/pallet_inv4/voting/type.VoteRecord.html b/pallet_inv4/voting/type.VoteRecord.html index 80649405..aa2979c6 100644 --- a/pallet_inv4/voting/type.VoteRecord.html +++ b/pallet_inv4/voting/type.VoteRecord.html @@ -1,4 +1,5 @@ -VoteRecord in pallet_inv4::voting - Rust

    Type Alias pallet_inv4::voting::VoteRecord

    source ·
    pub type VoteRecord<T> = Vote<Votes<T>>;

    Aliased Type§

    enum VoteRecord<T> {
    +VoteRecord in pallet_inv4::voting - Rust

    Type Alias pallet_inv4::voting::VoteRecord

    source ·
    pub type VoteRecord<T> = Vote<Votes<T>>;
    Expand description

    Type alias for Vote with BalanceOf.

    +

    Aliased Type§

    enum VoteRecord<T> {
         Aye(<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance),
         Nay(<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance),
     }

    Variants§

    §

    Aye(<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance)

    §

    Nay(<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance)

    \ No newline at end of file diff --git a/pallet_inv4/voting/type.Votes.html b/pallet_inv4/voting/type.Votes.html index 92a15089..930b70d3 100644 --- a/pallet_inv4/voting/type.Votes.html +++ b/pallet_inv4/voting/type.Votes.html @@ -1 +1 @@ -Votes in pallet_inv4::voting - Rust

    Type Alias pallet_inv4::voting::Votes

    source ·
    pub type Votes<T> = BalanceOf<T>;
    \ No newline at end of file +Votes in pallet_inv4::voting - Rust

    Type Alias pallet_inv4::voting::Votes

    source ·
    pub type Votes<T> = BalanceOf<T>;
    \ No newline at end of file diff --git a/search-index.js b/search-index.js index 4a28e94d..baa7c911 100644 --- a/search-index.js +++ b/search-index.js @@ -1,7 +1,7 @@ var searchIndex = JSON.parse('{\ "invarch_primitives":{"doc":"","t":"PGFPFFGPPGPGPFPPNNNNNNNNONNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Bool","BoolOrWasm","CallInfo","Child","CoreInfo","IpfInfo","IpsType","Normal","One","OneOrPercent","Parent","Parentage","Replica","SubTokenInfo","Wasm","ZeroPoint","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","account","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","author","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","data","decode","decode","decode","decode","decode","decode","decode","decode","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","frozen_tokens","function","id","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","metadata","metadata","metadata","minimum_support","owner","pallet","required_approval","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_info","type_info","type_info","type_info","type_info","type_info","type_info","type_info","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"invarch_primitives"],[309,"dyn_clone::sealed"],[310,"core::any"],[311,"core::clone"],[312,"parity_scale_codec::error"],[313,"core::result"],[314,"parity_scale_codec::codec"],[315,"parity_scale_codec::codec"],[316,"parity_scale_codec::codec"],[317,"core::fmt"],[318,"core::fmt"],[319,"alloc::sync"],[320,"alloc::rc"],[321,"alloc::vec"],[322,"core::any"]],"d":["","","","Child IP (Id of the immediate parent, Account Id of the …","Core IP Set struct","IPF Info","Normal or replica IPS","Normal IPS (original)","Represents 100%","Voting weight of an IPT","Parent IP (Account Id of itself)","Entity is parent or child?","IP Replica (Id of the original IP)","","","Represents 0% - 99% inclusive","","","","","","","","","IPS parentage","","","","","","","","","","","","","","","","","Original IPF author","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","IPF data","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","IPS metadata","IPF metadata","","Aye vote percentage required to execute a multisig call.","IPF owner","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[8,0,0,5,0,0,0,7,4,0,5,0,7,0,8,4,4,5,7,8,9,10,11,12,9,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,10,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,10,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,4,4,5,5,5,7,7,7,8,8,8,9,9,9,10,10,10,11,11,11,12,12,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,9,12,11,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,9,10,11,9,10,12,9,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12,4,5,7,8,9,10,11,12],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],0,[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[4,4],[[[5,[-1,-2]]],[[5,[-1,-2]]],6,6],[[[7,[-1]]],[[7,[-1]]],6],[[[8,[-1]]],[[8,[-1]]],6],[[[9,[-1,-2]]],[[9,[-1,-2]]],6,6],[[[10,[-1,-2,-3]]],[[10,[-1,-2,-3]]],6,6,6],[[[11,[-1,-2]]],[[11,[-1,-2]]],6,6],[[[12,[-1]]],[[12,[-1]]],6],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],0,[-1,[[14,[4,13]]],15],[-1,[[14,[[5,[-2,-3]],13]]],15,16,16],[-1,[[14,[[7,[-2]],13]]],15,16],[-1,[[14,[[8,[-2]],13]]],15,16],[-1,[[14,[[9,[-2,-3]],13]]],15,16,16],[-1,[[14,[[10,[-2,-3,-4]],13]]],15,16,16,16],[-1,[[14,[[11,[-2,-3]],13]]],15,16,16],[-1,[[14,[[12,[-2]],13]]],15,16],[[[18,[17]]],[[14,[-1,13]]],[]],[[[18,[17]]],[[14,[-1,13]]],[]],[[[18,[17]]],[[14,[-1,13]]],[]],[[[18,[17]]],[[14,[-1,13]]],[]],[[[18,[17]]],[[14,[-1,13]]],[]],[[[18,[17]]],[[14,[-1,13]]],[]],[[[18,[17]]],[[14,[-1,13]]],[]],[[[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,[18,[17]]],[[14,[-1,13]]],[]],[[19,-1],[[14,[-2,13]]],15,[]],[[19,-1],[[14,[-2,13]]],15,[]],[[19,-1],[[14,[-2,13]]],15,[]],[[19,-1],[[14,[-2,13]]],15,[]],[[19,-1],[[14,[-2,13]]],15,[]],[[19,-1],[[14,[-2,13]]],15,[]],[[19,-1],[[14,[-2,13]]],15,[]],[[19,-1],[[14,[-2,13]]],15,[]],[[4,-1],2,[20,21]],[[[5,[-1,-2]],-3],2,22,22,[20,21]],[[[7,[-1]],-2],2,22,[20,21]],[[[8,[-1]],-2],2,22,[20,21]],[[[9,[-1,-2]],-3],2,22,22,[20,21]],[[[10,[-1,-2,-3]],-4],2,22,22,22,[20,21]],[[[11,[-1,-2]],-3],2,22,22,[20,21]],[[[12,[-1]],-2],2,22,[20,21]],[[4,4],23],[[[5,[-1,-2]],[5,[-1,-2]]],23,24,24],[[[7,[-1]],[7,[-1]]],23,24],[[[8,[-1]],[8,[-1]]],23,24],[[[9,[-1,-2]],[9,[-1,-2]]],23,24,24],[[[10,[-1,-2,-3]],[10,[-1,-2,-3]]],23,24,24,24],[[[11,[-1,-2]],[11,[-1,-2]]],23,24,24],[[[12,[-1]],[12,[-1]]],23,24],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[-1,-2],23,[],[]],[[4,25],26],[[[5,[-1,-2]],25],26,27,27],[[[7,[-1]],25],26,27],[[[8,[-1]],25],26,27],[[[9,[-1,-2]],25],26,27,27],[[[10,[-1,-2,-3]],25],26,27,27,27],[[[11,[-1,-2]],25],26,27,27],[[[12,[-1]],25],26,27],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[28,[-1]]],[[28,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[29,[-1]]],[[29,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[[30,[-1]]],[[30,[3]]],[]],[[],31],[[],31],[[],31],[[],31],[[],31],[[],31],[[],31],[[],31],0,0,0,0,0,0,0,[4,31],[[[5,[-1,-2]]],31,22,22],[[[7,[-1]]],31,22],[[[8,[-1]]],31,22],[[[9,[-1,-2]]],31,22,22],[[[10,[-1,-2,-3]]],31,22,22,22],[[[11,[-1,-2]]],31,22,22],[[[12,[-1]]],31,22],[[-1,[18,[17]]],[[32,[17]]],[]],[[-1,[18,[17]]],[[32,[17]]],[]],[[-1,[18,[17]]],[[32,[17]]],[]],[[-1,[18,[17]]],[[32,[17]]],[]],[[-1,[18,[17]]],[[32,[17]]],[]],[[-1,[18,[17]]],[[32,[17]]],[]],[[-1,[18,[17]]],[[32,[17]]],[]],[[-1,[18,[17]]],[[32,[17]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,33,[]],[-1,33,[]],[-1,33,[]],[-1,33,[]],[-1,33,[]],[-1,33,[]],[-1,33,[]],[-1,33,[]],[[],34],[[],34],[[],34],[[],34],[[],34],[[],34],[[],34],[[],34],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]]],"c":[],"p":[[5,"Private",309],[1,"tuple"],[10,"Any",310],[6,"OneOrPercent",0],[6,"Parentage",0],[10,"Clone",311],[6,"IpsType",0],[6,"BoolOrWasm",0],[5,"CoreInfo",0],[5,"IpfInfo",0],[5,"SubTokenInfo",0],[5,"CallInfo",0],[5,"Error",312],[6,"Result",313],[10,"Input",314],[10,"Decode",314],[1,"u8"],[1,"slice"],[1,"u32"],[10,"Output",314],[10,"Sized",315],[10,"Encode",314],[1,"bool"],[10,"PartialEq",316],[5,"Formatter",317],[8,"Result",317],[10,"Debug",317],[5,"Box",318],[5,"Arc",319],[5,"Rc",320],[1,"usize"],[5,"Vec",321],[5,"TypeId",310],[5,"Type",322]],"b":[]},\ "pallet_checked_inflation":{"doc":"","t":"PPKGPEMCCCPPKGPNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNIRGKRIRRGGPIRPIIPPIPPFRRIINNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPNNNNCNNNNNNNNNNNNNNEENNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNOOOOOOOOOOOOHHFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFKNNNNNNNNNMNNNNNNNMNNNNNNN","n":["FixedPerEra","FixedYearly","GetInflation","InflationMethod","Rate","WeightInfo","get_inflation_args","inflation","pallet","weights","FixedPerEra","FixedYearly","GetInflation","InflationMethod","Rate","as_any","as_any_mut","blake2_128","blake2_128_concat","blake2_256","borrow","borrow_mut","decode","decode_all","decode_all_with_depth_limit","decode_with_depth_limit","encode_to","from","from_mut","from_mut","from_ref","from_ref","get_inflation_args","get_inflation_args","identity","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","size_hint","to_keyed_vec","try_from","try_into","twox_128","twox_256","twox_64_concat","type_id","type_info","unchecked_into","unique_saturated_into","vzip","BalanceOf","BlocksPerEra","Call","Config","Currency","CurrentEra","DealWithInflation","ErasPerYear","Error","Event","HaltChanged","Halted","Inflation","InflationMinted","Module","NegativeImbalanceOf","NewEra","NewYear","NextEraStartingBlock","NoHaltChange","OverInflationDetected","Pallet","RuntimeEvent","WeightInfo","YearStartIssuance","YearlyInflationPerEra","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","blake2_128","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","blake2_256","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","count","crate_version","current_era","current_storage_version","decode","decode","decode","decode_all","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","deposit_event","dispatch_bypass_filter","dispatchables","encode_to","encode_to","encode_to","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_call_index","get_call_indices","get_call_name","get_call_names","get_dispatch_info","halt_unhalt_pallet","halt_unhalt_pallet","identity","identity","identity","index","inflation_per_era","infos","integrity_test","internal_halt_unhalt","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","is_halted","mint","module_name","name","new_call_variant_halt_unhalt_pallet","new_call_variant_set_first_year_supply","next_era_starting_block","offchain_worker","on_chain_storage_version","on_finalize","on_genesis","on_idle","on_initialize","on_initialize","on_runtime_upgrade","set_first_year_supply","set_first_year_supply","size_hint","size_hint","size_hint","storage_info","storage_types","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","tt_default_parts","tt_error_token","twox_128","twox_128","twox_128","twox_256","twox_256","twox_256","twox_64_concat","twox_64_concat","twox_64_concat","type_id","type_id","type_id","type_id","type_info","type_info","type_info","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vzip","vzip","vzip","vzip","warnings","whitelisted_storage_keys","with_weight","year_start_issuance","halt","current_issuance","current_issuance","era","expected_issuance","expected_new_issuance","is_halted","minted","next_era_starting_block","next_era_starting_block","starting_issuance","year_start_issuance","halt_unhalt_pallet","set_first_year_supply","CurrentEra","Halted","NextEraStartingBlock","YearStartIssuance","YearlyInflationPerEra","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","from","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","into_ref","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vzip","vzip","vzip","vzip","vzip","SubstrateWeight","WeightInfo","as_any","as_any_mut","borrow","borrow_mut","from","from_mut","from_mut","from_ref","from_ref","halt_unhalt_pallet","halt_unhalt_pallet","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","set_first_year_supply","set_first_year_supply","try_from","try_into","type_id","unchecked_into","unique_saturated_into","vzip"],"q":[[0,"pallet_checked_inflation"],[10,"pallet_checked_inflation::inflation"],[53,"pallet_checked_inflation::pallet"],[280,"pallet_checked_inflation::pallet::Call"],[281,"pallet_checked_inflation::pallet::Event"],[292,"pallet_checked_inflation::pallet::dispatchables"],[294,"pallet_checked_inflation::pallet::storage_types"],[404,"pallet_checked_inflation::weights"],[431,"core::any"],[432,"alloc::vec"],[433,"parity_scale_codec::error"],[434,"core::result"],[435,"parity_scale_codec::codec"],[436,"parity_scale_codec::codec"],[437,"alloc::boxed"],[438,"alloc::sync"],[439,"alloc::rc"],[440,"core::any"],[441,"dyn_clone::sealed"],[442,"frame_support::traits::metadata"],[443,"frame_support::dispatch"],[444,"core::fmt"],[445,"core::fmt"],[446,"frame_support::dispatch"],[447,"frame_system::pallet_prelude"],[448,"sp_storage"],[449,"frame_support::dispatch"]],"d":["","","","","","","","","The module that hosts all the FRAME types needed to add …","Autogenerated weights for pallet_checked_inflation","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","Contains one variant per dispatchable that can be called …","Configuration trait of this pallet.","","The current era. Starts from 1 and is reset every year.","","","Custom dispatch errors of this pallet.","The event emitted by this pallet.","","Wheter or not the inflation process should be halted.","","","Type alias to Pallet, to be used by construct_runtime.","","","","Block that the next era starts at.","","","The pallet implementing the on-chain logic.","","","Total token supply at the very beginning of the year …","The number of tokens minted at the beginning of every era …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The current era. Starts from 1 and is reset every year.","","","","","","","","","","","","","","","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","","","","","","","","","","","","The number of tokens minted at the beginning of every era …","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Wheter or not the inflation process should be halted.","","","","Create a call with the variant halt_unhalt_pallet.","Create a call with the variant set_first_year_supply.","Block that the next era starts at.","","","","","","","","","","","","","","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Total token supply at the very beginning of the year …","","","","","","","","","","","","","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","The current era. Starts from 1 and is reset every year.","Wheter or not the inflation process should be halted.","Block that the next era starts at.","Total token supply at the very beginning of the year …","The number of tokens minted at the beginning of every era …","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Weights for pallet_checked_inflation using the Substrate …","Weight functions needed for pallet_checked_inflation.","","","","","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","Storage: CheckedInflation Halted (r:1 w:1) Proof: …","Calls U::from(self).","","","","","","","Storage: CheckedInflation YearStartIssuance (r:0 w:1) …","","","","","",""],"i":[7,7,0,0,7,0,1,0,0,0,7,7,0,0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,1,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,26,0,0,26,0,26,26,0,0,25,0,26,25,0,0,25,25,0,29,25,0,26,26,0,0,24,25,27,24,29,25,27,24,29,25,27,29,25,27,29,25,27,29,25,27,24,29,25,27,24,29,25,27,24,25,27,24,25,27,24,24,24,24,29,25,27,29,25,27,29,25,27,29,25,27,24,27,0,29,25,27,24,25,27,24,24,24,25,25,25,27,27,27,24,29,25,27,24,29,25,27,24,24,29,29,25,25,27,27,24,24,29,29,25,25,27,27,27,27,27,27,27,24,27,29,25,27,24,24,24,24,24,24,29,25,27,24,29,25,27,24,29,25,27,24,29,25,27,24,29,25,27,24,29,25,27,24,24,24,24,27,27,24,24,24,24,24,24,24,24,24,24,27,29,25,27,24,0,29,25,27,24,25,27,24,29,25,27,24,29,25,27,0,0,29,25,27,29,25,27,29,25,27,24,29,25,27,29,25,27,24,29,25,27,24,29,25,27,24,29,25,27,0,24,29,24,46,47,48,49,48,47,50,47,51,49,51,47,0,0,0,0,0,0,0,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,52,53,53,54,54,55,55,56,56,52,52,53,53,54,54,55,55,56,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,0,0,57,57,57,57,57,57,57,57,57,58,57,57,57,57,57,57,57,58,57,57,57,57,57,57,57],"f":[0,0,0,0,0,0,[[1,2]],0,0,0,0,0,0,0,0,[-1,3,[]],[-1,3,[]],[-1,[[5,[4]]],[]],[-1,[[6,[4]]],[]],[-1,[[5,[4]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[[7,[-2]],8]]],10,11],[[[12,[4]]],[[9,[-1,8]]],[]],[[2,[12,[4]]],[[9,[-1,8]]],[]],[[2,-1],[[9,[-2,8]]],10,[]],[[[7,[-1]],-2],13,14,[15,16]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[[1,2]],[[7,2]],[-1,[[6,[4]]],[]],[-1,-2,[],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[7,[-1]]],20,14],[[-1,[12,[4]]],[[6,[4]]],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[6,[4]]],[]],[-1,21,[]],[[],22],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,23],13,[]],[[-1,23],13,[]],[[-1,23],13,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[6,[4]]],[]],[-1,[[6,[4]]],[]],[-1,[[6,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[24,[-1]]],[[24,[-1]]],[]],[[[25,[-1]]],[[25,[-1]]],26],[[[27,[-1]]],[[27,[-1]]],26],[[-1,-2],13,[],[]],[[-1,-2],13,[],[]],[[-1,-2],13,[],[]],[[],20],[[],28],[[],2],[[],-1,[]],[-1,[[9,[[29,[-2]],8]]],10,[]],[-1,[[9,[[25,[-2]],8]]],10,26],[-1,[[9,[[27,[-2]],8]]],10,26],[[[12,[4]]],[[9,[-1,8]]],[]],[[[12,[4]]],[[9,[-1,8]]],[]],[[[12,[4]]],[[9,[-1,8]]],[]],[[2,[12,[4]]],[[9,[-1,8]]],[]],[[2,[12,[4]]],[[9,[-1,8]]],[]],[[2,[12,[4]]],[[9,[-1,8]]],[]],[[2,-1],[[9,[-2,8]]],10,[]],[[2,-1],[[9,[-2,8]]],10,[]],[[2,-1],[[9,[-2,8]]],10,[]],[[[25,[-1]]],13,26],[[[27,[-1]],-2],30,26,[]],0,[[[29,[-1]],-2],13,[],[15,16]],[[[25,[-1]],-2],13,26,[15,16]],[[[27,[-1]],-2],13,26,[15,16]],[[[24,[-1]],[24,[-1]]],31,[]],[[[25,[-1]],[25,[-1]]],31,26],[[[27,[-1]],[27,[-1]]],31,26],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[-1,-2],31,[],[]],[[[24,[-1]],32],33,[]],[[[29,[-1]],32],33,26],[[[25,[-1]],32],33,26],[[[27,[-1]],32],33,26],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[[[27,[-1]]],4,26],[[],[[12,[4]]]],[[[27,[-1]]],34,26],[[],[[12,[34]]]],[[[27,[-1]]],35,26],[[[36,[-1]],31],37,26],0,[-1,[[6,[4]]],[]],[-1,[[6,[4]]],[]],[-1,[[6,[4]]],[]],[[],20],[[]],[[],[[6,[38]]]],[[],13],[31,13],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],31],[[],13],[[],34],[[],34],[31,[[27,[-1]]],26],[[],[[27,[-1]]],26],[[]],[[],13],[[],39],[[],13],[[],13],[40,40],[[],40],[[[41,[-1]]],40,26],[[],40],[[[36,[-1]]],37,26],0,[[[29,[-1]]],20,[]],[[[25,[-1]]],20,26],[[[27,[-1]]],20,26],[[],[[6,[42]]]],0,[[-1,[12,[4]]],[[6,[4]]],[]],[[-1,[12,[4]]],[[6,[4]]],[]],[[-1,[12,[4]]],[[6,[4]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],0,0,[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[5,[4]]],[]],[-1,[[6,[4]]],[]],[-1,[[6,[4]]],[]],[-1,[[6,[4]]],[]],[-1,21,[]],[-1,21,[]],[-1,21,[]],[-1,21,[]],[[],22],[[],22],[[],22],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[6,[43]]]],[[-1,40],[[45,[44]]],[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[31,13],[[],13],0,0,0,0,0,[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,21,[]],[-1,21,[]],[-1,21,[]],[-1,21,[]],[-1,21,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[-1,3,[]],[-1,3,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[[],40],[[],40],[-1,-2,[],[]],[[[17,[-1]]],[[17,[3]]],[]],[[[18,[-1]]],[[18,[3]]],[]],[[[19,[-1]]],[[19,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],40],[[],40],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,21,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]]],"c":[67],"p":[[10,"GetInflation",10],[1,"u32"],[10,"Any",431],[1,"u8"],[1,"array"],[5,"Vec",432],[6,"InflationMethod",10],[5,"Error",433],[6,"Result",434],[10,"Input",435],[10,"Decode",435],[1,"slice"],[1,"tuple"],[10,"Encode",435],[10,"Output",435],[10,"Sized",436],[5,"Box",437],[5,"Arc",438],[5,"Rc",439],[1,"usize"],[5,"TypeId",431],[5,"Type",440],[5,"Private",441],[5,"Pallet",53],[6,"Event",53],[10,"Config",53],[6,"Call",53],[5,"CrateVersion",442],[6,"Error",53],[8,"DispatchResultWithPostInfo",443],[1,"bool"],[5,"Formatter",444],[8,"Result",444],[1,"str"],[5,"DispatchInfo",443],[8,"OriginFor",445],[8,"DispatchResult",443],[5,"PalletInfoData",442],[5,"StorageVersion",442],[5,"Weight",446],[8,"BlockNumberFor",445],[5,"StorageInfo",447],[5,"TrackedStorageKey",448],[5,"PostDispatchInfo",443],[5,"DispatchErrorWithPostInfo",449],[15,"halt_unhalt_pallet",280],[15,"InflationMinted",281],[15,"OverInflationDetected",281],[15,"NewEra",281],[15,"HaltChanged",281],[15,"NewYear",281],[5,"CurrentEra",294],[5,"NextEraStartingBlock",294],[5,"YearStartIssuance",294],[5,"YearlyInflationPerEra",294],[5,"Halted",294],[5,"SubstrateWeight",404],[10,"WeightInfo",404]],"b":[[222,"impl-OnInitialize%3C%3CT+as+Config%3E::BlockNumber%3E-for-Pallet%3CT%3E"],[223,"impl-Hooks%3C%3CT+as+Config%3E::BlockNumber%3E-for-Pallet%3CT%3E"]]},\ -"pallet_inv4":{"doc":"Pallet INV4","t":"EFECCCCCCCCCCKMMHGGKPPRPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNMMNNNNNNNNNNNNNNNNNNNIIFNNNNNNNNNNNNNNNNNNNNNNNISFINOONNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNOOOONOONNNNNNNNNNNNGPFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNRIPGPPIKIPRRIIPRIRGGPRPPRRPRPPIIPPPPPPPPIPPPIFRPRRRRRSRRNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNPNNNNNNNNNNNNNNPNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNOONNENNNNNNNNNNNNNNNNNNNPNONPNNNNCNNNNNNNPNPNNNNNNNNNEENNNNNNNNNNNNNNNNNNNNNNNNNPNNNNCNNNPOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOHHHHHHHHFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPRIKRRPPFGIIRNNMNNNNNMNONNNNNNNNNNMNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNNNMNNNNNNNNNNNNNNNNNNNNFKNNNNMNMNNNNNNNNNNNNMNMNMNMNNNNNNMNNMN","n":["CoreAccountDerivation","INV4Lookup","WeightInfo","account_derivation","dispatch","fee_handling","inv4_core","lookup","multisig","origin","pallet","voting","weights","CoreAccountDerivation","core_location","derive_core_account","dispatch_call","FeeAsset","FeeAssetNegativeImbalance","MultisigFeeHandler","Native","Native","Pre","Relay","Relay","__clone_box","as_any","as_any","as_any_mut","as_any_mut","blake2_128","blake2_128_concat","blake2_256","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","decode","decode_all","decode_all_with_depth_limit","decode_with_depth_limit","encode_to","eq","equivalent","equivalent","equivalent","fmt","from","from","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","handle_creation_fee","identity","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","max_encoded_len","post_dispatch","pre_dispatch","size_hint","to_keyed_vec","to_owned","try_from","try_from","try_into","try_into","twox_128","twox_256","twox_64_concat","type_id","type_id","type_info","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","vzip","vzip","CoreIndexOf","CoreMetadataOf","INV4Lookup","as_any","as_any_mut","borrow","borrow_mut","from","from_mut","from_mut","from_ref","from_ref","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","lookup","try_from","try_into","type_id","unchecked_into","unique_saturated_into","unlookup","vzip","BoundedCallBytes","MAX_SIZE","MultisigOperation","MultisigOperationOf","__clone_box","actual_call","actual_call","as_any","as_any_mut","blake2_128","blake2_128_concat","blake2_256","borrow","borrow_mut","clone","clone_into","decode","decode_all","decode_all_with_depth_limit","decode_with_depth_limit","encode_to","eq","equivalent","equivalent","equivalent","fee_asset","fee_asset","fmt","from","from_mut","from_mut","from_ref","from_ref","identity","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","max_encoded_len","metadata","metadata","original_caller","original_caller","size_hint","tally","tally","to_keyed_vec","to_owned","try_from","try_into","twox_128","twox_256","twox_64_concat","type_id","type_info","unchecked_into","unique_saturated_into","vzip","INV4Origin","Multisig","MultisigInternalOrigin","__clone_box","__clone_box","as_any","as_any","as_any_mut","as_any_mut","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","decode","decode","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","encode","encode_to","encode_to","ensure_multisig","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","id","identity","identity","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","max_encoded_len","max_encoded_len","new","size_hint","size_hint","to_account_id","to_keyed_vec","to_keyed_vec","to_owned","to_owned","try_from","try_from","try_into","try_into","twox_128","twox_128","twox_256","twox_256","twox_64_concat","twox_64_concat","type_id","type_id","type_info","type_info","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","using_encoded","vzip","vzip","AssetsProvider","BalanceOf","Burned","Call","CallFeePaymentFailed","CallHasTooFewBytes","CallOf","Config","CoreByAccount","CoreCreated","CoreCreationFee","CoreId","CoreInfoOf","CoreMembers","CoreNotFound","CoreSeedBalance","CoreStorage","Currency","Error","Event","FailedDecodingCall","FeeCharger","IncompleteVoteCleanup","MaxCallLengthExceeded","MaxCallSize","MaxCallers","MaxCallersExceeded","MaxMetadata","MaxMetadataExceeded","Minted","Module","Multisig","Multisig","MultisigCallAlreadyExists","MultisigCallNotFound","MultisigCanceled","MultisigExecuted","MultisigVoteAdded","MultisigVoteStarted","MultisigVoteWithdrawn","NextCoreId","NoAvailableCoreId","NoPermission","NotAVoter","Origin","Pallet","ParaId","ParametersSet","RelayAssetId","RelayCoreCreationFee","RuntimeCall","RuntimeEvent","RuntimeOrigin","STORAGE_VERSION","Tokens","WeightInfo","__clone_box","__clone_box","__clone_box","access_poll","account","add_member","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_ongoing","blake2_128","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","blake2_256","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cancel_multisig_proposal","cancel_multisig_proposal","classes","clone","clone","clone","clone_into","clone_into","clone_into","core_by_account","core_location","core_members","core_storage","count","crate_version","create_core","create_core","current_storage_version","decode","decode","decode","decode_all","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","deposit_event","derive_core_account","dispatch_bypass_filter","dispatchables","encode_to","encode_to","encode_to","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","frozen_tokens","get_call_index","get_call_indices","get_call_name","get_call_names","get_dispatch_info","identity","identity","identity","index","infos","inner_cancel_multisig_proposal","inner_create_core","inner_operate_multisig","inner_set_parameters","inner_token_burn","inner_token_mint","inner_vote_multisig","inner_withdraw_vote_multisig","integrity_test","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","inv4_core","is_asset_frozen","lookup_address","lookup_core","metadata","minimum_support","minimum_support_and_required_approval","module_name","multisig","multisig","name","new_call_variant_cancel_multisig_proposal","new_call_variant_create_core","new_call_variant_operate_multisig","new_call_variant_set_parameters","new_call_variant_token_burn","new_call_variant_token_mint","new_call_variant_vote_multisig","new_call_variant_withdraw_vote_multisig","next_core_id","offchain_worker","on_chain_storage_version","on_finalize","on_genesis","on_idle","on_initialize","on_runtime_upgrade","operate_multisig","operate_multisig","remove_member","required_approval","set_parameters","set_parameters","size_hint","size_hint","size_hint","storage_info","storage_types","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_owned","to_owned","to_owned","token_burn","token_burn","token_mint","token_mint","try_access_poll","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","tt_default_parts","tt_error_token","twox_128","twox_128","twox_128","twox_256","twox_256","twox_256","twox_64_concat","twox_64_concat","twox_64_concat","type_id","type_id","type_id","type_id","type_info","type_info","type_info","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vote_multisig","vote_multisig","vzip","vzip","vzip","vzip","warnings","whitelisted_storage_keys","with_weight","withdraw_vote_multisig","withdraw_vote_multisig","amount","amount","aye","call","call_hash","call_hash","call_hash","core_id","core_id","core_id","creation_fee_asset","fee_asset","frozen_tokens","metadata","metadata","metadata","minimum_support","minimum_support","required_approval","required_approval","target","target","amount","amount","call","call_hash","call_hash","call_hash","call_hash","call_hash","core_account","core_id","core_id","core_id","core_id","core_id","core_id","core_id","core_id","core_id","current_votes","executor_account","executor_account","executor_account","executor_account","frozen_tokens","metadata","metadata","minimum_support","minimum_support","required_approval","required_approval","result","target","target","voter","voter","voter","voter","votes_added","votes_added","votes_removed","cancel_multisig_proposal","create_core","operate_multisig","set_parameters","token_burn","token_mint","vote_multisig","withdraw_vote_multisig","CoreByAccount","CoreMembers","CoreStorage","Multisig","NextCoreId","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","from","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","into_ref","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vzip","vzip","vzip","vzip","vzip","Aye","Aye","Class","Core","CustomPolling","Index","Moment","Nay","Nay","Tally","Vote","VoteRecord","Votes","Votes","__clone_box","__clone_box","access_poll","approval","as_any","as_any","as_any_mut","as_any_mut","as_ongoing","ayes","ayes","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","borrow","borrow","borrow_mut","borrow_mut","classes","clone","clone","clone_into","clone_into","decode","decode","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","dummy","encode_to","encode_to","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from_mut","from_mut","from_mut","from_mut","from_parts","from_ref","from_ref","from_ref","from_ref","identity","identity","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","max_encoded_len","max_encoded_len","nays","new","process_vote","records","size_hint","size_hint","support","to_keyed_vec","to_keyed_vec","to_owned","to_owned","try_access_poll","try_from","try_from","try_into","try_into","twox_128","twox_128","twox_256","twox_256","twox_64_concat","twox_64_concat","type_id","type_id","type_info","type_info","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","vzip","vzip","SubstrateWeight","WeightInfo","as_any","as_any_mut","borrow","borrow_mut","cancel_multisig_proposal","cancel_multisig_proposal","create_core","create_core","from","from_mut","from_mut","from_ref","from_ref","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","operate_multisig","operate_multisig","set_parameters","set_parameters","token_burn","token_burn","token_mint","token_mint","try_from","try_into","type_id","unchecked_into","unique_saturated_into","vote_multisig","vote_multisig","vzip","withdraw_vote_multisig","withdraw_vote_multisig"],"q":[[0,"pallet_inv4"],[13,"pallet_inv4::account_derivation"],[16,"pallet_inv4::dispatch"],[17,"pallet_inv4::fee_handling"],[95,"pallet_inv4::inv4_core"],[97,"pallet_inv4::lookup"],[121,"pallet_inv4::multisig"],[181,"pallet_inv4::origin"],[282,"pallet_inv4::pallet"],[581,"pallet_inv4::pallet::Call"],[603,"pallet_inv4::pallet::Event"],[643,"pallet_inv4::pallet::dispatchables"],[651,"pallet_inv4::pallet::storage_types"],[761,"pallet_inv4::voting"],[881,"pallet_inv4::weights"],[920,"xcm::v3::junctions"],[921,"frame_support::dispatch"],[922,"dyn_clone::sealed"],[923,"core::any"],[924,"alloc::vec"],[925,"parity_scale_codec::error"],[926,"core::result"],[927,"parity_scale_codec::codec"],[928,"parity_scale_codec::codec"],[929,"core::fmt"],[930,"core::fmt"],[931,"alloc::boxed"],[932,"alloc::sync"],[933,"alloc::rc"],[934,"core::option"],[935,"sp_runtime::traits"],[936,"sp_runtime::traits"],[937,"sp_runtime::transaction_validity"],[938,"core::any"],[939,"sp_runtime::traits"],[940,"parity_scale_codec::codec"],[941,"core::fmt"],[942,"frame_support::traits::voting"],[943,"frame_system::pallet_prelude"],[944,"parity_scale_codec::encode_like"],[945,"frame_support::traits::metadata"],[946,"bounded_collections::bounded_vec"],[947,"sp_arithmetic::per_things"],[948,"frame_support::dispatch"],[949,"frame_support::traits::metadata"],[950,"frame_support::traits::storage"],[951,"sp_runtime"],[952,"frame_support::dispatch"]],"d":["","StaticLookup implementor using MultiAddress::Index for …","","","","","","","","","The module that hosts all the FRAME types needed to add …","","Autogenerated weights for pallet_inv4","","","","","Asset to be used by the multisig for paying fees …","","Fee handler trait. This should be implemented properly in …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","StaticLookup implementor using MultiAddress::Index for …","","","","","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","Calls U::from(self).","","","","","","","","","","","","","","","Maximum size of call we store is 50kb.","Details of a multisig operation.","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Origin representing a core by its id.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Provider of assets functionality for the voting tokens","","A core’s voting token was burned","Dispatch functions","Multisig fee payment failed, probably due to lack of funds …","Failed to extract metadata from a call","","Configuration trait of this pallet.","Mapping of account id -> core id.","A core was created","Fee for creating a core in the native token","Integer id type for the core id","","Stores a list of members for each Core. This storage …","Core not found","Base voting token balance to give callers when creating a …","Core info storage.","Currency type","Errors for INV4 pallet","The event emitted by this pallet.","Failed to decode stored multisig call","Implementation of the fee handler for both core creation …","Incomplete vote cleanup","Call is too long","Maximum size of a multisig proposal call","The maximum numbers of caller accounts on a single …","Maximum amount of callers exceeded","The maximum length of the core metadata and the metadata …","Maximum metadata length exceeded","A core’s voting token was minted","Type alias to Pallet, to be used by construct_runtime.","Details of a multisig call.","","Multisig proposal already exists and is being voted on","Multisig call not found","A multisig proposal was cancelled","A multisig proposal passed and it’s call was executed","A vote was added to an existing multisig proposal","A multisig proposal has started, it needs more votes to …","A vote was removed from an existing multisig proposal","Next available Core ID.","No available Core ID","The caller has no permissions in the core","Cannot withdraw a vote on a multisig transaction you have …","The custom core origin.","The pallet implementing the on-chain logic.","ParaId of the parachain, to be used for deriving the core …","A core had parameters changed","Relay token asset id in the runtime","Fee for creating a core in the relay token","The overarching call type","Runtime event type","The outer Origin type.","The current storage version.","Provider of balance tokens in the runtime","Weight info for dispatchable calls","","","","","IPS parentage","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cancel an existing multisig proposal (called by a core …","Cancel an existing multisig proposal (called by a core …","","","","","","","","Mapping of account id -> core id.","","Stores a list of members for each Core. This storage …","Core info storage.","","","Create a new core","Create a new core","","","","","","","","","","","","","","","","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","","","","","","","","","","Inner function for the cancel_multisig_proposal call.","Inner function for the create_core call.","Inner function for the operate_multisig call.","Inner function for the set_parameters call.","Inner function for the token_burn call.","Inner function for the token_mint call.","Inner function for the vote_multisig call.","Inner function for the withdraw_token_multisig call.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","Checks if the voting asset is frozen.","","","IPS metadata","Aye vote percentage required to execute a multisig call.","","","","Details of a multisig call.","","Create a call with the variant cancel_multisig_proposal.","Create a call with the variant create_core.","Create a call with the variant operate_multisig.","Create a call with the variant set_parameters.","Create a call with the variant token_burn.","Create a call with the variant token_mint.","Create a call with the variant vote_multisig.","Create a call with the variant withdraw_vote_multisig.","Next available Core ID.","","","","","","","","Create a new multisig proposal, auto-executing if caller …","Create a new multisig proposal, auto-executing if caller …","","","Change core parameters incl. voting thresholds and token …","Change core parameters incl. voting thresholds and token …","","","","","Auto-generated docs-only module listing all defined …","","","","","","","Burn the core’s voting token from a target (called by a …","Burn the core’s voting token from a target (called by a …","Mint the core’s voting token to a target (called by a …","Mint the core’s voting token to a target (called by a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Vote on an existing multisig proposal, auto-executing if …","Vote on an existing multisig proposal, auto-executing if …","","","","","","","","Remove caller’s vote from an existing multisig proposal","Remove caller’s vote from an existing multisig proposal","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cancel an existing multisig proposal (called by a core …","Create a new core","Create a new multisig proposal, auto-executing if caller …","Change core parameters incl. voting thresholds and token …","Burn the core’s voting token from a target (called by a …","Mint the core’s voting token to a target (called by a …","Vote on an existing multisig proposal, auto-executing if …","Remove caller’s vote from an existing multisig proposal","Mapping of account id -> core id.","Stores a list of members for each Core. This storage …","Core info storage.","Details of a multisig call.","Next available Core ID.","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Aggregated votes for an ongoing poll by members of a core.","","","","","","","","","","","","","Some if the referendum index can be voted on, along with …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Weights for pallet_inv4 using the Substrate node and …","Weight functions needed for pallet_inv4.","","","","","","Storage: INV4 Multisig (r:0 w:1) Proof: INV4 Multisig …","","Storage: INV4 NextCoreId (r:1 w:1) Proof: INV4 NextCoreId …","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Calls U::from(self).","","","","","","","Storage: CoreAssets Accounts (r:1 w:0) Proof: CoreAssets …","","Storage: INV4 CoreStorage (r:1 w:1) Proof: INV4 …","","Storage: CoreAssets Accounts (r:1 w:1) Proof: CoreAssets …","","Storage: CoreAssets Accounts (r:1 w:1) Proof: CoreAssets …","","","","","","","Storage: INV4 Multisig (r:1 w:1) Proof: INV4 Multisig …","","","Storage: INV4 Multisig (r:1 w:1) Proof: INV4 Multisig …"],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,76,76,0,0,0,0,21,2,77,21,2,2,21,2,21,2,2,2,2,21,2,21,2,2,2,2,2,2,2,2,2,2,2,2,2,21,2,21,21,2,2,21,21,2,2,77,2,21,2,21,2,21,2,21,2,21,2,21,2,2,77,77,2,2,2,21,2,21,2,2,2,2,21,2,2,21,2,21,2,21,2,0,0,0,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,0,0,0,0,34,64,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,64,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,64,34,64,34,34,64,34,34,34,34,34,34,34,34,34,34,34,34,34,0,40,0,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,42,40,42,0,40,42,40,40,40,42,42,42,40,42,40,42,40,40,42,42,40,40,42,42,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,42,40,42,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,42,40,42,41,0,50,0,57,57,0,0,0,50,41,41,0,0,57,41,0,41,0,0,57,41,57,57,41,41,57,41,57,50,0,0,79,57,57,50,50,50,50,50,0,57,57,57,0,0,41,50,41,41,41,41,41,0,41,41,49,50,51,49,53,49,49,50,57,51,49,50,57,51,49,50,57,51,50,57,51,50,57,51,49,50,57,51,49,50,57,51,49,51,49,49,50,51,49,50,51,49,49,49,49,49,49,49,51,49,50,57,51,50,57,51,50,57,51,50,57,51,49,49,51,0,50,57,51,49,50,51,49,49,49,50,50,50,51,51,51,49,50,57,51,49,50,57,51,49,49,50,50,57,57,51,51,49,49,50,50,57,57,51,51,53,51,51,51,51,51,50,57,51,49,49,49,49,49,49,49,49,49,49,49,49,50,57,51,49,50,57,51,49,50,57,51,49,50,57,51,49,50,57,51,49,50,57,51,0,49,49,49,53,53,49,49,0,49,49,51,51,51,51,51,51,51,51,49,49,49,49,49,49,49,49,49,51,49,53,49,51,50,57,51,49,0,50,57,51,49,50,51,49,51,49,51,49,49,50,57,51,49,50,57,51,0,0,50,57,51,50,57,51,50,57,51,49,50,57,51,50,57,51,49,50,57,51,49,50,57,51,49,51,49,50,57,51,0,49,57,49,51,80,81,82,83,82,84,85,83,82,84,86,83,87,86,83,87,86,87,86,87,80,81,88,89,90,91,92,93,90,94,95,95,96,88,89,91,92,93,90,94,92,91,92,93,90,96,95,96,95,96,95,96,90,88,89,91,92,93,90,91,92,93,0,0,0,0,0,0,0,0,0,0,0,0,0,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,97,98,98,99,99,100,100,101,101,97,97,98,98,99,99,100,100,101,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,102,74,103,0,0,103,103,102,74,0,0,0,0,103,46,74,103,46,46,74,46,74,103,46,46,46,74,46,74,46,74,46,74,46,74,103,46,74,46,74,46,74,46,74,46,74,46,74,46,46,74,46,74,46,46,46,74,74,74,46,74,46,74,46,46,74,74,46,46,46,74,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,46,46,46,46,74,46,46,74,46,74,103,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,0,0,104,104,104,104,105,104,105,104,104,104,104,104,104,104,104,104,104,104,104,105,104,105,104,105,104,105,104,104,104,104,104,104,105,104,104,105,104],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[]],[2,3],0,0,0,0,0,0,0,0,[[-1,4],5,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[2,2],[[-1,-2],5,[],[]],[-1,[[11,[2,10]]],12],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[2,-1],5,[15,16]],[[2,2],17],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[2,18],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[[[21,[20]]],5],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],[[2,[26,[-1]],27,28,25,29],[[11,[5,30]]],[]],[[2,27,25],[[11,[-1,30]]],[]],[2,25],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[-1,6,[]],[-1,6,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[11,[-2,33]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,31,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,[[-1,4],5,[]],0,0,[-1,6,[]],[-1,6,[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[34,[-1,-2,-3,-4]]],[[34,[-1,-2,-3,-4]]],35,35,35,35],[[-1,-2],5,[],[]],[-1,[[11,[[34,[-2,-3,-4,-5]],10]]],12,36,36,36,[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[[34,[-1,-2,-3,-4]],-5],5,37,37,37,[],[15,16]],[[[34,[-1,-2,-3,-4]],[34,[-1,-2,-3,-4]]],17,38,38,38,38],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],0,0,[[[34,[-1,-2,-3,-4]],18],19,39,39,39,39],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],0,0,0,0,[[[34,[-1,-2,-3,-4]]],25,37,37,37,[]],0,0,[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[[-1,4],5,[]],[[-1,4],5,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[40,[-1]]],[[40,[-1]]],[35,41]],[[[42,[-1]]],[[42,[-1]]],[35,41]],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[-1,[[11,[[40,[-2]],10]]],12,41],[-1,[[11,[[42,[-2]],10]]],12,41],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],[[[42,[-1]]],[[9,[7]]],41],[[[40,[-1]],-2],5,41,[15,16]],[[[42,[-1]],-2],5,41,[15,16]],[-2,[[11,[[42,[-1]],43]]],41,[]],[[[40,[-1]],[40,[-1]]],17,[38,41]],[[[42,[-1]],[42,[-1]]],17,[38,41]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[[40,[-1]],18],19,[39,41]],[[[42,[-1]],18],19,[39,41]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],0,[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],[[],25],[[],[[42,[-1]]],41],[[[40,[-1]]],25,41],[[[42,[-1]]],25,41],[[[42,[-1]]],[],41],[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[[],32],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[42,[-1]],-3],-2,41,[],[[45,[[13,[7]]],[[44,[-2]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,4],5,[]],[[-1,4],5,[]],[[-1,4],5,[]],[[-1,-2,-5],-4,[],[],41,[],[[45,[[47,[[46,[-3]]]]],[[44,[-4]]]]]],0,[[],5],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[[-1,-2],[[26,[[5,[[46,[-3]]]]]]],[],[],41],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[48,[-1]]],3,41],0,[[],[[9,[-1]]],[]],[[[49,[-1]]],[[49,[-1]]],[]],[[[50,[-1]]],[[50,[-1]]],41],[[[51,[-1]]],[[51,[-1]]],41],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[-1,26,52],[[],1],[[-1,-2],[[26,[5]]],52,52],[-1,[[26,[[53,[-2]]]]],52,41],[[],25],[[],54],[[[48,[-1]],[55,[7]],56,56,2],3,41],0,[[],-1,[]],[-1,[[11,[[50,[-2]],10]]],12,41],[-1,[[11,[[57,[-2]],10]]],12,[]],[-1,[[11,[[51,[-2]],10]]],12,41],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],[[[50,[-1]]],5,41],[[]],[[[51,[-1]],-2],3,41,[]],0,[[[50,[-1]],-2],5,41,[15,16]],[[[57,[-1]],-2],5,[],[15,16]],[[[51,[-1]],-2],5,41,[15,16]],[[[49,[-1]],[49,[-1]]],17,[]],[[[50,[-1]],[50,[-1]]],17,41],[[[51,[-1]],[51,[-1]]],17,41],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[[49,[-1]],18],19,[]],[[[50,[-1]],18],19,41],[[[57,[-1]],18],19,41],[[[51,[-1]],18],19,41],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],0,[[[51,[-1]]],7,41],[[],[[13,[7]]]],[[[51,[-1]]],58,41],[[],[[13,[58]]]],[[[51,[-1]]],59,41],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[[],25],[[],[[9,[60]]]],[[[48,[-1]]],3,41],[[[48,[-1]],[55,[7]],56,56,2],61,41],[[[48,[-1]],[26,[[55,[7]]]],2,22],3,41],[[[48,[-1]],[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],61,41],[[[48,[-1]],[62,[-1]]],61,41],[[[48,[-1]],[62,[-1]]],61,41],[[[48,[-1]],17],3,41],[[[48,[-1]]],3,41],[[],5],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[26,[17]]]],[63,26],[[],26],0,0,[[],[[26,[[5,[56,56]]]]]],[[],58],0,[[-1,-2],[[26,[[64,[-3]]]]],52,52,41],[[],58],[[],[[51,[-1]]],41],[[[55,[7]],56,56,2],[[51,[-1]]],41],[[[26,[[55,[7]]]],2,22],[[51,[-1]]],41],[[[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],[[51,[-1]]],41],[[[62,[-1]]],[[51,[-1]]],41],[[[62,[-1]]],[[51,[-1]]],41],[17,[[51,[-1]]],41],[[],[[51,[-1]]],41],[[]],[[],5],[[],65],[[],5],[[],5],[66,66],[[],66],[[],66],[[[48,[-1]],[26,[[55,[7]]]],2,22],3,41],0,[[],5],0,[[[48,[-1]],[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],61,41],0,[[[50,[-1]]],25,41],[[[57,[-1]]],25,[]],[[[51,[-1]]],25,41],[[],[[9,[67]]]],0,[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[48,[-1]],[62,[-1]]],61,41],0,[[[48,[-1]],[62,[-1]]],61,41],0,[[-1,-2,-5],[[11,[-4,68]]],[],[],41,[],[[45,[[47,[[46,[-3]]]]],[[44,[[11,[-4,68]]]]]]]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],0,0,[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[[],32],[[],32],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[48,[-1]],17],3,41],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[9,[69]]]],[[-1,66],[[71,[70]]],[]],[[[48,[-1]]],3,41],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],5],[[[55,[7]],56,56,2],5],[[[26,[[55,[7]]]],2,22],5],[[[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],5],[[[62,[-1]]],5,41],[[[62,[-1]]],5,41],[17,5],[[],5],0,0,0,0,0,[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,4],5,[]],[[-1,4],5,[]],[[-1,-2,-6],-5,[],[],[],[],[],[[45,[[47,[-3,-4,-1]]],[[44,[-5]]]]]],[[[46,[-1]],[72,[-1]]],56,41],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[[-1,-2],[[26,[[5,[-3,-1]]]]],[],[],[]],[[[46,[-1]],[72,[-1]]],[[73,[-1]]],41],0,[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],[[9,[-1]]],[]],[[[46,[-1]]],[[46,[-1]]],41],[[[74,[-1]]],[[74,[-1]]],35],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[-1,[[11,[[46,[-2]],10]]],12,41],[-1,[[11,[[74,[-2]],10]]],12,36],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],0,[[[46,[-1]],-2],5,41,[15,16]],[[[74,[-1]],-2],5,37,[15,16]],[[[46,[-1]],[46,[-1]]],17,41],[[[74,[-1]],[74,[-1]]],17,38],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[[46,[-1]],18],19,41],[[[74,[-1]],18],19,39],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[[[73,[-1]],[73,[-1]],[75,[[74,[[73,[-1]]]]]]],[[46,[-1]]],41],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],[[],25],0,[[[72,[-1]]],[[46,[-1]]],41],[[[46,[-1]],[26,[[74,[[73,[-1]]]]]]],[[11,[[74,[[73,[-1]]]],68]]],41],0,[[[46,[-1]]],25,41],[[[74,[-1]]],25,37],[[[46,[-1]],[72,[-1]]],56,41],[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[-1,-2,-6],[[11,[-5,68]]],[],[],[],[],[],[[45,[[47,[-3,-4,-1]]],[[44,[[11,[-5,68]]]]]]]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[[],32],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[-1,6,[]],[-1,6,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],66],[[],66],[14,66],[14,66],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[14,14],66],[[14,14],66],[14,66],[14,66],[[],66],[[],66],[[],66],[[],66],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,31,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],66],[[],66],[-1,-2,[],[]],[[],66],[[],66]],"c":[312],"p":[[6,"Junctions",920],[6,"FeeAsset",17],[8,"DispatchResultWithPostInfo",921],[5,"Private",922],[1,"tuple"],[10,"Any",923],[1,"u8"],[1,"array"],[5,"Vec",924],[5,"Error",925],[6,"Result",926],[10,"Input",927],[1,"slice"],[1,"u32"],[10,"Output",927],[10,"Sized",928],[1,"bool"],[5,"Formatter",929],[8,"Result",929],[8,"Credit",930],[6,"FeeAssetNegativeImbalance",17],[5,"Box",931],[5,"Arc",932],[5,"Rc",933],[1,"usize"],[6,"Option",934],[8,"DispatchInfoOf",935],[8,"PostDispatchInfoOf",935],[8,"DispatchResult",936],[6,"TransactionValidityError",937],[5,"TypeId",923],[5,"Type",938],[5,"LookupError",935],[5,"MultisigOperation",121],[10,"Clone",939],[10,"Decode",927],[10,"Encode",927],[10,"PartialEq",940],[10,"Debug",929],[6,"INV4Origin",181],[10,"Config",282],[5,"MultisigInternalOrigin",181],[5,"BadOrigin",935],[17,"Output"],[10,"FnOnce",941],[5,"Tally",761],[6,"PollStatus",942],[8,"OriginFor",943],[5,"Pallet",282],[6,"Event",282],[6,"Call",282],[10,"EncodeLike",944],[8,"CoreInfoOf",282],[5,"CrateVersion",945],[5,"BoundedVec",946],[5,"Perbill",947],[6,"Error",282],[1,"str"],[5,"DispatchInfo",921],[5,"PalletInfoData",945],[8,"DispatchResult",921],[8,"BalanceOf",282],[6,"MultiAddress",948],[8,"MultisigOperationOf",121],[5,"StorageVersion",945],[5,"Weight",949],[5,"StorageInfo",950],[6,"DispatchError",936],[5,"TrackedStorageKey",951],[5,"PostDispatchInfo",921],[5,"DispatchErrorWithPostInfo",936],[8,"Core",761],[8,"Votes",761],[6,"Vote",761],[5,"BoundedBTreeMap",952],[10,"CoreAccountDerivation",13],[10,"MultisigFeeHandler",17],[5,"INV4Lookup",97],[8,"Origin",282],[15,"token_mint",581],[15,"token_burn",581],[15,"vote_multisig",581],[15,"operate_multisig",581],[15,"withdraw_vote_multisig",581],[15,"cancel_multisig_proposal",581],[15,"create_core",581],[15,"set_parameters",581],[15,"Minted",603],[15,"Burned",603],[15,"MultisigExecuted",603],[15,"MultisigVoteStarted",603],[15,"MultisigVoteAdded",603],[15,"MultisigVoteWithdrawn",603],[15,"MultisigCanceled",603],[15,"CoreCreated",603],[15,"ParametersSet",603],[5,"NextCoreId",651],[5,"CoreStorage",651],[5,"CoreByAccount",651],[5,"Multisig",651],[5,"CoreMembers",651],[8,"VoteRecord",761],[10,"CustomPolling",761],[5,"SubstrateWeight",881],[10,"WeightInfo",881]],"b":[]},\ +"pallet_inv4":{"doc":"Pallet INV4","t":"EFECCCCCCCCCCKMMHGGKPPRPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNMMNNNNNNNNNNNNNNNNNNNIIFNNNNNNNNNNNNNNNNNNNNNNNISFINOONNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNOOOONOONNNNNNNNNNNNGPFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNRIPGPPIKIPRRIIPRIRGGPRPPRRPRPPIIPPPPPPPPIPPPIFRPRRRRRSRRNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNPNNNNNNNNNNNNNNPNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNOONNENNNNNNNNNNNNNNNNNNNPNONPNNNNCNNNNNNNPNPNNNNNNNNNEENNNNNNNNNNNNNNNNNNNNNNNNNPNNNNCNNNPOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOHHHHHHHHFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPRIKRRPPFGIIRNNMNNNNNMNONNNNNNNNNNMNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNONNNNNNNMNNNNNNNNNNNNNNNNNNNNFKNNNNMNMNNNNNNNNNNNNMNMNMNMNNNNNNMNNMN","n":["CoreAccountDerivation","INV4Lookup","WeightInfo","account_derivation","dispatch","fee_handling","inv4_core","lookup","multisig","origin","pallet","voting","weights","CoreAccountDerivation","core_location","derive_core_account","dispatch_call","FeeAsset","FeeAssetNegativeImbalance","MultisigFeeHandler","Native","Native","Pre","Relay","Relay","__clone_box","as_any","as_any","as_any_mut","as_any_mut","blake2_128","blake2_128_concat","blake2_256","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","decode","decode_all","decode_all_with_depth_limit","decode_with_depth_limit","encode_to","eq","equivalent","equivalent","equivalent","fmt","from","from","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","handle_creation_fee","identity","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","max_encoded_len","post_dispatch","pre_dispatch","size_hint","to_keyed_vec","to_owned","try_from","try_from","try_into","try_into","twox_128","twox_256","twox_64_concat","type_id","type_id","type_info","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","vzip","vzip","CoreIndexOf","CoreMetadataOf","INV4Lookup","as_any","as_any_mut","borrow","borrow_mut","from","from_mut","from_mut","from_ref","from_ref","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","lookup","try_from","try_into","type_id","unchecked_into","unique_saturated_into","unlookup","vzip","BoundedCallBytes","MAX_SIZE","MultisigOperation","MultisigOperationOf","__clone_box","actual_call","actual_call","as_any","as_any_mut","blake2_128","blake2_128_concat","blake2_256","borrow","borrow_mut","clone","clone_into","decode","decode_all","decode_all_with_depth_limit","decode_with_depth_limit","encode_to","eq","equivalent","equivalent","equivalent","fee_asset","fee_asset","fmt","from","from_mut","from_mut","from_ref","from_ref","identity","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","max_encoded_len","metadata","metadata","original_caller","original_caller","size_hint","tally","tally","to_keyed_vec","to_owned","try_from","try_into","twox_128","twox_256","twox_64_concat","type_id","type_info","unchecked_into","unique_saturated_into","vzip","INV4Origin","Multisig","MultisigInternalOrigin","__clone_box","__clone_box","as_any","as_any","as_any_mut","as_any_mut","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","decode","decode","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","encode","encode_to","encode_to","ensure_multisig","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","id","identity","identity","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","max_encoded_len","max_encoded_len","new","size_hint","size_hint","to_account_id","to_keyed_vec","to_keyed_vec","to_owned","to_owned","try_from","try_from","try_into","try_into","twox_128","twox_128","twox_256","twox_256","twox_64_concat","twox_64_concat","type_id","type_id","type_info","type_info","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","using_encoded","vzip","vzip","AssetsProvider","BalanceOf","Burned","Call","CallFeePaymentFailed","CallHasTooFewBytes","CallOf","Config","CoreByAccount","CoreCreated","CoreCreationFee","CoreId","CoreInfoOf","CoreMembers","CoreNotFound","CoreSeedBalance","CoreStorage","Currency","Error","Event","FailedDecodingCall","FeeCharger","IncompleteVoteCleanup","MaxCallLengthExceeded","MaxCallSize","MaxCallers","MaxCallersExceeded","MaxMetadata","MaxMetadataExceeded","Minted","Module","Multisig","Multisig","MultisigCallAlreadyExists","MultisigCallNotFound","MultisigCanceled","MultisigExecuted","MultisigVoteAdded","MultisigVoteStarted","MultisigVoteWithdrawn","NextCoreId","NoAvailableCoreId","NoPermission","NotAVoter","Origin","Pallet","ParaId","ParametersSet","RelayAssetId","RelayCoreCreationFee","RuntimeCall","RuntimeEvent","RuntimeOrigin","STORAGE_VERSION","Tokens","WeightInfo","__clone_box","__clone_box","__clone_box","access_poll","account","add_member","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_ongoing","blake2_128","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","blake2_256","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cancel_multisig_proposal","cancel_multisig_proposal","classes","clone","clone","clone","clone_into","clone_into","clone_into","core_by_account","core_location","core_members","core_storage","count","crate_version","create_core","create_core","current_storage_version","decode","decode","decode","decode_all","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","deposit_event","derive_core_account","dispatch_bypass_filter","dispatchables","encode_to","encode_to","encode_to","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","frozen_tokens","get_call_index","get_call_indices","get_call_name","get_call_names","get_dispatch_info","identity","identity","identity","index","infos","inner_cancel_multisig_proposal","inner_create_core","inner_operate_multisig","inner_set_parameters","inner_token_burn","inner_token_mint","inner_vote_multisig","inner_withdraw_vote_multisig","integrity_test","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","inv4_core","is_asset_frozen","lookup_address","lookup_core","metadata","minimum_support","minimum_support_and_required_approval","module_name","multisig","multisig","name","new_call_variant_cancel_multisig_proposal","new_call_variant_create_core","new_call_variant_operate_multisig","new_call_variant_set_parameters","new_call_variant_token_burn","new_call_variant_token_mint","new_call_variant_vote_multisig","new_call_variant_withdraw_vote_multisig","next_core_id","offchain_worker","on_chain_storage_version","on_finalize","on_genesis","on_idle","on_initialize","on_runtime_upgrade","operate_multisig","operate_multisig","remove_member","required_approval","set_parameters","set_parameters","size_hint","size_hint","size_hint","storage_info","storage_types","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_owned","to_owned","to_owned","token_burn","token_burn","token_mint","token_mint","try_access_poll","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","tt_default_parts","tt_error_token","twox_128","twox_128","twox_128","twox_256","twox_256","twox_256","twox_64_concat","twox_64_concat","twox_64_concat","type_id","type_id","type_id","type_id","type_info","type_info","type_info","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vote_multisig","vote_multisig","vzip","vzip","vzip","vzip","warnings","whitelisted_storage_keys","with_weight","withdraw_vote_multisig","withdraw_vote_multisig","amount","amount","aye","call","call_hash","call_hash","call_hash","core_id","core_id","core_id","creation_fee_asset","fee_asset","frozen_tokens","metadata","metadata","metadata","minimum_support","minimum_support","required_approval","required_approval","target","target","amount","amount","call","call_hash","call_hash","call_hash","call_hash","call_hash","core_account","core_id","core_id","core_id","core_id","core_id","core_id","core_id","core_id","core_id","current_votes","executor_account","executor_account","executor_account","executor_account","frozen_tokens","metadata","metadata","minimum_support","minimum_support","required_approval","required_approval","result","target","target","voter","voter","voter","voter","votes_added","votes_added","votes_removed","cancel_multisig_proposal","create_core","operate_multisig","set_parameters","token_burn","token_mint","vote_multisig","withdraw_vote_multisig","CoreByAccount","CoreMembers","CoreStorage","Multisig","NextCoreId","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","from","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","into_ref","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vzip","vzip","vzip","vzip","vzip","Aye","Aye","Class","Core","CustomPolling","Index","Moment","Nay","Nay","Tally","Vote","VoteRecord","Votes","Votes","__clone_box","__clone_box","access_poll","approval","as_any","as_any","as_any_mut","as_any_mut","as_ongoing","ayes","ayes","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","borrow","borrow","borrow_mut","borrow_mut","classes","clone","clone","clone_into","clone_into","decode","decode","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","dummy","encode_to","encode_to","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from_mut","from_mut","from_mut","from_mut","from_parts","from_ref","from_ref","from_ref","from_ref","identity","identity","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","max_encoded_len","max_encoded_len","nays","new","process_vote","records","size_hint","size_hint","support","to_keyed_vec","to_keyed_vec","to_owned","to_owned","try_access_poll","try_from","try_from","try_into","try_into","twox_128","twox_128","twox_256","twox_256","twox_64_concat","twox_64_concat","type_id","type_id","type_info","type_info","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","vzip","vzip","SubstrateWeight","WeightInfo","as_any","as_any_mut","borrow","borrow_mut","cancel_multisig_proposal","cancel_multisig_proposal","create_core","create_core","from","from_mut","from_mut","from_ref","from_ref","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","operate_multisig","operate_multisig","set_parameters","set_parameters","token_burn","token_burn","token_mint","token_mint","try_from","try_into","type_id","unchecked_into","unique_saturated_into","vote_multisig","vote_multisig","vzip","withdraw_vote_multisig","withdraw_vote_multisig"],"q":[[0,"pallet_inv4"],[13,"pallet_inv4::account_derivation"],[16,"pallet_inv4::dispatch"],[17,"pallet_inv4::fee_handling"],[95,"pallet_inv4::inv4_core"],[97,"pallet_inv4::lookup"],[121,"pallet_inv4::multisig"],[181,"pallet_inv4::origin"],[282,"pallet_inv4::pallet"],[581,"pallet_inv4::pallet::Call"],[603,"pallet_inv4::pallet::Event"],[643,"pallet_inv4::pallet::dispatchables"],[651,"pallet_inv4::pallet::storage_types"],[761,"pallet_inv4::voting"],[881,"pallet_inv4::weights"],[920,"xcm::v3::junctions"],[921,"frame_support::dispatch"],[922,"dyn_clone::sealed"],[923,"core::any"],[924,"alloc::vec"],[925,"parity_scale_codec::error"],[926,"core::result"],[927,"parity_scale_codec::codec"],[928,"parity_scale_codec::codec"],[929,"core::fmt"],[930,"core::fmt"],[931,"alloc::boxed"],[932,"alloc::sync"],[933,"alloc::rc"],[934,"core::option"],[935,"sp_runtime::traits"],[936,"sp_runtime::traits"],[937,"sp_runtime::transaction_validity"],[938,"core::any"],[939,"sp_runtime::traits"],[940,"parity_scale_codec::codec"],[941,"core::fmt"],[942,"frame_support::traits::voting"],[943,"frame_system::pallet_prelude"],[944,"parity_scale_codec::encode_like"],[945,"frame_support::traits::metadata"],[946,"bounded_collections::bounded_vec"],[947,"sp_arithmetic::per_things"],[948,"frame_support::dispatch"],[949,"frame_support::traits::metadata"],[950,"frame_support::traits::storage"],[951,"sp_runtime"],[952,"frame_support::dispatch"]],"d":["","StaticLookup implementor using MultiAddress::Index for …","","Core Account Derivation.","Dispatches calls internally, charging fees to the multisig …","MultisigFeeHandler trait.","Core creation and internal management.","Custom account lookup implementation.","Multisig Operations.","Custom Multisig Origin (INV4Origin).","The module that hosts all the FRAME types needed to add …","Voting Mechanism.","Autogenerated weights for pallet_inv4","Trait providing the XCM location and the derived account …","Specifies a core’s location.","Derives the core’s AccountId.","Dispatch a call executing pre/post dispatch for proper fee …","Represents the asset to be used by the multisig for paying …","Represents a potential negative asset balance incurred …","Fee handler trait.","","","Type returned by pre_dispatch - implementation dependent.","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Charges the fee for creating the core (multisig).","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Charges the call dispatching fee from the multisig …","Checks if the fee can be paid using the selected asset.","","","","","","","","","","","","","","","","","","","","","","StaticLookup implementor using MultiAddress::Index for …","","","","","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","Calls U::from(self).","","","","","","","","","","","","","","","Maximum size of call we store is 50kb.","Details of a multisig operation.","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Origin representing a core by its id.","","Internal origin for identifying the multisig CoreId.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Ensures the passed origin is a multisig, returning …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Provider of assets functionality for the voting tokens","","A core’s voting token was burned","Dispatch functions","Multisig fee payment failed, probably due to lack of funds …","Failed to extract metadata from a call","","Configuration trait of this pallet.","Mapping of account id -> core id.","A core was created","Fee for creating a core in the native token","Integer id type for the core id","","Stores a list of members for each Core. This storage …","Core not found","Base voting token balance to give callers when creating a …","Core info storage.","Currency type","Errors for INV4 pallet","The event emitted by this pallet.","Failed to decode stored multisig call","Implementation of the fee handler for both core creation …","Incomplete vote cleanup","Call is too long","Maximum size of a multisig proposal call","The maximum numbers of caller accounts on a single …","Maximum amount of callers exceeded","The maximum length of the core metadata and the metadata …","Maximum metadata length exceeded","A core’s voting token was minted","Type alias to Pallet, to be used by construct_runtime.","Details of a multisig call.","","Multisig proposal already exists and is being voted on","Multisig call not found","A multisig proposal was cancelled","A multisig proposal passed and it’s call was executed","A vote was added to an existing multisig proposal","A multisig proposal has started, it needs more votes to …","A vote was removed from an existing multisig proposal","Next available Core ID.","No available Core ID","The caller has no permissions in the core","Cannot withdraw a vote on a multisig transaction you have …","The custom core origin.","The pallet implementing the on-chain logic.","ParaId of the parachain, to be used for deriving the core …","A core had parameters changed","Relay token asset id in the runtime","Fee for creating a core in the relay token","The overarching call type","Runtime event type","The outer Origin type.","The current storage version.","Provider of balance tokens in the runtime","Weight info for dispatchable calls","","","","","IPS parentage","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cancel an existing multisig proposal (called by a core …","Cancel an existing multisig proposal (called by a core …","","","","","","","","Mapping of account id -> core id.","Core location is defined as a plurality within the …","Stores a list of members for each Core. This storage …","Core info storage.","","","Create a new core","Create a new core","","","","","","","","","","","","","","","HashedDescription of the core location from the …","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","","","","","","","","","","Inner function for the cancel_multisig_proposal call.","Inner function for the create_core call.","Inner function for the operate_multisig call.","Inner function for the set_parameters call.","Inner function for the token_burn call.","Inner function for the token_mint call.","Inner function for the vote_multisig call.","Inner function for the withdraw_token_multisig call.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","Checks if the voting asset is frozen.","Matches MultiAddress to allow for a MultiAddress::Index …","Queries CoreStorage to retrieve the AccountId of a core.","IPS metadata","Aye vote percentage required to execute a multisig call.","Returns the minimum support and required approval …","","","Details of a multisig call.","","Create a call with the variant cancel_multisig_proposal.","Create a call with the variant create_core.","Create a call with the variant operate_multisig.","Create a call with the variant set_parameters.","Create a call with the variant token_burn.","Create a call with the variant token_mint.","Create a call with the variant vote_multisig.","Create a call with the variant withdraw_vote_multisig.","Next available Core ID.","","","","","","","","Create a new multisig proposal, auto-executing if caller …","Create a new multisig proposal, auto-executing if caller …","","","Change core parameters incl. voting thresholds and token …","Change core parameters incl. voting thresholds and token …","","","","","Auto-generated docs-only module listing all defined …","","","","","","","Burn the core’s voting token from a target (called by a …","Burn the core’s voting token from a target (called by a …","Mint the core’s voting token to a target (called by a …","Mint the core’s voting token to a target (called by a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Vote on an existing multisig proposal, auto-executing if …","Vote on an existing multisig proposal, auto-executing if …","","","","","","","","Remove caller’s vote from an existing multisig proposal","Remove caller’s vote from an existing multisig proposal","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cancel an existing multisig proposal (called by a core …","Create a new core","Create a new multisig proposal, auto-executing if caller …","Change core parameters incl. voting thresholds and token …","Burn the core’s voting token from a target (called by a …","Mint the core’s voting token to a target (called by a …","Vote on an existing multisig proposal, auto-executing if …","Remove caller’s vote from an existing multisig proposal","Mapping of account id -> core id.","Stores a list of members for each Core. This storage …","Core info storage.","Details of a multisig call.","Next available Core ID.","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Aggregated votes for an ongoing poll by members of a core.","Represents a proposal vote within a multisig context.","Type alias for Vote with BalanceOf.","","","","","","","","","","","Some if the referendum index can be voted on, along with …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Allows for building a Tally manually.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","Check if a vote is valid and add the member’s total …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Weights for pallet_inv4 using the Substrate node and …","Weight functions needed for pallet_inv4.","","","","","","Storage: INV4 Multisig (r:0 w:1) Proof: INV4 Multisig …","","Storage: INV4 NextCoreId (r:1 w:1) Proof: INV4 NextCoreId …","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Calls U::from(self).","","","","","","","Storage: CoreAssets Accounts (r:1 w:0) Proof: CoreAssets …","","Storage: INV4 CoreStorage (r:1 w:1) Proof: INV4 …","","Storage: CoreAssets Accounts (r:1 w:1) Proof: CoreAssets …","","Storage: CoreAssets Accounts (r:1 w:1) Proof: CoreAssets …","","","","","","","Storage: INV4 Multisig (r:1 w:1) Proof: INV4 Multisig …","","","Storage: INV4 Multisig (r:1 w:1) Proof: INV4 Multisig …"],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,76,76,0,0,0,0,21,2,77,21,2,2,21,2,21,2,2,2,2,21,2,21,2,2,2,2,2,2,2,2,2,2,2,2,2,21,2,21,21,2,2,21,21,2,2,77,2,21,2,21,2,21,2,21,2,21,2,21,2,2,77,77,2,2,2,21,2,21,2,2,2,2,21,2,2,21,2,21,2,21,2,0,0,0,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,0,0,0,0,34,64,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,64,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,64,34,64,34,34,64,34,34,34,34,34,34,34,34,34,34,34,34,34,0,40,0,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,42,40,42,0,40,42,40,40,40,42,42,42,40,42,40,42,40,40,42,42,40,40,42,42,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,42,40,42,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,40,42,42,40,42,41,0,50,0,57,57,0,0,0,50,41,41,0,0,57,41,0,41,0,0,57,41,57,57,41,41,57,41,57,50,0,0,79,57,57,50,50,50,50,50,0,57,57,57,0,0,41,50,41,41,41,41,41,0,41,41,49,50,51,49,53,49,49,50,57,51,49,50,57,51,49,50,57,51,50,57,51,50,57,51,49,50,57,51,49,50,57,51,49,51,49,49,50,51,49,50,51,49,49,49,49,49,49,49,51,49,50,57,51,50,57,51,50,57,51,50,57,51,49,49,51,0,50,57,51,49,50,51,49,49,49,50,50,50,51,51,51,49,50,57,51,49,50,57,51,49,49,50,50,57,57,51,51,49,49,50,50,57,57,51,51,53,51,51,51,51,51,50,57,51,49,49,49,49,49,49,49,49,49,49,49,49,50,57,51,49,50,57,51,49,50,57,51,49,50,57,51,49,50,57,51,49,50,57,51,0,49,49,49,53,53,49,49,0,49,49,51,51,51,51,51,51,51,51,49,49,49,49,49,49,49,49,49,51,49,53,49,51,50,57,51,49,0,50,57,51,49,50,51,49,51,49,51,49,49,50,57,51,49,50,57,51,0,0,50,57,51,50,57,51,50,57,51,49,50,57,51,50,57,51,49,50,57,51,49,50,57,51,49,51,49,50,57,51,0,49,57,49,51,80,81,82,83,82,84,85,83,82,84,86,83,87,86,83,87,86,87,86,87,80,81,88,89,90,91,92,93,90,94,95,95,96,88,89,91,92,93,90,94,92,91,92,93,90,96,95,96,95,96,95,96,90,88,89,91,92,93,90,91,92,93,0,0,0,0,0,0,0,0,0,0,0,0,0,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,97,98,98,99,99,100,100,101,101,97,97,98,98,99,99,100,100,101,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,97,98,99,100,101,102,74,103,0,0,103,103,102,74,0,0,0,0,103,46,74,103,46,46,74,46,74,103,46,46,46,74,46,74,46,74,46,74,46,74,103,46,74,46,74,46,74,46,74,46,74,46,74,46,46,74,46,74,46,46,46,74,74,74,46,74,46,74,46,46,74,74,46,46,46,74,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,46,46,46,46,74,46,46,74,46,74,103,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,46,74,0,0,104,104,104,104,105,104,105,104,104,104,104,104,104,104,104,104,104,104,104,105,104,105,104,105,104,105,104,104,104,104,104,104,105,104,104,105,104],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[]],[2,3],0,0,0,0,0,0,0,0,[[-1,4],5,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[2,2],[[-1,-2],5,[],[]],[-1,[[11,[2,10]]],12],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[2,-1],5,[15,16]],[[2,2],17],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[2,18],19],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[[[21,[20]]],5],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],[[2,[26,[-1]],27,28,25,29],[[11,[5,30]]],[]],[[2,27,25],[[11,[-1,30]]],[]],[2,25],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[-1,6,[]],[-1,6,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[11,[-2,33]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,31,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,[[-1,4],5,[]],0,0,[-1,6,[]],[-1,6,[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[34,[-1,-2,-3,-4]]],[[34,[-1,-2,-3,-4]]],35,35,35,35],[[-1,-2],5,[],[]],[-1,[[11,[[34,[-2,-3,-4,-5]],10]]],12,36,36,36,[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[[34,[-1,-2,-3,-4]],-5],5,37,37,37,[],[15,16]],[[[34,[-1,-2,-3,-4]],[34,[-1,-2,-3,-4]]],17,38,38,38,38],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],0,0,[[[34,[-1,-2,-3,-4]],18],19,39,39,39,39],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],0,0,0,0,[[[34,[-1,-2,-3,-4]]],25,37,37,37,[]],0,0,[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[[-1,4],5,[]],[[-1,4],5,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[40,[-1]]],[[40,[-1]]],[35,41]],[[[42,[-1]]],[[42,[-1]]],[35,41]],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[-1,[[11,[[40,[-2]],10]]],12,41],[-1,[[11,[[42,[-2]],10]]],12,41],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],[[[42,[-1]]],[[9,[7]]],41],[[[40,[-1]],-2],5,41,[15,16]],[[[42,[-1]],-2],5,41,[15,16]],[-2,[[11,[[42,[-1]],43]]],41,[]],[[[40,[-1]],[40,[-1]]],17,[38,41]],[[[42,[-1]],[42,[-1]]],17,[38,41]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[[40,[-1]],18],19,[39,41]],[[[42,[-1]],18],19,[39,41]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],0,[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],[[],25],[[],[[42,[-1]]],41],[[[40,[-1]]],25,41],[[[42,[-1]]],25,41],[[[42,[-1]]],[],41],[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[[],32],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[42,[-1]],-3],-2,41,[],[[45,[[13,[7]]],[[44,[-2]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,4],5,[]],[[-1,4],5,[]],[[-1,4],5,[]],[[-1,-2,-5],-4,[],[],41,[],[[45,[[47,[[46,[-3]]]]],[[44,[-4]]]]]],0,[[],5],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[[-1,-2],[[26,[[5,[[46,[-3]]]]]]],[],[],41],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[48,[-1]]],3,41],0,[[],[[9,[-1]]],[]],[[[49,[-1]]],[[49,[-1]]],[]],[[[50,[-1]]],[[50,[-1]]],41],[[[51,[-1]]],[[51,[-1]]],41],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[-1,26,52],[[],1],[[-1,-2],[[26,[5]]],52,52],[-1,[[26,[[53,[-2]]]]],52,41],[[],25],[[],54],[[[48,[-1]],[55,[7]],56,56,2],3,41],0,[[],-1,[]],[-1,[[11,[[50,[-2]],10]]],12,41],[-1,[[11,[[57,[-2]],10]]],12,[]],[-1,[[11,[[51,[-2]],10]]],12,41],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],[[[50,[-1]]],5,41],[[]],[[[51,[-1]],-2],3,41,[]],0,[[[50,[-1]],-2],5,41,[15,16]],[[[57,[-1]],-2],5,[],[15,16]],[[[51,[-1]],-2],5,41,[15,16]],[[[49,[-1]],[49,[-1]]],17,[]],[[[50,[-1]],[50,[-1]]],17,41],[[[51,[-1]],[51,[-1]]],17,41],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[[49,[-1]],18],19,[]],[[[50,[-1]],18],19,41],[[[57,[-1]],18],19,41],[[[51,[-1]],18],19,41],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],0,[[[51,[-1]]],7,41],[[],[[13,[7]]]],[[[51,[-1]]],58,41],[[],[[13,[58]]]],[[[51,[-1]]],59,41],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[[],25],[[],[[9,[60]]]],[[[48,[-1]]],3,41],[[[48,[-1]],[55,[7]],56,56,2],61,41],[[[48,[-1]],[26,[[55,[7]]]],2,22],3,41],[[[48,[-1]],[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],61,41],[[[48,[-1]],[62,[-1]]],61,41],[[[48,[-1]],[62,[-1]]],61,41],[[[48,[-1]],17],3,41],[[[48,[-1]]],3,41],[[],5],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[26,[17]]]],[63,26],[[],26],0,0,[[],[[26,[[5,[56,56]]]]]],[[],58],0,[[-1,-2],[[26,[[64,[-3]]]]],52,52,41],[[],58],[[],[[51,[-1]]],41],[[[55,[7]],56,56,2],[[51,[-1]]],41],[[[26,[[55,[7]]]],2,22],[[51,[-1]]],41],[[[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],[[51,[-1]]],41],[[[62,[-1]]],[[51,[-1]]],41],[[[62,[-1]]],[[51,[-1]]],41],[17,[[51,[-1]]],41],[[],[[51,[-1]]],41],[[]],[[],5],[[],65],[[],5],[[],5],[66,66],[[],66],[[],66],[[[48,[-1]],[26,[[55,[7]]]],2,22],3,41],0,[[],5],0,[[[48,[-1]],[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],61,41],0,[[[50,[-1]]],25,41],[[[57,[-1]]],25,[]],[[[51,[-1]]],25,41],[[],[[9,[67]]]],0,[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[48,[-1]],[62,[-1]]],61,41],0,[[[48,[-1]],[62,[-1]]],61,41],0,[[-1,-2,-5],[[11,[-4,68]]],[],[],41,[],[[45,[[47,[[46,[-3]]]]],[[44,[[11,[-4,68]]]]]]]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],0,0,[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[[],32],[[],32],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[48,[-1]],17],3,41],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[9,[69]]]],[[-1,66],[[71,[70]]],[]],[[[48,[-1]]],3,41],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],5],[[[55,[7]],56,56,2],5],[[[26,[[55,[7]]]],2,22],5],[[[26,[[55,[7]]]],[26,[56]],[26,[56]],[26,[17]]],5],[[[62,[-1]]],5,41],[[[62,[-1]]],5,41],[17,5],[[],5],0,0,0,0,0,[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,31,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,4],5,[]],[[-1,4],5,[]],[[-1,-2,-6],-5,[],[],[],[],[],[[45,[[47,[-3,-4,-1]]],[[44,[-5]]]]]],[[[46,[-1]],[72,[-1]]],56,41],[-1,6,[]],[-1,6,[]],[-1,6,[]],[-1,6,[]],[[-1,-2],[[26,[[5,[-3,-1]]]]],[],[],[]],[[[46,[-1]],[72,[-1]]],[[73,[-1]]],41],0,[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],[[9,[-1]]],[]],[[[46,[-1]]],[[46,[-1]]],41],[[[74,[-1]]],[[74,[-1]]],35],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[-1,[[11,[[46,[-2]],10]]],12,41],[-1,[[11,[[74,[-2]],10]]],12,36],[[[13,[7]]],[[11,[-1,10]]],[]],[[[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,[13,[7]]],[[11,[-1,10]]],[]],[[14,-1],[[11,[-2,10]]],12,[]],[[14,-1],[[11,[-2,10]]],12,[]],0,[[[46,[-1]],-2],5,41,[15,16]],[[[74,[-1]],-2],5,37,[15,16]],[[[46,[-1]],[46,[-1]]],17,41],[[[74,[-1]],[74,[-1]]],17,38],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[-1,-2],17,[],[]],[[[46,[-1]],18],19,41],[[[74,[-1]],18],19,39],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[[[73,[-1]],[73,[-1]],[75,[[74,[[73,[-1]]]]]]],[[46,[-1]]],41],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],25],[[],25],0,[[[72,[-1]]],[[46,[-1]]],41],[[[46,[-1]],[26,[[74,[[73,[-1]]]]]]],[[11,[[74,[[73,[-1]]]],68]]],41],0,[[[46,[-1]]],25,41],[[[74,[-1]]],25,37],[[[46,[-1]],[72,[-1]]],56,41],[[-1,[13,[7]]],[[9,[7]]],[]],[[-1,[13,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[-1,-2,-6],[[11,[-5,68]]],[],[],[],[],[],[[45,[[47,[-3,-4,-1]]],[[44,[[11,[-5,68]]]]]]]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,31,[]],[-1,31,[]],[[],32],[[],32],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[-1,6,[]],[-1,6,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],66],[[],66],[14,66],[14,66],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[[[22,[-1]]],[[22,[6]]],[]],[[[23,[-1]]],[[23,[6]]],[]],[[[24,[-1]]],[[24,[6]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[14,14],66],[[14,14],66],[14,66],[14,66],[[],66],[[],66],[[],66],[[],66],[-1,[[11,[-2]]],[],[]],[-1,[[11,[-2]]],[],[]],[-1,31,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],66],[[],66],[-1,-2,[],[]],[[],66],[[],66]],"c":[312],"p":[[6,"Junctions",920],[6,"FeeAsset",17],[8,"DispatchResultWithPostInfo",921],[5,"Private",922],[1,"tuple"],[10,"Any",923],[1,"u8"],[1,"array"],[5,"Vec",924],[5,"Error",925],[6,"Result",926],[10,"Input",927],[1,"slice"],[1,"u32"],[10,"Output",927],[10,"Sized",928],[1,"bool"],[5,"Formatter",929],[8,"Result",929],[8,"Credit",930],[6,"FeeAssetNegativeImbalance",17],[5,"Box",931],[5,"Arc",932],[5,"Rc",933],[1,"usize"],[6,"Option",934],[8,"DispatchInfoOf",935],[8,"PostDispatchInfoOf",935],[8,"DispatchResult",936],[6,"TransactionValidityError",937],[5,"TypeId",923],[5,"Type",938],[5,"LookupError",935],[5,"MultisigOperation",121],[10,"Clone",939],[10,"Decode",927],[10,"Encode",927],[10,"PartialEq",940],[10,"Debug",929],[6,"INV4Origin",181],[10,"Config",282],[5,"MultisigInternalOrigin",181],[5,"BadOrigin",935],[17,"Output"],[10,"FnOnce",941],[5,"Tally",761],[6,"PollStatus",942],[8,"OriginFor",943],[5,"Pallet",282],[6,"Event",282],[6,"Call",282],[10,"EncodeLike",944],[8,"CoreInfoOf",282],[5,"CrateVersion",945],[5,"BoundedVec",946],[5,"Perbill",947],[6,"Error",282],[1,"str"],[5,"DispatchInfo",921],[5,"PalletInfoData",945],[8,"DispatchResult",921],[8,"BalanceOf",282],[6,"MultiAddress",948],[8,"MultisigOperationOf",121],[5,"StorageVersion",945],[5,"Weight",949],[5,"StorageInfo",950],[6,"DispatchError",936],[5,"TrackedStorageKey",951],[5,"PostDispatchInfo",921],[5,"DispatchErrorWithPostInfo",936],[8,"Core",761],[8,"Votes",761],[6,"Vote",761],[5,"BoundedBTreeMap",952],[10,"CoreAccountDerivation",13],[10,"MultisigFeeHandler",17],[5,"INV4Lookup",97],[8,"Origin",282],[15,"token_mint",581],[15,"token_burn",581],[15,"vote_multisig",581],[15,"operate_multisig",581],[15,"withdraw_vote_multisig",581],[15,"cancel_multisig_proposal",581],[15,"create_core",581],[15,"set_parameters",581],[15,"Minted",603],[15,"Burned",603],[15,"MultisigExecuted",603],[15,"MultisigVoteStarted",603],[15,"MultisigVoteAdded",603],[15,"MultisigVoteWithdrawn",603],[15,"MultisigCanceled",603],[15,"CoreCreated",603],[15,"ParametersSet",603],[5,"NextCoreId",651],[5,"CoreStorage",651],[5,"CoreByAccount",651],[5,"Multisig",651],[5,"CoreMembers",651],[8,"VoteRecord",761],[10,"CustomPolling",761],[5,"SubstrateWeight",881],[10,"WeightInfo",881]],"b":[]},\ "pallet_ocif_staking":{"doc":"OCIF Staking pallet","t":"SECCCIRGKPPIIIPPPRIIGGRIIPIPPPIPRRPRPRRPRPRIPIPIPPPPPPPFRRIIPRRPRPPPPPRPPPPPRPNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNPNNNNNNNPNNNNNNNNNNNNNNNNNNNNONCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNPNONNNNNNNNNNNNNNNNNNNNPNNNNNNNNPNPNNCNNNNNNNNNNNNNNEENNNNNNNNNNNNNNNNNNNNNNNNNNPNPNNNNNNCNNNPOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOHHHHHHHHHHFFFFFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFIFFFFFSFFFFNNNNNNNNNNOOONNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNOOONOONNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNFKNNNNMNMNNNNNNMNNNNNNNMNMNMNMNNNNNNMNMNNMN","n":["LOCK_ID","WeightInfo","pallet","primitives","weights","BalanceOf","BlocksPerEra","Call","Config","CoreAlreadyRegistered","CoreClaimed","CoreEraStake","CoreInfoOf","CoreMetadataOf","CoreNotFound","CoreRegistered","CoreUnregistered","Currency","CurrentEra","Era","Error","Event","ExistentialDeposit","GeneralEraInfo","GeneralStakerInfo","HaltChanged","Halted","Halted","IncorrectEra","InsufficientBalance","Ledger","MaxDescriptionExceeded","MaxDescriptionLength","MaxEraStakeValues","MaxImageExceeded","MaxImageUrlLength","MaxNameExceeded","MaxNameLength","MaxStakersPerCore","MaxStakersReached","MaxUnlocking","MetadataChanged","MinimumStakingAmount","Module","MoveStakeToSameCore","NegativeImbalanceOf","NewEra","NextEraStartingBlock","NoHaltChange","NoPermission","NoStakeAvailable","NotAStaker","NotRegistered","NotUnregisteredCore","NothingToWithdraw","Pallet","PotId","RegisterDeposit","RegisteredCore","RewardAccumulator","RewardAlreadyClaimed","RewardRatio","RuntimeEvent","StakeMoved","StakeThresholdForActiveCore","Staked","StakerClaimed","StakingNothing","TooManyEraStakeValues","TooManyUnlockingChunks","UnbondingPeriod","UnclaimedRewardsAvailable","UnexpectedStakeInfoEra","UnknownEraReward","Unstaked","UnstakingNothing","WeightInfo","Withdrawn","__clone_box","__clone_box","__clone_box","account","account_id","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","available_staking_balance","blake2_128","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","blake2_256","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","change_core_metadata","change_core_metadata","clone","clone","clone","clone_into","clone_into","clone_into","core_claim_rewards","core_claim_rewards","core_info","core_stake_info","core_stakers_split","count","crate_version","current_era","current_storage_version","decode","decode","decode","decode_all","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","deposit_event","description","dispatch_bypass_filter","dispatchables","encode_to","encode_to","encode_to","ensure_not_halted","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","general_era_info","get_call_index","get_call_indices","get_call_name","get_call_names","get_dispatch_info","halt_unhalt_pallet","halt_unhalt_pallet","identity","identity","identity","image","index","infos","integrity_test","internal_halt_unhalt","internal_stake","internal_unstake","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","is_halted","ledger","metadata","module_name","move_stake","move_stake","name","name","new_call_variant_change_core_metadata","new_call_variant_core_claim_rewards","new_call_variant_halt_unhalt_pallet","new_call_variant_move_stake","new_call_variant_register_core","new_call_variant_stake","new_call_variant_staker_claim_rewards","new_call_variant_unregister_core","new_call_variant_unstake","new_call_variant_withdraw_unstaked","next_era_starting_block","offchain_worker","on_chain_storage_version","on_finalize","on_genesis","on_idle","on_initialize","on_initialize","on_runtime_upgrade","register_core","register_core","reward_accumulator","reward_balance_snapshot","rewards","rotate_staking_info","size_hint","size_hint","size_hint","stake","stake","staker_claim_rewards","staker_claim_rewards","staker_info","storage_info","storage_types","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","tt_default_parts","tt_error_token","tvl","twox_128","twox_128","twox_128","twox_256","twox_256","twox_256","twox_64_concat","twox_64_concat","twox_64_concat","type_id","type_id","type_id","type_id","type_info","type_info","type_info","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unregister_core","unregister_core","unstake","unstake","update_ledger","update_staker_info","vzip","vzip","vzip","vzip","warnings","whitelisted_storage_keys","with_weight","withdraw_unstaked","withdraw_unstaked","amount","core_id","core_id","core_id","core_id","description","description","era","from_core","halt","image","image","name","name","to_core","value","value","amount","amount","amount","amount","amount","amount","core","core","core","core","core","core","core","destination_account","era","era","era","from_core","is_halted","new_metadata","old_metadata","staker","staker","staker","staker","staker","to_core","change_core_metadata","core_claim_rewards","halt_unhalt_pallet","move_stake","register_core","stake","staker_claim_rewards","unregister_core","unstake","withdraw_unstaked","CoreEraStake","CurrentEra","GeneralEraInfo","GeneralStakerInfo","Halted","Ledger","NextEraStartingBlock","RegisteredCore","RewardAccumulator","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","from","from","from","from","from","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AccountLedger","BalanceOf","CoreInfo","CoreMetadata","CoreStakeInfo","EraInfo","EraStake","MAX_ASSUMED_VEC_LEN","RewardInfo","StakerInfo","UnbondingInfo","UnlockingChunk","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","account","active","active_stake","add","add_amount","amount","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","blake2_128","blake2_128","blake2_128","blake2_128","blake2_128","blake2_128","blake2_128","blake2_128","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","blake2_256","blake2_256","blake2_256","blake2_256","blake2_256","blake2_256","blake2_256","blake2_256","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","claim","clear","clear","clear","clear","clear","clear","clear","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","core","decode","decode","decode","decode","decode","decode","decode","decode","decode","decode","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","default","default","default","default","default","default","default","description","encode","encode","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","encode_to","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","era","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","identity","identity","identity","identity","identity","identity","identity","identity","identity","identity","image","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","into_ref","is_clear","is_clear","is_clear","is_clear","is_clear","is_clear","is_clear","is_empty","is_empty","is_empty","latest_staked_value","len","len","locked","locked","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","max_encoded_len","metadata","name","number_of_stakers","partition","reward_claimed","rewards","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","size_hint","stake","staked","staked","stakers","stakes","sum","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","total","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","twox_128","twox_128","twox_128","twox_128","twox_128","twox_128","twox_128","twox_128","twox_128","twox_128","twox_256","twox_256","twox_256","twox_256","twox_256","twox_256","twox_256","twox_256","twox_256","twox_256","twox_64_concat","twox_64_concat","twox_64_concat","twox_64_concat","twox_64_concat","twox_64_concat","twox_64_concat","twox_64_concat","twox_64_concat","twox_64_concat","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_info","type_info","type_info","type_info","type_info","type_info","type_info","type_info","type_info","type_info","unbonding_info","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unlock_era","unlocking_chunks","unstake","using_encoded","using_encoded","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","SubstrateWeight","WeightInfo","as_any","as_any_mut","borrow","borrow_mut","change_core_metadata","change_core_metadata","core_claim_rewards","core_claim_rewards","from","from_mut","from_mut","from_ref","from_ref","halt_unhalt_pallet","halt_unhalt_pallet","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","move_stake","move_stake","register_core","register_core","stake","stake","staker_claim_rewards","staker_claim_rewards","try_from","try_into","type_id","unchecked_into","unique_saturated_into","unregister_core","unregister_core","unstake","unstake","vzip","withdraw_unstaked","withdraw_unstaked"],"q":[[0,"pallet_ocif_staking"],[5,"pallet_ocif_staking::pallet"],[323,"pallet_ocif_staking::pallet::Call"],[340,"pallet_ocif_staking::pallet::Event"],[367,"pallet_ocif_staking::pallet::dispatchables"],[377,"pallet_ocif_staking::pallet::storage_types"],[575,"pallet_ocif_staking::primitives"],[1108,"pallet_ocif_staking::weights"],[1151,"dyn_clone::sealed"],[1152,"core::any"],[1153,"alloc::vec"],[1154,"frame_system::pallet_prelude"],[1155,"bounded_collections::bounded_vec"],[1156,"frame_support::dispatch"],[1157,"core::option"],[1158,"parity_scale_codec::encode_like"],[1159,"frame_support::traits::metadata"],[1160,"parity_scale_codec::error"],[1161,"core::result"],[1162,"parity_scale_codec::codec"],[1163,"parity_scale_codec::codec"],[1164,"core::fmt"],[1165,"core::fmt"],[1166,"alloc::sync"],[1167,"alloc::rc"],[1168,"frame_support::traits::metadata"],[1169,"frame_system::pallet_prelude"],[1170,"core::any"],[1171,"sp_storage"],[1172,"frame_support::dispatch"],[1173,"sp_arithmetic::traits"],[1174,"core::default"],[1175,"core::marker"],[1176,"core::ops::arith"],[1177,"core::clone"],[1178,"parity_scale_codec::compact"],[1179,"parity_scale_codec::codec"],[1180,"core::fmt"]],"d":["","","The module that hosts all the FRAME types needed to add …","","Autogenerated weights for pallet_ocif_staking","","","Contains one variant per dispatchable that can be called …","Configuration trait of this pallet.","","","","","","","","","","","","Custom dispatch errors of this pallet.","The event emitted by this pallet.","","","","","","","","","","","","","","","","","","","","","","Type alias to Pallet, to be used by construct_runtime.","","","","","","","","","","","","The pallet implementing the on-chain logic.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a call with the variant change_core_metadata.","Create a call with the variant core_claim_rewards.","Create a call with the variant halt_unhalt_pallet.","Create a call with the variant move_stake.","Create a call with the variant register_core.","Create a call with the variant stake.","Create a call with the variant staker_claim_rewards.","Create a call with the variant unregister_core.","Create a call with the variant unstake.","Create a call with the variant withdraw_unstaked.","","","","","","","","","","","","","","","","","","","","","","","","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Weights for pallet_ocif_staking using the Substrate node …","Weight functions needed for pallet_ocif_staking.","","","","","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Storage: OcifStaking Halted (r:1 w:1) Proof: OcifStaking …","Calls U::from(self).","","","","","","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","","","","","","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …","","","Storage: OcifStaking Halted (r:1 w:0) Proof: OcifStaking …"],"i":[0,0,0,0,0,0,6,0,0,27,14,0,0,0,27,14,14,6,0,0,0,0,6,0,0,14,0,27,27,27,0,27,6,6,27,6,27,6,6,27,6,14,6,0,27,0,14,0,27,27,27,27,27,27,27,0,6,6,0,0,27,6,6,14,6,14,14,27,27,27,6,27,27,27,14,27,6,14,13,14,15,17,13,13,14,27,15,13,14,27,15,13,14,27,15,14,27,15,14,27,15,13,14,27,15,13,14,27,15,13,15,13,14,15,13,14,15,13,15,13,13,13,13,13,13,13,14,27,15,14,27,15,14,27,15,14,27,15,13,70,15,0,14,27,15,13,13,14,15,13,13,13,14,14,14,15,15,15,13,14,27,15,13,14,27,15,13,13,14,14,27,27,15,15,13,13,14,14,27,27,15,15,13,15,15,15,15,15,13,15,14,27,15,70,13,13,13,13,13,13,13,14,27,15,13,14,27,15,13,14,27,15,13,14,27,15,13,14,27,15,13,14,27,15,13,13,17,13,13,15,13,70,15,15,15,15,15,15,15,15,15,15,13,13,13,13,13,13,13,13,13,13,15,13,13,13,13,14,27,15,13,15,13,15,13,13,0,14,27,15,13,14,15,13,14,27,15,13,14,27,15,0,0,13,14,27,15,14,27,15,14,27,15,13,14,27,15,14,27,15,13,14,27,15,13,14,27,15,13,15,13,15,13,13,13,14,27,15,0,13,27,13,15,71,72,73,74,75,76,77,75,71,78,76,77,76,77,71,72,73,79,80,81,82,83,84,79,80,85,86,82,83,87,83,88,82,83,84,89,87,87,79,80,81,82,84,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,90,91,91,92,92,93,93,94,94,95,95,96,96,97,97,98,98,90,90,91,91,92,92,93,93,94,94,95,95,96,96,97,97,98,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,90,91,92,93,94,95,96,97,98,0,0,0,0,0,0,0,0,0,0,0,0,60,62,45,21,20,64,38,53,52,5,62,20,21,52,53,53,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,38,45,21,20,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,45,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,45,21,20,38,53,52,5,60,38,52,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,60,60,62,62,62,45,45,45,21,21,21,20,20,20,64,64,64,38,38,38,53,53,53,52,52,52,5,5,5,64,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,60,62,62,45,45,21,21,20,20,64,64,38,38,53,53,52,52,5,5,60,60,62,62,45,45,21,21,20,20,64,64,38,38,53,53,52,52,5,5,60,62,45,21,20,64,38,53,52,5,60,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,45,21,20,38,53,52,5,38,52,5,38,38,52,21,5,60,62,45,21,20,64,38,53,52,5,62,60,20,52,20,21,60,62,45,21,20,64,38,53,52,5,38,21,64,45,38,52,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,20,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,5,60,62,45,21,20,64,38,53,52,5,60,62,45,21,20,64,38,53,52,5,53,52,38,38,52,60,62,45,21,20,64,38,53,52,5,0,0,99,99,99,99,100,99,100,99,99,99,99,99,99,100,99,99,99,99,99,99,99,100,99,100,99,100,99,100,99,99,99,99,99,99,100,99,100,99,99,100,99],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],0,[[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[[[5,[[4,[-1]]]]],[[4,[-1]]],6],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[10,[-1]],[11,[7]],[11,[7]],[11,[7]]],12,6],0,[[[13,[-1]]],[[13,[-1]]],[]],[[[14,[-1]]],[[14,[-1]]],6],[[[15,[-1]]],[[15,[-1]]],6],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[[10,[-1]],16],12,6],0,[-1,[[18,[[17,[-2]]]]],19,6],[[-1,-2],[[18,[[20,[[4,[-3]]]]]]],19,[[19,[16]]],6],[[[20,[[4,[-1]]]],[21,[[4,[-1]]]]],[[2,[[4,[-1]],[4,[-1]]]]],6],[[],22],[[],23],[[],16],[[],-1,[]],[-1,[[25,[[14,[-2]],24]]],26,6],[-1,[[25,[[27,[-2]],24]]],26,[]],[-1,[[25,[[15,[-2]],24]]],26,6],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[[14,[-1]]],2,6],0,[[[15,[-1]],-2],12,6,[]],0,[[[14,[-1]],-2],2,6,[30,31]],[[[27,[-1]],-2],2,[],[30,31]],[[[15,[-1]],-2],2,6,[30,31]],[[],[[25,[2,[27,[-1]]]]],6],[[[13,[-1]],[13,[-1]]],32,[]],[[[14,[-1]],[14,[-1]]],32,6],[[[15,[-1]],[15,[-1]]],32,6],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[[13,[-1]],33],34,[]],[[[14,[-1]],33],34,6],[[[27,[-1]],33],34,6],[[[15,[-1]],33],34,6],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,[[18,[[21,[[4,[-2]]]]]]],[[19,[16]]],6],[[[15,[-1]]],7,6],[[],[[28,[7]]]],[[[15,[-1]]],35,6],[[],[[28,[35]]]],[[[15,[-1]]],36,6],[[[10,[-1]],32],12,6],0,[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],0,[[],22],[[],[[9,[37]]]],[[],2],[32,2],[[[38,[[4,[-1]]]],[20,[[4,[-1]]]],[4,[-1]],16],[[25,[2,[27,[-1]]]]],6],[[[38,[[4,[-1]]]],[20,[[4,[-1]]]],[4,[-1]],16],[[25,[[4,[-1]],[27,[-1]]]]],6],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],32],[-1,[[5,[[4,[-2]]]]],19,6],0,[[],35],[[[10,[-1]],[4,[-1]]],12,6],0,[[],35],0,[[[11,[7]],[11,[7]],[11,[7]]],[[15,[-1]]],6],[16,[[15,[-1]]],6],[32,[[15,[-1]]],6],[[[4,[-1]]],[[15,[-1]]],6],[[[11,[7]],[11,[7]],[11,[7]]],[[15,[-1]]],6],[[[4,[-1]]],[[15,[-1]]],6],[[],[[15,[-1]]],6],[[],[[15,[-1]]],6],[[[4,[-1]]],[[15,[-1]]],6],[[],[[15,[-1]]],6],[[]],[[],2],[[],42],[[],2],[[],2],[43,43],[[[44,[-1]]],43,6],[[],43],[[],43],[[[10,[-1]],[11,[7]],[11,[7]],[11,[7]]],12,6],0,[[],[[45,[[4,[-1]]]]],6],[[16,[45,[[4,[-1]]]],[4,[-1]]],2,6],[[],2],[16,[[2,[43,[4,[-1]]]]],6],[[[14,[-1]]],22,6],[[[27,[-1]]],22,[]],[[[15,[-1]]],22,6],[[[10,[-1]],[4,[-1]]],12,6],0,[[[10,[-1]]],12,6],0,[[-1,-2],[[38,[[4,[-3]]]]],19,19,6],[[],[[9,[46]]]],0,[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],0,0,[[],[[4,[-1]]],6],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[[],48],[[],48],[[],48],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[10,[-1]]],12,6],0,[[[10,[-1]],[4,[-1]]],12,6],0,[[[5,[[4,[-1]]]]],2,6],[[[38,[[4,[-1]]]]],2,6],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[9,[49]]]],[[-1,43],[[51,[50]]],[]],[[[10,[-1]]],12,6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[11,[7]],[11,[7]],[11,[7]]],2],[16,2],[32,2],[[[4,[-1]]],2,6],[[[11,[7]],[11,[7]],[11,[7]]],2],[[[4,[-1]]],2,6],[[],2],[[],2],[[[4,[-1]]],2,6],[[],2],0,0,0,0,0,0,0,0,0,[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],[[-1,1],2,[]],0,0,0,[[[52,[-1]],[53,[-1]]],2,[54,55,56,57]],[[[53,[-1]],-1],2,[[59,[],[[58,[]]]],56,57]],0,[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,3,[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[38,[-1]]],[[2,[16,-1]]],[54,56,57]],[[],-1,[]],[[],-1,[]],[[],-1,[]],[[],-1,[]],[[],-1,[]],[[],-1,[]],[[],-1,[]],[[[60,[-1,-2,-3]]],[[60,[-1,-2,-3]]],61,61,61],[[[62,[-1,-2]]],[[62,[-1,-2]]],61,61],[[[45,[-1]]],[[45,[-1]]],[61,63,57]],[[[21,[-1]]],[[21,[-1]]],[61,63,57]],[[[20,[-1]]],[[20,[-1]]],[61,63,57]],[[[64,[-1]]],[[64,[-1]]],[61,54,56,57]],[[[38,[-1]]],[[38,[-1]]],[61,54,56,57]],[[[53,[-1]]],[[53,[-1]]],[61,57]],[[[52,[-1]]],[[52,[-1]]],[61,54,55,56,57]],[[[5,[-1]]],[[5,[-1]]],[61,54,55,56,57]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],0,[-1,[[25,[[60,[-2,-3,-4]],24]]],26,65,65,65],[-1,[[25,[[62,[-2,-3]],24]]],26,65,65],[-1,[[25,[[45,[-2]],24]]],26,[63,63,57]],[-1,[[25,[[21,[-2]],24]]],26,[63,63,57]],[-1,[[25,[[20,[-2]],24]]],26,[63,63,57]],[-1,[[25,[[64,[-2]],24]]],26,[63,54,56,57]],[-1,[[25,[[38,[-2]],24]]],26,[54,56,57]],[-1,[[25,[[53,[-2]],24]]],26,[63,57]],[-1,[[25,[[52,[-2]],24]]],26,[54,55,56,57]],[-1,[[25,[[5,[-2]],24]]],26,[63,54,55,56,57]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,[28,[7]]],[[25,[-1,24]]],[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[29,-1],[[25,[-2,24]]],26,[]],[[],[[45,[-1]]],[55,63,57]],[[],[[21,[-1]]],[55,63,57]],[[],[[20,[-1]]],[55,63,57]],[[],[[38,[-1]]],[55,54,56,57]],[[],[[53,[-1]]],[55,57]],[[],[[52,[-1]]],[55,54,55,56,57]],[[],[[5,[-1]]],[55,54,55,56,57]],0,[[[38,[-1]]],[[9,[7]]],[54,56,57]],[[[52,[-1]]],[[9,[7]]],[54,55,56,57]],[[[60,[-1,-2,-3]],-4],2,66,66,66,[30,31]],[[[62,[-1,-2]],-3],2,66,66,[30,31]],[[[45,[-1]],-2],2,[63,63,57],[30,31]],[[[21,[-1]],-2],2,[63,63,57],[30,31]],[[[20,[-1]],-2],2,[63,63,57],[30,31]],[[[64,[-1]],-2],2,[63,54,56,57],[30,31]],[[[38,[-1]],-2],2,[54,56,57],[30,31]],[[[53,[-1]],-2],2,[63,57],[30,31]],[[[52,[-1]],-2],2,[54,55,56,57],[30,31]],[[[5,[-1]],-2],2,[63,54,55,56,57],[30,31]],[[[60,[-1,-2,-3]],[60,[-1,-2,-3]]],32,67,67,67],[[[62,[-1,-2]],[62,[-1,-2]]],32,67,67],[[[45,[-1]],[45,[-1]]],32,[67,63,57]],[[[21,[-1]],[21,[-1]]],32,[67,63,57]],[[[20,[-1]],[20,[-1]]],32,[67,63,57]],[[[64,[-1]],[64,[-1]]],32,[67,54,56,57]],[[[38,[-1]],[38,[-1]]],32,[67,54,56,57]],[[[53,[-1]],[53,[-1]]],32,[67,57]],[[[52,[-1]],[52,[-1]]],32,[67,54,55,56,57]],[[[5,[-1]],[5,[-1]]],32,[67,54,55,56,57]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],[[-1,-2],32,[],[]],0,[[[60,[-1,-2,-3]],33],34,68,68,68],[[[62,[-1,-2]],33],34,68,68],[[[45,[-1]],33],34,[68,63,57]],[[[21,[-1]],33],34,[68,63,57]],[[[20,[-1]],33],34,[68,63,57]],[[[64,[-1]],33],34,[68,54,56,57]],[[[38,[-1]],33],34,[68,54,56,57]],[[[53,[-1]],33],34,[68,57]],[[[52,[-1]],33],34,[68,54,55,56,57]],[[[5,[-1]],33],34,[68,54,55,56,57]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,32,[]],[-1,32,[]],[-1,32,[]],[-1,32,[]],[-1,32,[]],[-1,32,[]],[-1,32,[]],[[[38,[-1]]],32,[54,56,57]],[[[52,[-1]]],32,[54,55,56,57]],[[[5,[-1]]],32,[54,55,56,57]],[[[38,[-1]]],-1,[54,56,57]],[[[38,[-1]]],29,[54,56,57]],[[[52,[-1]]],29,[54,55,56,57]],0,0,[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],0,0,0,[[[52,[-1]],16],[[2,[[52,[-1]],[52,[-1]]]]],[54,55,56,57]],0,0,[[[60,[-1,-2,-3]]],22,66,66,66],[[[62,[-1,-2]]],22,66,66],[[[45,[-1]]],22,[63,63,57]],[[[21,[-1]]],22,[63,63,57]],[[[20,[-1]]],22,[63,63,57]],[[[64,[-1]]],22,[63,54,56,57]],[[[38,[-1]]],22,[54,56,57]],[[[53,[-1]]],22,[63,57]],[[[52,[-1]]],22,[54,55,56,57]],[[[5,[-1]]],22,[63,54,55,56,57]],[[[38,[-1]],16,-1],[[25,[2,35]]],[54,56,57]],0,0,0,0,[[[52,[-1]]],-1,[54,55,56,57]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[[-1,[28,[7]]],[[9,[7]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[8,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,[[9,[7]]],[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[[],48],[[],48],[[],48],[[],48],[[],48],[[],48],[[],48],[[],48],[[],48],[[],48],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[[[38,[-1]],16,-1],[[25,[2,35]]],[54,56,57]],[[[38,[-1]],-3],-2,[54,56,57],[],[[69,[[28,[7]]],[[58,[-2]]]]]],[[[52,[-1]],-3],-2,[54,55,56,57],[],[[69,[[28,[7]]],[[58,[-2]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[-1,3,[]],[-1,3,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[29,29,29],43],[[29,29,29],43],[[],43],[[],43],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[[],43],[[],43],[-1,-2,[],[]],[[[39,[-1]]],[[39,[3]]],[]],[[[40,[-1]]],[[40,[3]]],[]],[[[41,[-1]]],[[41,[3]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],43],[[],43],[[29,29,29],43],[[29,29,29],43],[[],43],[[],43],[[],43],[[],43],[-1,[[25,[-2]]],[],[]],[-1,[[25,[-2]]],[],[]],[-1,47,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],43],[[],43],[[],43],[[],43],[-1,-2,[],[]],[[],43],[[],43]],"c":[43],"p":[[5,"Private",1151],[1,"tuple"],[10,"Any",1152],[8,"BalanceOf",5],[5,"AccountLedger",575],[10,"Config",5],[1,"u8"],[1,"array"],[5,"Vec",1153],[8,"OriginFor",1154],[5,"BoundedVec",1155],[8,"DispatchResultWithPostInfo",1156],[5,"Pallet",5],[6,"Event",5],[6,"Call",5],[8,"Era",5],[8,"CoreInfoOf",5],[6,"Option",1157],[10,"EncodeLike",1158],[5,"CoreStakeInfo",575],[5,"EraInfo",575],[1,"usize"],[5,"CrateVersion",1159],[5,"Error",1160],[6,"Result",1161],[10,"Input",1162],[6,"Error",5],[1,"slice"],[1,"u32"],[10,"Output",1162],[10,"Sized",1163],[1,"bool"],[5,"Formatter",1164],[8,"Result",1164],[1,"str"],[5,"DispatchInfo",1156],[5,"PalletInfoData",1159],[5,"StakerInfo",575],[5,"Box",1165],[5,"Arc",1166],[5,"Rc",1167],[5,"StorageVersion",1159],[5,"Weight",1168],[8,"BlockNumberFor",1154],[5,"RewardInfo",575],[5,"StorageInfo",1169],[5,"TypeId",1152],[5,"Type",1170],[5,"TrackedStorageKey",1171],[5,"PostDispatchInfo",1156],[5,"DispatchErrorWithPostInfo",1172],[5,"UnbondingInfo",575],[5,"UnlockingChunk",575],[10,"AtLeast32BitUnsigned",1173],[10,"Default",1174],[10,"Copy",1163],[10,"MaxEncodedLen",1175],[17,"Output"],[10,"Add",1176],[5,"CoreMetadata",575],[10,"Clone",1177],[5,"CoreInfo",575],[10,"HasCompact",1178],[5,"EraStake",575],[10,"Decode",1162],[10,"Encode",1162],[10,"PartialEq",1179],[10,"Debug",1164],[10,"FnOnce",1180],[8,"CoreMetadataOf",5],[15,"move_stake",323],[15,"stake",323],[15,"unstake",323],[15,"staker_claim_rewards",323],[15,"core_claim_rewards",323],[15,"register_core",323],[15,"change_core_metadata",323],[15,"halt_unhalt_pallet",323],[15,"Staked",340],[15,"Unstaked",340],[15,"Withdrawn",340],[15,"StakerClaimed",340],[15,"CoreClaimed",340],[15,"StakeMoved",340],[15,"CoreRegistered",340],[15,"CoreUnregistered",340],[15,"MetadataChanged",340],[15,"NewEra",340],[15,"HaltChanged",340],[5,"Ledger",377],[5,"CurrentEra",377],[5,"RewardAccumulator",377],[5,"NextEraStartingBlock",377],[5,"RegisteredCore",377],[5,"GeneralEraInfo",377],[5,"CoreEraStake",377],[5,"GeneralStakerInfo",377],[5,"Halted",377],[5,"SubstrateWeight",1108],[10,"WeightInfo",1108]],"b":[[248,"impl-Hooks%3C%3CT+as+Config%3E::BlockNumber%3E-for-Pallet%3CT%3E"],[249,"impl-OnInitialize%3C%3CT+as+Config%3E::BlockNumber%3E-for-Pallet%3CT%3E"]]},\ "pallet_rings":{"doc":"","t":"RRKKREMMMMCCCPPGPPPRIKPGGPPPRRIFRPRPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPNPNNNNCNNNNNNNPNNNNNNNNEENNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOHHHHFNNNNNNNNNNNNNNNNNNNNNRRKKRMMMMFKNNNNMNNNNNNNNNNNNMNMNMNNNNNNN","n":["Balance","ChainAssets","ChainAssetsList","ChainList","Chains","WeightInfo","get_asset_location","get_chain","get_location","get_main_asset","pallet","traits","weights","AssetsBridged","AssetsTransferred","Call","CallSent","ChainMaintenanceStatusChanged","ChainUnderMaintenance","Chains","ChainsUnderMaintenance","Config","DifferentChains","Error","Event","FailedToCalculateXcmFee","FailedToInvertLocation","FailedToReanchorAsset","MaintenanceOrigin","MaxXCMCallLength","Module","Pallet","RuntimeEvent","SendingFailed","WeightInfo","WeightTooHigh","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","blake2_128","blake2_128","blake2_128","blake2_128_concat","blake2_128_concat","blake2_128_concat","blake2_256","blake2_256","blake2_256","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bridge_assets","bridge_assets","clone","clone","clone","clone_into","clone_into","clone_into","count","crate_version","current_storage_version","decode","decode","decode","decode_all","decode_all","decode_all","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_all_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","decode_with_depth_limit","deposit_event","dispatch_bypass_filter","dispatchables","encode_to","encode_to","encode_to","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_call_index","get_call_indices","get_call_name","get_call_names","get_dispatch_info","identity","identity","identity","index","infos","integrity_test","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","is_under_maintenance","module_name","name","new_call_variant_bridge_assets","new_call_variant_send_call","new_call_variant_set_maintenance_status","new_call_variant_transfer_assets","offchain_worker","on_chain_storage_version","on_finalize","on_genesis","on_idle","on_initialize","on_runtime_upgrade","send_call","send_call","set_maintenance_status","set_maintenance_status","size_hint","size_hint","size_hint","storage_info","storage_types","to_keyed_vec","to_keyed_vec","to_keyed_vec","to_owned","to_owned","to_owned","transfer_assets","transfer_assets","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","tt_default_parts","tt_error_token","twox_128","twox_128","twox_128","twox_256","twox_256","twox_256","twox_64_concat","twox_64_concat","twox_64_concat","type_id","type_id","type_id","type_id","type_info","type_info","type_info","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","vzip","vzip","vzip","vzip","warnings","whitelisted_storage_keys","with_weight","amount","amount","asset","asset","call","chain","destination","destination","fee","fee","fee","fee_asset","fee_asset","to","to","under_maintenance","weight","amount","amount","asset","call","chain","chain","destination","from","from","origin_chain_asset","sender","to","to","under_maintenance","bridge_assets","send_call","set_maintenance_status","transfer_assets","ChainsUnderMaintenance","as_any","as_any_mut","borrow","borrow_mut","from","from_mut","from_mut","from_ref","from_ref","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","try_from","try_into","type_id","unchecked_into","unique_saturated_into","vzip","Balance","ChainAssets","ChainAssetsList","ChainList","Chains","get_asset_location","get_chain","get_location","get_main_asset","SubstrateWeight","WeightInfo","as_any","as_any_mut","borrow","borrow_mut","bridge_assets","bridge_assets","from","from_mut","from_mut","from_ref","from_ref","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","send_call","send_call","set_maintenance_status","set_maintenance_status","transfer_assets","transfer_assets","try_from","try_into","type_id","unchecked_into","unique_saturated_into","vzip"],"q":[[0,"pallet_rings"],[13,"pallet_rings::pallet"],[236,"pallet_rings::pallet::Call"],[253,"pallet_rings::pallet::Event"],[267,"pallet_rings::pallet::dispatchables"],[271,"pallet_rings::pallet::storage_types"],[293,"pallet_rings::traits"],[302,"pallet_rings::weights"],[333,"xcm::v3::multilocation"],[334,"core::convert"],[335,"dyn_clone::sealed"],[336,"core::any"],[337,"alloc::vec"],[338,"frame_system::pallet_prelude"],[339,"core::option"],[340,"frame_support::dispatch"],[341,"frame_support::traits::metadata"],[342,"parity_scale_codec::error"],[343,"core::result"],[344,"parity_scale_codec::codec"],[345,"frame_support::dispatch"],[346,"core::fmt"],[347,"core::fmt"],[348,"alloc::sync"],[349,"alloc::rc"],[350,"parity_scale_codec::encode_like"],[351,"sp_weights::weight_v2"],[352,"bounded_collections::bounded_vec"],[353,"frame_support::traits::metadata"],[354,"core::any"],[355,"sp_storage"],[356,"frame_support::dispatch"]],"d":["","","","","","","","","","","The module that hosts all the FRAME types needed to add …","","Autogenerated weights for pallet_rings","","","Contains one variant per dispatchable that can be called …","","","","","","Configuration trait of this pallet.","","Custom dispatch errors of this pallet.","The event emitted by this pallet.","","","","","","Type alias to Pallet, to be used by construct_runtime.","The pallet implementing the on-chain logic.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","Create a call with the variant bridge_assets.","Create a call with the variant send_call.","Create a call with the variant set_maintenance_status.","Create a call with the variant transfer_assets.","","","","","","","","","","","","","","","","Auto-generated docs-only module listing all defined …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","NOTE: This function is an automatically generated, doc …","","","","","","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Weights for pallet_rings using the Substrate node and …","Weight functions needed for pallet_rings.","","","","","","Storage: Rings ChainsUnderMaintenance (r:1 w:0) Proof: …","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","Calls U::from(self).","","","","","","","Storage: Rings ChainsUnderMaintenance (r:1 w:0) Proof: …","","Storage: Rings ChainsUnderMaintenance (r:0 w:1) Proof: …","","Storage: Rings ChainsUnderMaintenance (r:1 w:0) Proof: …","","","","","",""],"i":[4,4,0,0,2,0,2,2,4,4,0,0,0,20,20,0,20,20,24,18,0,0,24,0,0,24,24,24,18,18,0,0,18,24,18,24,19,20,21,19,24,20,21,19,24,20,21,24,20,21,24,20,21,24,20,21,19,24,20,21,19,24,20,21,19,21,19,20,21,19,20,21,19,19,19,24,20,21,24,20,21,24,20,21,24,20,21,19,21,0,24,20,21,19,20,21,19,19,19,20,20,20,21,21,21,19,24,20,21,19,24,20,21,19,19,24,24,20,20,21,21,19,19,24,24,20,20,21,21,21,21,21,21,21,24,20,21,19,19,19,19,24,20,21,19,24,20,21,19,24,20,21,19,24,20,21,19,24,20,21,19,24,20,21,19,19,19,21,21,21,21,19,19,19,19,19,19,19,19,21,19,21,24,20,21,19,0,24,20,21,19,20,21,19,21,19,24,20,21,19,24,20,21,0,0,24,20,21,24,20,21,24,20,21,19,24,20,21,24,20,21,19,24,20,21,19,24,20,21,19,24,20,21,0,19,24,52,53,52,53,54,55,54,53,54,52,53,54,52,52,53,55,54,56,57,56,58,56,59,58,56,57,57,58,56,57,59,0,0,0,0,0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,4,4,0,0,2,2,2,4,4,0,0,61,61,61,61,62,61,61,61,61,61,61,61,61,61,61,61,61,62,61,62,61,62,61,61,61,61,61,61,61],"f":[0,0,0,0,0,0,[[[2,[],[[1,[-1]]]]],3,4],[[[2,[],[[1,[-1]]]]],-1,4],[[[4,[],[[5,[-1]],[6,[-2]]]]],3,[[8,[7]]],2],[[[4,[],[[5,[-1]],[6,[-2]]]]],-2,[[8,[7]]],2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,9],10,[]],[[-1,9],10,[]],[[-1,9],10,[]],[-1,11,[]],[-1,11,[]],[-1,11,[]],[-1,11,[]],[-1,11,[]],[-1,11,[]],[-1,11,[]],[-1,11,[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[14,[12]]],[]],[-1,[[14,[12]]],[]],[-1,[[14,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[15,[-1]],7,7,16],17,18],0,[[[19,[-1]]],[[19,[-1]]],[]],[[[20,[-1]]],[[20,[-1]]],18],[[[21,[-1]]],[[21,[-1]]],18],[[-1,-2],10,[],[]],[[-1,-2],10,[],[]],[[-1,-2],10,[],[]],[[],22],[[],23],[[],-1,[]],[-1,[[26,[[24,[-2]],25]]],27,[]],[-1,[[26,[[20,[-2]],25]]],27,18],[-1,[[26,[[21,[-2]],25]]],27,18],[[[28,[12]]],[[26,[-1,25]]],[]],[[[28,[12]]],[[26,[-1,25]]],[]],[[[28,[12]]],[[26,[-1,25]]],[]],[[29,[28,[12]]],[[26,[-1,25]]],[]],[[29,[28,[12]]],[[26,[-1,25]]],[]],[[29,[28,[12]]],[[26,[-1,25]]],[]],[[29,-1],[[26,[-2,25]]],27,[]],[[29,-1],[[26,[-2,25]]],27,[]],[[29,-1],[[26,[-2,25]]],27,[]],[[[20,[-1]]],10,18],[[[21,[-1]],-2],30,18,[]],0,[[[24,[-1]],-2],10,[],[31,32]],[[[20,[-1]],-2],10,18,[31,32]],[[[21,[-1]],-2],10,18,[31,32]],[[[19,[-1]],[19,[-1]]],33,[]],[[[20,[-1]],[20,[-1]]],33,18],[[[21,[-1]],[21,[-1]]],33,18],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[-1,-2],33,[],[]],[[[19,[-1]],34],35,[]],[[[24,[-1]],34],35,18],[[[20,[-1]],34],35,18],[[[21,[-1]],34],35,18],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[[[21,[-1]]],12,18],[[],[[28,[12]]]],[[[21,[-1]]],36,18],[[],[[28,[36]]]],[[[21,[-1]]],37,18],[-1,[[14,[12]]],[]],[-1,[[14,[12]]],[]],[-1,[[14,[12]]],[]],[[],22],[[],[[14,[38]]]],[[],10],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[39,[-1]]],[[39,[11]]],[]],[[[39,[-1]]],[[39,[11]]],[]],[[[39,[-1]]],[[39,[11]]],[]],[[[39,[-1]]],[[39,[11]]],[]],[[[40,[-1]]],[[40,[11]]],[]],[[[40,[-1]]],[[40,[11]]],[]],[[[40,[-1]]],[[40,[11]]],[]],[[[40,[-1]]],[[40,[11]]],[]],[[[41,[-1]]],[[41,[11]]],[]],[[[41,[-1]]],[[41,[11]]],[]],[[[41,[-1]]],[[41,[11]]],[]],[[[41,[-1]]],[[41,[11]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[16,[33]]],[[42,[3]]]],[[],36],[[],36],[[7,7,16],[[21,[-1]]],18],[[43,7,[44,[12]]],[[21,[-1]]],18],[33,[[21,[-1]]],18],[[7,7],[[21,[-1]]],18],[[],10],[[],45],[[],10],[[],10],[43,43],[[],43],[[],43],[[[15,[-1]],43,7,[44,[12]]],17,18],0,[[[15,[-1]],33],17,18],0,[[[24,[-1]]],22,[]],[[[20,[-1]]],22,18],[[[21,[-1]]],22,18],[[],[[14,[46]]]],0,[[-1,[28,[12]]],[[14,[12]]],[]],[[-1,[28,[12]]],[[14,[12]]],[]],[[-1,[28,[12]]],[[14,[12]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[15,[-1]],7,7],17,18],0,[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],0,0,[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[13,[12]]],[]],[-1,[[14,[12]]],[]],[-1,[[14,[12]]],[]],[-1,[[14,[12]]],[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[-1,47,[]],[[],48],[[],48],[[],48],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[14,[49]]]],[[-1,43],[[51,[50]]],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[7,7,16],10],[[43,7,[44,[12]]],10],[33,10],[[7,7],10],0,[-1,11,[]],[-1,11,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[39,[-1]]],[[39,[11]]],[]],[[[40,[-1]]],[[40,[11]]],[]],[[[41,[-1]]],[[41,[11]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,47,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,[[[2,[],[[1,[-1]]]]],3,4],[[[2,[],[[1,[-1]]]]],-1,4],[[[4,[],[[5,[-1]],[6,[-2]]]]],3,[[8,[7]]],2],[[[4,[],[[5,[-1]],[6,[-2]]]]],-2,[[8,[7]]],2],0,0,[-1,11,[]],[-1,11,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],43],[[],43],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[39,[-1]]],[[39,[11]]],[]],[[[40,[-1]]],[[40,[11]]],[]],[[[41,[-1]]],[[41,[11]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[29,43],[29,43],[[],43],[[],43],[[],43],[[],43],[-1,[[26,[-2]]],[],[]],[-1,[[26,[-2]]],[],[]],[-1,47,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]]],"c":[30],"p":[[17,"Chains"],[10,"ChainAssetsList",293],[5,"MultiLocation",333],[10,"ChainList",293],[17,"Balance"],[17,"ChainAssets"],[1,"u128"],[10,"Into",334],[5,"Private",335],[1,"tuple"],[10,"Any",336],[1,"u8"],[1,"array"],[5,"Vec",337],[8,"OriginFor",338],[6,"Option",339],[8,"DispatchResult",340],[10,"Config",13],[5,"Pallet",13],[6,"Event",13],[6,"Call",13],[1,"usize"],[5,"CrateVersion",341],[6,"Error",13],[5,"Error",342],[6,"Result",343],[10,"Input",344],[1,"slice"],[1,"u32"],[8,"DispatchResultWithPostInfo",340],[10,"Output",344],[10,"Sized",345],[1,"bool"],[5,"Formatter",346],[8,"Result",346],[1,"str"],[5,"DispatchInfo",340],[5,"PalletInfoData",341],[5,"Box",347],[5,"Arc",348],[5,"Rc",349],[10,"EncodeLike",350],[5,"Weight",351],[5,"BoundedVec",352],[5,"StorageVersion",341],[5,"StorageInfo",353],[5,"TypeId",336],[5,"Type",354],[5,"TrackedStorageKey",355],[5,"PostDispatchInfo",340],[5,"DispatchErrorWithPostInfo",356],[15,"transfer_assets",236],[15,"bridge_assets",236],[15,"send_call",236],[15,"set_maintenance_status",236],[15,"AssetsTransferred",253],[15,"AssetsBridged",253],[15,"CallSent",253],[15,"ChainMaintenanceStatusChanged",253],[5,"ChainsUnderMaintenance",271],[5,"SubstrateWeight",302],[10,"WeightInfo",302]],"b":[]}\ }'); diff --git a/settings.html b/settings.html index 29c8d960..422c4816 100644 --- a/settings.html +++ b/settings.html @@ -1 +1 @@ -Settings

    Rustdoc settings

    Back
    \ No newline at end of file +Settings

    Rustdoc settings

    Back
    \ No newline at end of file diff --git a/src/pallet_inv4/account_derivation.rs.html b/src/pallet_inv4/account_derivation.rs.html index 6fc54d8d..b3303808 100644 --- a/src/pallet_inv4/account_derivation.rs.html +++ b/src/pallet_inv4/account_derivation.rs.html @@ -40,27 +40,52 @@ 40 41 42 -
    use crate::{Config, Pallet};
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +
    //! Core Account Derivation.
    +//!
    +//! ## Overview
    +//!
    +//! This module defines a method for generating account addresses, and how it's implemented within this
    +//! pallet. We use a custom derivation scheme to ensure that when a multisig is created, its AccountId
    +//! remains consistent across different parachains, promoting seamless interaction.
    +//!
    +//! ### The module contains:
    +//! - `CoreAccountDerivation` trait: The interface for our derivation method.
    +//! - Pallet implementation: The specific logic used to derive AccountIds.
    +
    +use crate::{Config, Pallet};
     use codec::{Compact, Encode};
     use frame_support::traits::Get;
     use sp_io::hashing::blake2_256;
     use xcm::latest::{BodyId, BodyPart, Junction, Junctions};
    -
    -// Trait providing the XCM location and the derived account of a core.
    +/// Trait providing the XCM location and the derived account of a core.
     pub trait CoreAccountDerivation<T: Config> {
    -    fn derive_core_account(core_id: T::CoreId) -> T::AccountId;
    -    fn core_location(core_id: T::CoreId) -> Junctions;
    +    /// Derives the core's AccountId.
    +    fn derive_core_account(core_id: T::CoreId) -> T::AccountId;
    +    /// Specifies a core's location.
    +    fn core_location(core_id: T::CoreId) -> Junctions;
     }
     
     impl<T: Config> CoreAccountDerivation<T> for Pallet<T>
     where
         T::AccountId: From<[u8; 32]>,
     {
    -    fn derive_core_account(core_id: T::CoreId) -> T::AccountId {
    -        // HashedDescription of the core location from the perspective of a sibling chain.
    -        // This derivation allows the local account address to match the account address in other parachains.
    -        // Reference: https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/xcm-builder/src/location_conversion.rs
    -        blake2_256(
    +    /// HashedDescription of the core location from the perspective of a sibling chain.
    +    /// This derivation allows the local account address to match the account address in other parachains.
    +    /// Reference: https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/xcm-builder/src/location_conversion.rs
    +    fn derive_core_account(core_id: T::CoreId) -> T::AccountId {
    +        blake2_256(
                 &(
                     b"SiblingChain",
                     Compact::<u32>::from(T::ParaId::get()),
    @@ -70,10 +95,9 @@
             )
             .into()
         }
    -
    -    fn core_location(core_id: T::CoreId) -> Junctions {
    -        // Core location is defined as a plurality within the parachain.
    -        Junctions::X2(
    +    /// Core location is defined as a plurality within the parachain.
    +    fn core_location(core_id: T::CoreId) -> Junctions {
    +        Junctions::X2(
                 Junction::Parachain(T::ParaId::get()),
                 Junction::Plurality {
                     id: BodyId::Index(core_id.into()),
    diff --git a/src/pallet_inv4/dispatch.rs.html b/src/pallet_inv4/dispatch.rs.html
    index 2aece95e..0b680cfb 100644
    --- a/src/pallet_inv4/dispatch.rs.html
    +++ b/src/pallet_inv4/dispatch.rs.html
    @@ -53,7 +53,24 @@
     53
     54
     55
    -
    use crate::{
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +
    //! Dispatches calls internally, charging fees to the multisig account.
    +//!
    +//! ## Overview
    +//!
    +//! This module employs a custom `MultisigInternalOrigin` to ensure calls originate
    +//! from the multisig account itself, automating fee payments. The `dispatch_call` function
    +//! includes pre and post dispatch handling for streamlined fee management within the multisig context.
    +
    +use crate::{
         fee_handling::{FeeAsset, MultisigFeeHandler},
         origin::{INV4Origin, MultisigInternalOrigin},
         Config, Error,
    @@ -63,7 +80,7 @@
         pallet_prelude::*,
     };
     
    -// Dispatch a call executing pre/post dispatch for proper fee handling.
    +/// Dispatch a call executing pre/post dispatch for proper fee handling.
     pub fn dispatch_call<T: Config>(
         core_id: <T as Config>::CoreId,
         fee_asset: &FeeAsset,
    @@ -72,7 +89,8 @@
     where
         T::AccountId: From<[u8; 32]>,
     {
    -    let internal_origin = MultisigInternalOrigin::new(core_id);
    +    // Create new custom origin as the multisig.
    +    let internal_origin = MultisigInternalOrigin::new(core_id);
         let multisig_account = internal_origin.to_account_id();
         let origin = INV4Origin::Multisig(internal_origin).into();
     
    diff --git a/src/pallet_inv4/fee_handling.rs.html b/src/pallet_inv4/fee_handling.rs.html
    index 9709eefc..5d211fb0 100644
    --- a/src/pallet_inv4/fee_handling.rs.html
    +++ b/src/pallet_inv4/fee_handling.rs.html
    @@ -51,7 +51,38 @@
     51
     52
     53
    -
    use crate::Config;
    +54
    +55
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +65
    +66
    +67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +
    //! MultisigFeeHandler trait.
    +//!
    +//! ## Overview
    +//!
    +//! Defines how transaction fees are charged to the multisig account.
    +//! This trait requires proper runtime implementation to allow the usage of native or non-native assets.
    +
    +use crate::Config;
     use codec::{Decode, Encode, MaxEncodedLen};
     use frame_support::{
         traits::{fungibles::Credit, Currency},
    @@ -63,24 +94,39 @@
         DispatchResult,
     };
     
    -/// Asset to be used by the multisig for paying fees transaction fees.
    +/// Represents the asset to be used by the multisig for paying transaction fees.
    +///
    +/// This enum defines the assets that can be used to pay for transaction fees.
     #[derive(Clone, TypeInfo, Encode, Decode, MaxEncodedLen, Debug, PartialEq, Eq)]
     pub enum FeeAsset {
         Native,
         Relay,
     }
     
    -pub enum FeeAssetNegativeImbalance<NativeNegativeImbalance, RelayNegativeImbalance> {
    +/// Represents a potential negative asset balance incurred during fee payment operations
    +/// within a multisig context.
    +///
    +/// This enum handles imbalances in either the native token or
    +/// a relay chain asset used for fees.
    +///
    +/// - `Native(NativeNegativeImbalance)`: Indicates a deficit balance in the chain's native asset.
    +/// - `Relay(RelayNegativeImbalance)`: Indicates a deficit balance in an asset originating on the relay chain.
    +///
    +/// This enum plays a role in resolving deficit balances in the `MultisigFeeHandler` trait.
    +pub enum FeeAssetNegativeImbalance<NativeNegativeImbalance, RelayNegativeImbalance> {
         Native(NativeNegativeImbalance),
         Relay(RelayNegativeImbalance),
     }
     
     /// Fee handler trait.
    +///
     /// This should be implemented properly in the runtime to account for native and non-native assets.
     pub trait MultisigFeeHandler<T: Config> {
    -    type Pre;
    +    /// Type returned by `pre_dispatch` - implementation dependent.
    +    type Pre;
     
    -    fn pre_dispatch(
    +    /// Checks if the fee can be paid using the selected asset.
    +    fn pre_dispatch(
             asset: &FeeAsset,
             who: &T::AccountId,
             call: &<T as Config>::RuntimeCall,
    @@ -88,7 +134,8 @@
             len: usize,
         ) -> Result<Self::Pre, TransactionValidityError>;
     
    -    fn post_dispatch(
    +    /// Charges the call dispatching fee from the multisig directly.
    +    fn post_dispatch(
             asset: &FeeAsset,
             pre: Option<Self::Pre>,
             info: &DispatchInfoOf<<T as Config>::RuntimeCall>,
    @@ -97,7 +144,8 @@
             result: &DispatchResult,
         ) -> Result<(), TransactionValidityError>;
     
    -    fn handle_creation_fee(
    +    /// Charges the fee for creating the core (multisig).
    +    fn handle_creation_fee(
             imbalance: FeeAssetNegativeImbalance<
                 <T::Currency as Currency<T::AccountId>>::NegativeImbalance,
                 Credit<T::AccountId, T::Tokens>,
    diff --git a/src/pallet_inv4/inv4_core.rs.html b/src/pallet_inv4/inv4_core.rs.html
    index d95eaf59..e14545a2 100644
    --- a/src/pallet_inv4/inv4_core.rs.html
    +++ b/src/pallet_inv4/inv4_core.rs.html
    @@ -149,7 +149,27 @@
     149
     150
     151
    -
    use super::pallet::*;
    +152
    +153
    +154
    +155
    +156
    +157
    +158
    +159
    +160
    +161
    +
    //! Core creation and internal management.
    +//!
    +//! ## Overview
    +//!
    +//! This module handles the mechanics of creating multisigs (referred to as "cores") and their lifecycle management. Key functions include:
    +//!
    +//!  - `inner_create_core`: Sets up a new core, deriving its AccountId, distributing voting tokens, and handling creation fees.
    +//!  - `inner_set_parameters`: Updates the core's operational rules.
    +//! - `is_asset_frozen`: Utility function for checking if a core's voting asset is frozen (can't be transferred by the owner).
    +
    +use super::pallet::*;
     use crate::{
         account_derivation::CoreAccountDerivation,
         fee_handling::{FeeAsset, FeeAssetNegativeImbalance, MultisigFeeHandler},
    diff --git a/src/pallet_inv4/lib.rs.html b/src/pallet_inv4/lib.rs.html
    index fe5f3625..e0fdd70f 100644
    --- a/src/pallet_inv4/lib.rs.html
    +++ b/src/pallet_inv4/lib.rs.html
    @@ -478,6 +478,9 @@
     478
     479
     480
    +481
    +482
    +483
     
    //! # Pallet INV4
     //!
     //! - [`Config`]
    @@ -487,6 +490,9 @@
     //! ## Overview
     //! This pallet handles advanced virtual multisigs (internally called cores).
     //!
    +//! Lower level implementation details of this pallet's calls are contained in separate modules, each of them
    +//! containing their own docs.
    +//!
     //! ### Pallet Functions
     //!
     //! - `create_core` - Create a new core
    diff --git a/src/pallet_inv4/lookup.rs.html b/src/pallet_inv4/lookup.rs.html
    index 0a6776a6..2ac9712c 100644
    --- a/src/pallet_inv4/lookup.rs.html
    +++ b/src/pallet_inv4/lookup.rs.html
    @@ -35,17 +35,43 @@
     35
     36
     37
    -
    use crate::{Config, CoreByAccount, CoreStorage, Pallet};
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +
    //! Custom account lookup implementation.
    +//!
    +//! ## Overview
    +//!
    +//! This module implements the [`StaticLookup`] trait allowing for convenient lookup of a core's
    +//! AccountId from its CoreId.
    +//! This implementation abstracts on top of two lower level functions:
    +//! - `lookup_core`: Used for accessing the storage and retrieving a core's AccountId.
    +//! - `lookup_address`: Used for converting from a `MultiAddress::Index` that contains a CoreId to this core's AccountId.
    +
    +use crate::{Config, CoreByAccount, CoreStorage, Pallet};
     use core::marker::PhantomData;
     use frame_support::error::LookupError;
     use sp_runtime::{traits::StaticLookup, MultiAddress};
     
     impl<T: Config> Pallet<T> {
    -    pub fn lookup_core(core_id: T::CoreId) -> Option<T::AccountId> {
    +    /// Queries `CoreStorage` to retrieve the AccountId of a core.
    +    pub fn lookup_core(core_id: T::CoreId) -> Option<T::AccountId> {
             CoreStorage::<T>::get(core_id).map(|core| core.account)
         }
     
    -    pub fn lookup_address(a: MultiAddress<T::AccountId, T::CoreId>) -> Option<T::AccountId> {
    +    /// Matches `MultiAddress` to allow for a `MultiAddress::Index` containing a CoreId to be converted
    +    /// to it's derived AccountId.
    +    pub fn lookup_address(a: MultiAddress<T::AccountId, T::CoreId>) -> Option<T::AccountId> {
             match a {
                 MultiAddress::Id(i) => Some(i),
                 MultiAddress::Index(i) => Self::lookup_core(i),
    diff --git a/src/pallet_inv4/multisig.rs.html b/src/pallet_inv4/multisig.rs.html
    index cbb95ef7..4c67febb 100644
    --- a/src/pallet_inv4/multisig.rs.html
    +++ b/src/pallet_inv4/multisig.rs.html
    @@ -324,7 +324,31 @@
     324
     325
     326
    -
    use super::pallet::{self, *};
    +327
    +328
    +329
    +330
    +331
    +332
    +333
    +334
    +335
    +336
    +337
    +338
    +
    //! Multisig Operations.
    +//!
    +//! ## Overview
    +//!
    +//! Handles the core actions within an already established multisig.
    +//!
    +//! ### Core functionalities:
    +//! - Minting/Burning voting tokens to existing and new members.
    +//! - Handling proposal votes.
    +//! - Dispatching approved proposals when both support and approval meet/exceed their minimum required thresholds.
    +//! - Canceling proposals.
    +
    +use super::pallet::{self, *};
     use crate::{
         account_derivation::CoreAccountDerivation,
         fee_handling::FeeAsset,
    @@ -528,7 +552,7 @@
                 // Get the voting token balance of the caller
                 let voter_balance: BalanceOf<T> = T::AssetsProvider::balance(core_id, &owner);
     
    -            // If caller doesn't own the token, they have no voting power
    +            // If caller doesn't own the token, they have no voting power.
                 ensure!(!voter_balance.is_zero(), Error::<T>::NoPermission);
     
                 // Get the multisig call data from the storage
    diff --git a/src/pallet_inv4/origin.rs.html b/src/pallet_inv4/origin.rs.html
    index 6a1f18a4..29506711 100644
    --- a/src/pallet_inv4/origin.rs.html
    +++ b/src/pallet_inv4/origin.rs.html
    @@ -42,7 +42,29 @@
     42
     43
     44
    -
    use crate::{
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +
    //! Custom Multisig Origin (`INV4Origin`).
    +//!
    +//! ## Overview
    +//!
    +//! This module introduces a custom origin [`INV4Origin`], enabling self-management for cores and
    +//! includes the [`ensure_multisig`] function to guarantee calls genuinely come from the multisig account.
    +//! This is an efficient approach considering that converting from CoreId to AccountId is a one-way operation,
    +//! so the origin brings the CoreId to dispatchable calls.
    +//! Converting to a `RawOrigin::Signed` origin for other calls is handled in the runtime.
    +
    +use crate::{
         account_derivation::CoreAccountDerivation,
         pallet::{self, Origin, Pallet},
         Config,
    @@ -57,7 +79,8 @@
         Multisig(MultisigInternalOrigin<T>),
     }
     
    -#[derive(PartialEq, Eq, Encode, Decode, TypeInfo, MaxEncodedLen, Clone, RuntimeDebug)]
    +/// Internal origin for identifying the multisig CoreId.
    +#[derive(PartialEq, Eq, Encode, Decode, TypeInfo, MaxEncodedLen, Clone, RuntimeDebug)]
     pub struct MultisigInternalOrigin<T: pallet::Config> {
         pub id: T::CoreId,
     }
    @@ -75,7 +98,8 @@
         }
     }
     
    -pub fn ensure_multisig<T: Config, OuterOrigin>(
    +/// Ensures the passed origin is a multisig, returning [`MultisigInternalOrigin`].
    +pub fn ensure_multisig<T: Config, OuterOrigin>(
         o: OuterOrigin,
     ) -> Result<MultisigInternalOrigin<T>, BadOrigin>
     where
    diff --git a/src/pallet_inv4/voting.rs.html b/src/pallet_inv4/voting.rs.html
    index 7f5a3d48..90c606fc 100644
    --- a/src/pallet_inv4/voting.rs.html
    +++ b/src/pallet_inv4/voting.rs.html
    @@ -219,7 +219,32 @@
     219
     220
     221
    -
    use crate::{origin::INV4Origin, BalanceOf, Config, CoreStorage, Error, Multisig, Pallet};
    +222
    +223
    +224
    +225
    +226
    +227
    +228
    +229
    +230
    +231
    +232
    +233
    +234
    +235
    +236
    +237
    +
    //! Voting Mechanism.
    +//!
    +//! ## Overview
    +//!
    +//! This module provides a weighted voting [`Tally`] implementation used for managing the multisig's proposals.
    +//! Members each have a balance in voting tokens and this balance differentiate their voting power
    +//! as every vote utilizes the entire `power` of the said member.
    +//! This empowers decision-making where certain members possess greater influence.
    +
    +use crate::{origin::INV4Origin, BalanceOf, Config, CoreStorage, Error, Multisig, Pallet};
     use codec::{Decode, Encode, HasCompact, MaxEncodedLen};
     use core::marker::PhantomData;
     use frame_support::{
    @@ -259,7 +284,8 @@
     }
     
     impl<T: Config> Tally<T> {
    -    pub fn from_parts(
    +    /// Allows for building a `Tally` manually.
    +    pub fn from_parts(
             ayes: Votes<T>,
             nays: Votes<T>,
             records: BoundedBTreeMap<T::AccountId, Vote<Votes<T>>, T::MaxCallers>,
    @@ -272,7 +298,8 @@
             }
         }
     
    -    pub fn process_vote(
    +    /// Check if a vote is valid and add the member's total voting token balance to the tally.
    +    pub fn process_vote(
             &mut self,
             account: T::AccountId,
             maybe_vote: Option<Vote<Votes<T>>>,
    @@ -423,20 +450,25 @@
         }
     }
     
    -#[derive(PartialEq, Eq, Clone, Copy, Encode, Decode, RuntimeDebug, TypeInfo, MaxEncodedLen)]
    +/// Represents a proposal vote within a multisig context.
    +///
    +/// This is both the vote and how many voting tokens it carries.
    +#[derive(PartialEq, Eq, Clone, Copy, Encode, Decode, RuntimeDebug, TypeInfo, MaxEncodedLen)]
     pub enum Vote<Votes> {
         Aye(Votes),
         Nay(Votes),
     }
     
    -pub type VoteRecord<T> = Vote<Votes<T>>;
    +/// Type alias for [`Vote`] with [`BalanceOf`].
    +pub type VoteRecord<T> = Vote<Votes<T>>;
     
     impl<T: Config> Pallet<T>
     where
         Result<INV4Origin<T>, <T as frame_system::Config>::RuntimeOrigin>:
             From<<T as frame_system::Config>::RuntimeOrigin>,
     {
    -    pub fn minimum_support_and_required_approval(core_id: T::CoreId) -> Option<(Perbill, Perbill)> {
    +    /// Returns the minimum support and required approval thresholds of a core.
    +    pub fn minimum_support_and_required_approval(core_id: T::CoreId) -> Option<(Perbill, Perbill)> {
             CoreStorage::<T>::get(core_id).map(|core| (core.minimum_support, core.required_approval))
         }
     }
    diff --git a/type.impl/pallet_inv4/multisig/struct.MultisigOperation.js b/type.impl/pallet_inv4/multisig/struct.MultisigOperation.js
    index ee3235d2..b0e54f59 100644
    --- a/type.impl/pallet_inv4/multisig/struct.MultisigOperation.js
    +++ b/type.impl/pallet_inv4/multisig/struct.MultisigOperation.js
    @@ -1,3 +1,3 @@
     (function() {var type_impls = {
    -"pallet_inv4":[["
    source§

    impl<AccountId: Clone, TallyOf: Clone, Call: Clone, Metadata: Clone> Clone for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn clone(&self) -> MultisigOperation<AccountId, TallyOf, Call, Metadata>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralPartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    ","StructuralPartialEq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> EncodeLike for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: Encode,\n AccountId: Encode,\n Call: Encode,\n Option<Metadata>: Encode,

    ","EncodeLike","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> TypeInfo for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: TypeInfo + 'static,\n AccountId: TypeInfo + 'static,\n Call: TypeInfo + 'static,\n Option<Metadata>: TypeInfo + 'static,\n Metadata: TypeInfo + 'static,

    §

    type Identity = MultisigOperation<AccountId, TallyOf, Call, Metadata>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    ","TypeInfo","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> Decode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: Decode,\n AccountId: Decode,\n Call: Decode,\n Option<Metadata>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>(\n __codec_input_edqy: &mut __CodecInputEdqy\n) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>(\n input: &mut I,\n dst: &mut MaybeUninit<Self>\n) -> Result<DecodeFinished, Error>where\n I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where\n I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    ","Decode","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId: Eq, TallyOf: Eq, Call: Eq, Metadata: Eq> Eq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    ","Eq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    ","StructuralEq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> MaxEncodedLen for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: MaxEncodedLen,\n AccountId: MaxEncodedLen,\n Call: MaxEncodedLen,\n Option<Metadata>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    ","MaxEncodedLen","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> Encode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: Encode,\n AccountId: Encode,\n Call: Encode,\n Option<Metadata>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>(\n &self,\n __codec_dest_edqy: &mut __CodecOutputEdqy\n)

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere\n F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    ","Encode","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId: PartialEq, TallyOf: PartialEq, Call: PartialEq, Metadata: PartialEq> PartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn eq(\n &self,\n other: &MultisigOperation<AccountId, TallyOf, Call, Metadata>\n) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> Debug for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n AccountId: Debug,\n TallyOf: Debug,\n Call: Debug,\n Metadata: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::multisig::MultisigOperationOf"]] +"pallet_inv4":[["
    source§

    impl<AccountId: Clone, TallyOf: Clone, Call: Clone, Metadata: Clone> Clone for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn clone(&self) -> MultisigOperation<AccountId, TallyOf, Call, Metadata>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralPartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    ","StructuralPartialEq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> EncodeLike for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: Encode,\n AccountId: Encode,\n Call: Encode,\n Option<Metadata>: Encode,

    ","EncodeLike","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> TypeInfo for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: TypeInfo + 'static,\n AccountId: TypeInfo + 'static,\n Call: TypeInfo + 'static,\n Option<Metadata>: TypeInfo + 'static,\n Metadata: TypeInfo + 'static,

    §

    type Identity = MultisigOperation<AccountId, TallyOf, Call, Metadata>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    ","TypeInfo","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> Decode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: Decode,\n AccountId: Decode,\n Call: Decode,\n Option<Metadata>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>(\n __codec_input_edqy: &mut __CodecInputEdqy\n) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>(\n input: &mut I,\n dst: &mut MaybeUninit<Self>\n) -> Result<DecodeFinished, Error>where\n I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where\n I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    ","Decode","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId: Eq, TallyOf: Eq, Call: Eq, Metadata: Eq> Eq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    ","Eq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> StructuralEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    ","StructuralEq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> MaxEncodedLen for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: MaxEncodedLen,\n AccountId: MaxEncodedLen,\n Call: MaxEncodedLen,\n Option<Metadata>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    ","MaxEncodedLen","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> Encode for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n TallyOf: Encode,\n AccountId: Encode,\n Call: Encode,\n Option<Metadata>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>(\n &self,\n __codec_dest_edqy: &mut __CodecOutputEdqy\n)

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere\n F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    ","Encode","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId: PartialEq, TallyOf: PartialEq, Call: PartialEq, Metadata: PartialEq> PartialEq for MultisigOperation<AccountId, TallyOf, Call, Metadata>

    source§

    fn eq(\n &self,\n other: &MultisigOperation<AccountId, TallyOf, Call, Metadata>\n) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::multisig::MultisigOperationOf"],["
    source§

    impl<AccountId, TallyOf, Call, Metadata> Debug for MultisigOperation<AccountId, TallyOf, Call, Metadata>where\n AccountId: Debug,\n TallyOf: Debug,\n Call: Debug,\n Metadata: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::multisig::MultisigOperationOf"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/pallet_inv4/origin/enum.INV4Origin.js b/type.impl/pallet_inv4/origin/enum.INV4Origin.js index 71621d7a..c1c669c0 100644 --- a/type.impl/pallet_inv4/origin/enum.INV4Origin.js +++ b/type.impl/pallet_inv4/origin/enum.INV4Origin.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"pallet_inv4":[["
    source§

    impl<T: Config> StructuralEq for INV4Origin<T>

    ","StructuralEq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T> TypeInfo for INV4Origin<T>where\n MultisigInternalOrigin<T>: TypeInfo + 'static,\n T: Config + TypeInfo + 'static,

    §

    type Identity = INV4Origin<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    ","TypeInfo","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Eq + Config> Eq for INV4Origin<T>

    ","Eq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> MaxEncodedLen for INV4Origin<T>where\n MultisigInternalOrigin<T>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    ","MaxEncodedLen","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: PartialEq + Config> PartialEq for INV4Origin<T>

    source§

    fn eq(&self, other: &INV4Origin<T>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> Encode for INV4Origin<T>where\n MultisigInternalOrigin<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>(\n &self,\n __codec_dest_edqy: &mut __CodecOutputEdqy\n)

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere\n F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    ","Encode","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> Decode for INV4Origin<T>where\n MultisigInternalOrigin<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>(\n __codec_input_edqy: &mut __CodecInputEdqy\n) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>(\n input: &mut I,\n dst: &mut MaybeUninit<Self>\n) -> Result<DecodeFinished, Error>where\n I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where\n I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    ","Decode","pallet_inv4::pallet::Origin"],["
    source§

    impl<T> Debug for INV4Origin<T>where\n T: Debug + Config,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> StructuralPartialEq for INV4Origin<T>

    ","StructuralPartialEq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Clone + Config> Clone for INV4Origin<T>

    source§

    fn clone(&self) -> INV4Origin<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> EncodeLike for INV4Origin<T>where\n MultisigInternalOrigin<T>: Encode,

    ","EncodeLike","pallet_inv4::pallet::Origin"]] +"pallet_inv4":[["
    source§

    impl<T: Config> StructuralEq for INV4Origin<T>

    ","StructuralEq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T> TypeInfo for INV4Origin<T>where\n MultisigInternalOrigin<T>: TypeInfo + 'static,\n T: Config + TypeInfo + 'static,

    §

    type Identity = INV4Origin<T>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    ","TypeInfo","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Eq + Config> Eq for INV4Origin<T>

    ","Eq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> MaxEncodedLen for INV4Origin<T>where\n MultisigInternalOrigin<T>: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    ","MaxEncodedLen","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: PartialEq + Config> PartialEq for INV4Origin<T>

    source§

    fn eq(&self, other: &INV4Origin<T>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> Encode for INV4Origin<T>where\n MultisigInternalOrigin<T>: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>(\n &self,\n __codec_dest_edqy: &mut __CodecOutputEdqy\n)

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere\n F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    ","Encode","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> Decode for INV4Origin<T>where\n MultisigInternalOrigin<T>: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>(\n __codec_input_edqy: &mut __CodecInputEdqy\n) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>(\n input: &mut I,\n dst: &mut MaybeUninit<Self>\n) -> Result<DecodeFinished, Error>where\n I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where\n I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    ","Decode","pallet_inv4::pallet::Origin"],["
    source§

    impl<T> Debug for INV4Origin<T>where\n T: Debug + Config,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> StructuralPartialEq for INV4Origin<T>

    ","StructuralPartialEq","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Clone + Config> Clone for INV4Origin<T>

    source§

    fn clone(&self) -> INV4Origin<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::pallet::Origin"],["
    source§

    impl<T: Config> EncodeLike for INV4Origin<T>where\n MultisigInternalOrigin<T>: Encode,

    ","EncodeLike","pallet_inv4::pallet::Origin"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/pallet_inv4/pallet/struct.Pallet.js b/type.impl/pallet_inv4/pallet/struct.Pallet.js index 8bcc1416..24e43a40 100644 --- a/type.impl/pallet_inv4/pallet/struct.Pallet.js +++ b/type.impl/pallet_inv4/pallet/struct.Pallet.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"pallet_inv4":[["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <T as Config>::AccountId: From<[u8; 32]>,

    source

    pub(crate) fn inner_create_core(\n origin: OriginFor<T>,\n metadata: BoundedVec<u8, T::MaxMetadata>,\n minimum_support: Perbill,\n required_approval: Perbill,\n creation_fee_asset: FeeAsset\n) -> DispatchResult

    Inner function for the create_core call.

    \n
    source

    pub(crate) fn inner_set_parameters(\n origin: OriginFor<T>,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n minimum_support: Option<Perbill>,\n required_approval: Option<Perbill>,\n frozen_tokens: Option<bool>\n) -> DispatchResult

    Inner function for the set_parameters call.

    \n
    source

    pub fn is_asset_frozen(core_id: T::CoreId) -> Option<bool>

    Checks if the voting asset is frozen.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn lookup_core(core_id: T::CoreId) -> Option<T::AccountId>

    source

    pub fn lookup_address(\n a: MultiAddress<T::AccountId, T::CoreId>\n) -> Option<T::AccountId>

    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum,\n <T as Config>::AccountId: From<[u8; 32]>,

    source

    pub(crate) fn inner_token_mint(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Inner function for the token_mint call.

    \n
    source

    pub(crate) fn inner_token_burn(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Inner function for the token_burn call.

    \n
    source

    pub(crate) fn inner_operate_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n fee_asset: FeeAsset,\n call: Box<<T as Config>::RuntimeCall>\n) -> DispatchResultWithPostInfo

    Inner function for the operate_multisig call.

    \n
    source

    pub(crate) fn inner_vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash,\n aye: bool\n) -> DispatchResultWithPostInfo

    Inner function for the vote_multisig call.

    \n
    source

    pub(crate) fn inner_withdraw_vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Inner function for the withdraw_token_multisig call.

    \n
    source

    pub(crate) fn inner_cancel_multisig_proposal(\n origin: OriginFor<T>,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Inner function for the cancel_multisig_proposal call.

    \n
    source

    pub fn add_member(core_id: &T::CoreId, member: &T::AccountId)

    source

    pub fn remove_member(core_id: &T::CoreId, member: &T::AccountId)

    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,

    source

    pub fn minimum_support_and_required_approval(\n core_id: T::CoreId\n) -> Option<(Perbill, Perbill)>

    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum,\n <T as Config>::AccountId: From<[u8; 32]>,

    Dispatch functions

    \n
    source

    pub fn create_core(\n owner: OriginFor<T>,\n metadata: BoundedVec<u8, T::MaxMetadata>,\n minimum_support: Perbill,\n required_approval: Perbill,\n creation_fee_asset: FeeAsset\n) -> DispatchResultWithPostInfo

    Create a new core

    \n
      \n
    • metadata: Arbitrary byte vec to be attached to the core info
    • \n
    • minimum_support: Minimum amount of positive votes out of total token supply required to approve a proposal
    • \n
    • required_approval: Minimum amount of positive votes out of current positive + negative votes required to approve a proposal
    • \n
    • creation_fee_asset: Token to be used to pay the core creation fee
    • \n
    \n
    source

    pub fn token_mint(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Mint the core’s voting token to a target (called by a core origin)

    \n
      \n
    • amount: Balance amount
    • \n
    • target: Account receiving the minted tokens
    • \n
    \n
    source

    pub fn token_burn(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Burn the core’s voting token from a target (called by a core origin)

    \n
      \n
    • amount: Balance amount
    • \n
    • target: Account having tokens burned
    • \n
    \n
    source

    pub fn operate_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n fee_asset: FeeAsset,\n call: Box<<T as Config>::RuntimeCall>\n) -> DispatchResultWithPostInfo

    Create a new multisig proposal, auto-executing if caller passes execution threshold requirements\nFees are calculated using the length of the metadata and the call\nThe proposed call’s weight is used internally to charge the multisig instead of the user proposing the call

    \n
      \n
    • core_id: Id of the core to propose the call in
    • \n
    • metadata: Arbitrary byte vec to be attached to the proposal
    • \n
    • fee_asset: Token to be used by the multisig to pay for call fees
    • \n
    • call: The actual call to be proposed
    • \n
    \n
    source

    pub fn vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash,\n aye: bool\n) -> DispatchResultWithPostInfo

    Vote on an existing multisig proposal, auto-executing if caller puts vote tally past execution threshold requirements

    \n
      \n
    • core_id: Id of the core where the proposal is
    • \n
    • call_hash: Hash of the call identifying the proposal
    • \n
    • aye: Wheter or not to vote positively
    • \n
    \n
    source

    pub fn withdraw_vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Remove caller’s vote from an existing multisig proposal

    \n
      \n
    • core_id: Id of the core where the proposal is
    • \n
    • call_hash: Hash of the call identifying the proposal
    • \n
    \n
    source

    pub fn cancel_multisig_proposal(\n caller: OriginFor<T>,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Cancel an existing multisig proposal (called by a core origin)

    \n
      \n
    • call_hash: Hash of the call identifying the proposal
    • \n
    \n
    source

    pub fn set_parameters(\n origin: OriginFor<T>,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n minimum_support: Option<Perbill>,\n required_approval: Option<Perbill>,\n frozen_tokens: Option<bool>\n) -> DispatchResult

    Change core parameters incl. voting thresholds and token freeze state (called by a core origin)

    \n
      \n
    • metadata: Arbitrary byte vec to be attached to the core info
    • \n
    • minimum_support: Minimum amount of positive votes out of total token supply required to approve a proposal
    • \n
    • required_approval: Minimum amount of positive votes out of current positive + negative votes required to approve a proposal
    • \n
    • frozen_tokens: Wheter or not the core’s voting token should be transferable by the holders
    • \n
    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub(crate) fn deposit_event(event: Event<T>)

    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn next_core_id() -> T::CoreId

    Next available Core ID.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_storage<KArg>(k: KArg) -> Option<CoreInfoOf<T>>where\n KArg: EncodeLike<T::CoreId>,

    Core info storage.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_by_account<KArg>(k: KArg) -> Option<T::CoreId>where\n KArg: EncodeLike<T::AccountId>,

    Mapping of account id -> core id.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn multisig<KArg1, KArg2>(\n k1: KArg1,\n k2: KArg2\n) -> Option<MultisigOperationOf<T>>where\n KArg1: EncodeLike<T::CoreId>,\n KArg2: EncodeLike<T::Hash>,

    Details of a multisig call.

    \n

    Key: (Core ID, call hash)

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_members<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Option<()>where\n KArg1: EncodeLike<T::CoreId>,\n KArg2: EncodeLike<T::AccountId>,

    Stores a list of members for each Core.\nThis storage should be always handled by the runtime and mutated by CoreAssets hooks.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> GetStorageVersion for Pallet<T>

    §

    type CurrentStorageVersion = StorageVersion

    This will be filled out by the pallet macro. Read more
    source§

    fn current_storage_version() -> Self::CurrentStorageVersion

    Returns the current storage version as supported by the pallet.
    source§

    fn on_chain_storage_version() -> StorageVersion

    Returns the on-chain storage version of the pallet as stored in the storage.
    ","GetStorageVersion","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Hooks<<T as Config>::BlockNumber> for Pallet<T>

    §

    fn on_finalize(_n: BlockNumber)

    The block is being finalized. Implement to have something happen.
    §

    fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight

    This will be run when the block is being finalized (before on_finalize). Read more
    §

    fn on_initialize(_n: BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    §

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    §

    fn offchain_worker(_n: BlockNumber)

    Implementing this function on a module allows you to perform long-running tasks\nthat make (by default) validators generate transactions that feed results\nof those long-running computations back on chain. Read more
    §

    fn integrity_test()

    Run integrity test. Read more
    ","Hooks<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> PalletInfoAccess for Pallet<T>

    source§

    fn index() -> usize

    Index of the pallet as configured in the runtime.
    source§

    fn name() -> &'static str

    Name of the pallet as configured in the runtime.
    source§

    fn module_name() -> &'static str

    Name of the Rust module containing the pallet.
    source§

    fn crate_version() -> CrateVersion

    Version of the crate containing the pallet.
    ","PalletInfoAccess","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnIdle<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_idle(n: <T as Config>::BlockNumber, remaining_weight: Weight) -> Weight

    The block is being finalized.\nImplement to have something happen in case there is leftover weight.\nCheck the passed remaining_weight to make sure it is high enough to allow for\nyour pallet’s extra computation. Read more
    ","OnIdle<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnInitialize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_initialize(n: <T as Config>::BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    ","OnInitialize<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T> Debug for Pallet<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OffchainWorker<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn offchain_worker(n: <T as Config>::BlockNumber)

    This function is being called after every block import (when fully synced). Read more
    ","OffchainWorker<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnFinalize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_finalize(n: <T as Config>::BlockNumber)

    The block is being finalized. Implement to have something happen. Read more
    ","OnFinalize<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    source§

    fn classes() -> Vec<Self::Class>

    source§

    fn access_poll<R>(\n class: Self::Class,\n index: Self::Index,\n f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> R\n) -> R

    source§

    fn try_access_poll<R>(\n class: Self::Class,\n index: Self::Index,\n f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> Result<R, DispatchError>\n) -> Result<R, DispatchError>

    source§

    fn as_ongoing(\n class: Self::Class,\n index: Self::Index\n) -> Option<(Tally<T>, T::CoreId)>

    Some if the referendum index can be voted on, along with the tally and class of\nreferendum. Read more
    ","CustomPolling>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnRuntimeUpgrade for Pallet<T>

    source§

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    ","OnRuntimeUpgrade","pallet_inv4::pallet::Module"],["
    source§

    impl<T> PartialEq for Pallet<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::pallet::Module"],["
    source§

    impl<T> Clone for Pallet<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::pallet::Module"],["
    source§

    impl<T> Eq for Pallet<T>

    ","Eq","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> PalletsInfoAccess for Pallet<T>

    source§

    fn count() -> usize

    The number of pallets’ information that this type represents. Read more
    source§

    fn infos() -> Vec<PalletInfoData>

    All of the pallets’ information that this type represents.
    ","PalletsInfoAccess","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> IntegrityTest for Pallet<T>

    source§

    fn integrity_test()

    Run integrity test. Read more
    ","IntegrityTest","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnGenesis for Pallet<T>

    source§

    fn on_genesis()

    Something that should happen at genesis.
    ","OnGenesis","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> WhitelistedStorageKeys for Pallet<T>

    source§

    fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>

    Returns a Vec<TrackedStorageKey> indicating the storage keys that\nshould be whitelisted during benchmarking. This means that those keys\nwill be excluded from the benchmarking performance calculation.
    ","WhitelistedStorageKeys","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> CoreAccountDerivation<T> for Pallet<T>where\n T::AccountId: From<[u8; 32]>,

    source§

    fn derive_core_account(core_id: T::CoreId) -> T::AccountId

    source§

    fn core_location(core_id: T::CoreId) -> Junctions

    ","CoreAccountDerivation","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> StorageInfoTrait for Pallet<T>

    source§

    fn storage_info() -> Vec<StorageInfo>

    ","StorageInfoTrait","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Callable<T> for Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum,\n <T as Config>::AccountId: From<[u8; 32]>,

    ","Callable","pallet_inv4::pallet::Module"]] +"pallet_inv4":[["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <T as Config>::AccountId: From<[u8; 32]>,

    source

    pub(crate) fn inner_create_core(\n origin: OriginFor<T>,\n metadata: BoundedVec<u8, T::MaxMetadata>,\n minimum_support: Perbill,\n required_approval: Perbill,\n creation_fee_asset: FeeAsset\n) -> DispatchResult

    Inner function for the create_core call.

    \n
    source

    pub(crate) fn inner_set_parameters(\n origin: OriginFor<T>,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n minimum_support: Option<Perbill>,\n required_approval: Option<Perbill>,\n frozen_tokens: Option<bool>\n) -> DispatchResult

    Inner function for the set_parameters call.

    \n
    source

    pub fn is_asset_frozen(core_id: T::CoreId) -> Option<bool>

    Checks if the voting asset is frozen.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn lookup_core(core_id: T::CoreId) -> Option<T::AccountId>

    Queries CoreStorage to retrieve the AccountId of a core.

    \n
    source

    pub fn lookup_address(\n a: MultiAddress<T::AccountId, T::CoreId>\n) -> Option<T::AccountId>

    Matches MultiAddress to allow for a MultiAddress::Index containing a CoreId to be converted\nto it’s derived AccountId.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum,\n <T as Config>::AccountId: From<[u8; 32]>,

    source

    pub(crate) fn inner_token_mint(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Inner function for the token_mint call.

    \n
    source

    pub(crate) fn inner_token_burn(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Inner function for the token_burn call.

    \n
    source

    pub(crate) fn inner_operate_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n fee_asset: FeeAsset,\n call: Box<<T as Config>::RuntimeCall>\n) -> DispatchResultWithPostInfo

    Inner function for the operate_multisig call.

    \n
    source

    pub(crate) fn inner_vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash,\n aye: bool\n) -> DispatchResultWithPostInfo

    Inner function for the vote_multisig call.

    \n
    source

    pub(crate) fn inner_withdraw_vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Inner function for the withdraw_token_multisig call.

    \n
    source

    pub(crate) fn inner_cancel_multisig_proposal(\n origin: OriginFor<T>,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Inner function for the cancel_multisig_proposal call.

    \n
    source

    pub fn add_member(core_id: &T::CoreId, member: &T::AccountId)

    source

    pub fn remove_member(core_id: &T::CoreId, member: &T::AccountId)

    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,

    source

    pub fn minimum_support_and_required_approval(\n core_id: T::CoreId\n) -> Option<(Perbill, Perbill)>

    Returns the minimum support and required approval thresholds of a core.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum,\n <T as Config>::AccountId: From<[u8; 32]>,

    Dispatch functions

    \n
    source

    pub fn create_core(\n owner: OriginFor<T>,\n metadata: BoundedVec<u8, T::MaxMetadata>,\n minimum_support: Perbill,\n required_approval: Perbill,\n creation_fee_asset: FeeAsset\n) -> DispatchResultWithPostInfo

    Create a new core

    \n
      \n
    • metadata: Arbitrary byte vec to be attached to the core info
    • \n
    • minimum_support: Minimum amount of positive votes out of total token supply required to approve a proposal
    • \n
    • required_approval: Minimum amount of positive votes out of current positive + negative votes required to approve a proposal
    • \n
    • creation_fee_asset: Token to be used to pay the core creation fee
    • \n
    \n
    source

    pub fn token_mint(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Mint the core’s voting token to a target (called by a core origin)

    \n
      \n
    • amount: Balance amount
    • \n
    • target: Account receiving the minted tokens
    • \n
    \n
    source

    pub fn token_burn(\n origin: OriginFor<T>,\n amount: BalanceOf<T>,\n target: T::AccountId\n) -> DispatchResult

    Burn the core’s voting token from a target (called by a core origin)

    \n
      \n
    • amount: Balance amount
    • \n
    • target: Account having tokens burned
    • \n
    \n
    source

    pub fn operate_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n fee_asset: FeeAsset,\n call: Box<<T as Config>::RuntimeCall>\n) -> DispatchResultWithPostInfo

    Create a new multisig proposal, auto-executing if caller passes execution threshold requirements\nFees are calculated using the length of the metadata and the call\nThe proposed call’s weight is used internally to charge the multisig instead of the user proposing the call

    \n
      \n
    • core_id: Id of the core to propose the call in
    • \n
    • metadata: Arbitrary byte vec to be attached to the proposal
    • \n
    • fee_asset: Token to be used by the multisig to pay for call fees
    • \n
    • call: The actual call to be proposed
    • \n
    \n
    source

    pub fn vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash,\n aye: bool\n) -> DispatchResultWithPostInfo

    Vote on an existing multisig proposal, auto-executing if caller puts vote tally past execution threshold requirements

    \n
      \n
    • core_id: Id of the core where the proposal is
    • \n
    • call_hash: Hash of the call identifying the proposal
    • \n
    • aye: Wheter or not to vote positively
    • \n
    \n
    source

    pub fn withdraw_vote_multisig(\n caller: OriginFor<T>,\n core_id: T::CoreId,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Remove caller’s vote from an existing multisig proposal

    \n
      \n
    • core_id: Id of the core where the proposal is
    • \n
    • call_hash: Hash of the call identifying the proposal
    • \n
    \n
    source

    pub fn cancel_multisig_proposal(\n caller: OriginFor<T>,\n call_hash: T::Hash\n) -> DispatchResultWithPostInfo

    Cancel an existing multisig proposal (called by a core origin)

    \n
      \n
    • call_hash: Hash of the call identifying the proposal
    • \n
    \n
    source

    pub fn set_parameters(\n origin: OriginFor<T>,\n metadata: Option<BoundedVec<u8, T::MaxMetadata>>,\n minimum_support: Option<Perbill>,\n required_approval: Option<Perbill>,\n frozen_tokens: Option<bool>\n) -> DispatchResult

    Change core parameters incl. voting thresholds and token freeze state (called by a core origin)

    \n
      \n
    • metadata: Arbitrary byte vec to be attached to the core info
    • \n
    • minimum_support: Minimum amount of positive votes out of total token supply required to approve a proposal
    • \n
    • required_approval: Minimum amount of positive votes out of current positive + negative votes required to approve a proposal
    • \n
    • frozen_tokens: Wheter or not the core’s voting token should be transferable by the holders
    • \n
    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub(crate) fn deposit_event(event: Event<T>)

    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn next_core_id() -> T::CoreId

    Next available Core ID.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_storage<KArg>(k: KArg) -> Option<CoreInfoOf<T>>where\n KArg: EncodeLike<T::CoreId>,

    Core info storage.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_by_account<KArg>(k: KArg) -> Option<T::CoreId>where\n KArg: EncodeLike<T::AccountId>,

    Mapping of account id -> core id.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn multisig<KArg1, KArg2>(\n k1: KArg1,\n k2: KArg2\n) -> Option<MultisigOperationOf<T>>where\n KArg1: EncodeLike<T::CoreId>,\n KArg2: EncodeLike<T::Hash>,

    Details of a multisig call.

    \n

    Key: (Core ID, call hash)

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Pallet<T>

    source

    pub fn core_members<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Option<()>where\n KArg1: EncodeLike<T::CoreId>,\n KArg2: EncodeLike<T::AccountId>,

    Stores a list of members for each Core.\nThis storage should be always handled by the runtime and mutated by CoreAssets hooks.

    \n
    ",0,"pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> GetStorageVersion for Pallet<T>

    §

    type CurrentStorageVersion = StorageVersion

    This will be filled out by the pallet macro. Read more
    source§

    fn current_storage_version() -> Self::CurrentStorageVersion

    Returns the current storage version as supported by the pallet.
    source§

    fn on_chain_storage_version() -> StorageVersion

    Returns the on-chain storage version of the pallet as stored in the storage.
    ","GetStorageVersion","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Hooks<<T as Config>::BlockNumber> for Pallet<T>

    §

    fn on_finalize(_n: BlockNumber)

    The block is being finalized. Implement to have something happen.
    §

    fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight

    This will be run when the block is being finalized (before on_finalize). Read more
    §

    fn on_initialize(_n: BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    §

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    §

    fn offchain_worker(_n: BlockNumber)

    Implementing this function on a module allows you to perform long-running tasks\nthat make (by default) validators generate transactions that feed results\nof those long-running computations back on chain. Read more
    §

    fn integrity_test()

    Run integrity test. Read more
    ","Hooks<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> PalletInfoAccess for Pallet<T>

    source§

    fn index() -> usize

    Index of the pallet as configured in the runtime.
    source§

    fn name() -> &'static str

    Name of the pallet as configured in the runtime.
    source§

    fn module_name() -> &'static str

    Name of the Rust module containing the pallet.
    source§

    fn crate_version() -> CrateVersion

    Version of the crate containing the pallet.
    ","PalletInfoAccess","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnIdle<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_idle(n: <T as Config>::BlockNumber, remaining_weight: Weight) -> Weight

    The block is being finalized.\nImplement to have something happen in case there is leftover weight.\nCheck the passed remaining_weight to make sure it is high enough to allow for\nyour pallet’s extra computation. Read more
    ","OnIdle<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnInitialize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_initialize(n: <T as Config>::BlockNumber) -> Weight

    The block is being initialized. Implement to have something happen. Read more
    ","OnInitialize<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T> Debug for Pallet<T>

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OffchainWorker<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn offchain_worker(n: <T as Config>::BlockNumber)

    This function is being called after every block import (when fully synced). Read more
    ","OffchainWorker<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnFinalize<<T as Config>::BlockNumber> for Pallet<T>

    source§

    fn on_finalize(n: <T as Config>::BlockNumber)

    The block is being finalized. Implement to have something happen. Read more
    ","OnFinalize<::BlockNumber>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> CustomPolling<Tally<T>> for Pallet<T>

    §

    type Index = <T as Config>::Hash

    §

    type Votes = <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance

    §

    type Moment = <T as Config>::BlockNumber

    §

    type Class = <T as Config>::CoreId

    source§

    fn classes() -> Vec<Self::Class>

    source§

    fn access_poll<R>(\n class: Self::Class,\n index: Self::Index,\n f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> R\n) -> R

    source§

    fn try_access_poll<R>(\n class: Self::Class,\n index: Self::Index,\n f: impl FnOnce(PollStatus<&mut Tally<T>, T::BlockNumber, T::CoreId>) -> Result<R, DispatchError>\n) -> Result<R, DispatchError>

    source§

    fn as_ongoing(\n class: Self::Class,\n index: Self::Index\n) -> Option<(Tally<T>, T::CoreId)>

    Some if the referendum index can be voted on, along with the tally and class of\nreferendum. Read more
    ","CustomPolling>","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnRuntimeUpgrade for Pallet<T>

    source§

    fn on_runtime_upgrade() -> Weight

    Perform a module upgrade. Read more
    ","OnRuntimeUpgrade","pallet_inv4::pallet::Module"],["
    source§

    impl<T> PartialEq for Pallet<T>

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::pallet::Module"],["
    source§

    impl<T> Clone for Pallet<T>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::pallet::Module"],["
    source§

    impl<T> Eq for Pallet<T>

    ","Eq","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> PalletsInfoAccess for Pallet<T>

    source§

    fn count() -> usize

    The number of pallets’ information that this type represents. Read more
    source§

    fn infos() -> Vec<PalletInfoData>

    All of the pallets’ information that this type represents.
    ","PalletsInfoAccess","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> IntegrityTest for Pallet<T>

    source§

    fn integrity_test()

    Run integrity test. Read more
    ","IntegrityTest","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> OnGenesis for Pallet<T>

    source§

    fn on_genesis()

    Something that should happen at genesis.
    ","OnGenesis","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> WhitelistedStorageKeys for Pallet<T>

    source§

    fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>

    Returns a Vec<TrackedStorageKey> indicating the storage keys that\nshould be whitelisted during benchmarking. This means that those keys\nwill be excluded from the benchmarking performance calculation.
    ","WhitelistedStorageKeys","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> CoreAccountDerivation<T> for Pallet<T>where\n T::AccountId: From<[u8; 32]>,

    source§

    fn derive_core_account(core_id: T::CoreId) -> T::AccountId

    HashedDescription of the core location from the perspective of a sibling chain.\nThis derivation allows the local account address to match the account address in other parachains.\nReference: https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/xcm-builder/src/location_conversion.rs

    \n
    source§

    fn core_location(core_id: T::CoreId) -> Junctions

    Core location is defined as a plurality within the parachain.

    \n
    ","CoreAccountDerivation","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> StorageInfoTrait for Pallet<T>

    source§

    fn storage_info() -> Vec<StorageInfo>

    ","StorageInfoTrait","pallet_inv4::pallet::Module"],["
    source§

    impl<T: Config> Callable<T> for Pallet<T>where\n Result<INV4Origin<T>, <T as Config>::RuntimeOrigin>: From<<T as Config>::RuntimeOrigin>,\n <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sum,\n <T as Config>::AccountId: From<[u8; 32]>,

    ","Callable","pallet_inv4::pallet::Module"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/pallet_inv4/voting/enum.Vote.js b/type.impl/pallet_inv4/voting/enum.Vote.js index 494f2ad8..bc9eac36 100644 --- a/type.impl/pallet_inv4/voting/enum.Vote.js +++ b/type.impl/pallet_inv4/voting/enum.Vote.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"pallet_inv4":[["
    source§

    impl<Votes: Copy> Copy for Vote<Votes>

    ","Copy","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> EncodeLike for Vote<Votes>where\n Votes: Encode,

    ","EncodeLike","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> StructuralPartialEq for Vote<Votes>

    ","StructuralPartialEq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> StructuralEq for Vote<Votes>

    ","StructuralEq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes: Clone> Clone for Vote<Votes>

    source§

    fn clone(&self) -> Vote<Votes>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> Encode for Vote<Votes>where\n Votes: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>(\n &self,\n __codec_dest_edqy: &mut __CodecOutputEdqy\n)

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere\n F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    ","Encode","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> Decode for Vote<Votes>where\n Votes: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>(\n __codec_input_edqy: &mut __CodecInputEdqy\n) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>(\n input: &mut I,\n dst: &mut MaybeUninit<Self>\n) -> Result<DecodeFinished, Error>where\n I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where\n I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    ","Decode","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> TypeInfo for Vote<Votes>where\n Votes: TypeInfo + 'static,

    §

    type Identity = Vote<Votes>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    ","TypeInfo","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes: Eq> Eq for Vote<Votes>

    ","Eq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes: PartialEq> PartialEq for Vote<Votes>

    source§

    fn eq(&self, other: &Vote<Votes>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> MaxEncodedLen for Vote<Votes>where\n Votes: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    ","MaxEncodedLen","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> Debug for Vote<Votes>where\n Votes: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::voting::VoteRecord"]] +"pallet_inv4":[["
    source§

    impl<Votes: Copy> Copy for Vote<Votes>

    ","Copy","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> EncodeLike for Vote<Votes>where\n Votes: Encode,

    ","EncodeLike","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> StructuralPartialEq for Vote<Votes>

    ","StructuralPartialEq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> StructuralEq for Vote<Votes>

    ","StructuralEq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes: Clone> Clone for Vote<Votes>

    source§

    fn clone(&self) -> Vote<Votes>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> Encode for Vote<Votes>where\n Votes: Encode,

    source§

    fn size_hint(&self) -> usize

    If possible give a hint of expected size of the encoding. Read more
    source§

    fn encode_to<__CodecOutputEdqy: Output + ?Sized>(\n &self,\n __codec_dest_edqy: &mut __CodecOutputEdqy\n)

    Convert self to a slice and append it to the destination.
    §

    fn encode(&self) -> Vec<u8>

    Convert self to an owned vector.
    §

    fn using_encoded<R, F>(&self, f: F) -> Rwhere\n F: FnOnce(&[u8]) -> R,

    Convert self to a slice and then invoke the given closure with it.
    §

    fn encoded_size(&self) -> usize

    Calculates the encoded size. Read more
    ","Encode","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> Decode for Vote<Votes>where\n Votes: Decode,

    source§

    fn decode<__CodecInputEdqy: Input>(\n __codec_input_edqy: &mut __CodecInputEdqy\n) -> Result<Self, Error>

    Attempt to deserialise the value from input.
    §

    fn decode_into<I>(\n input: &mut I,\n dst: &mut MaybeUninit<Self>\n) -> Result<DecodeFinished, Error>where\n I: Input,

    Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
    §

    fn skip<I>(input: &mut I) -> Result<(), Error>where\n I: Input,

    Attempt to skip the encoded value from input. Read more
    §

    fn encoded_fixed_size() -> Option<usize>

    Returns the fixed encoded size of the type. Read more
    ","Decode","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> TypeInfo for Vote<Votes>where\n Votes: TypeInfo + 'static,

    §

    type Identity = Vote<Votes>

    The type identifying for which type info is provided. Read more
    source§

    fn type_info() -> Type

    Returns the static type identifier for Self.
    ","TypeInfo","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes: Eq> Eq for Vote<Votes>

    ","Eq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes: PartialEq> PartialEq for Vote<Votes>

    source§

    fn eq(&self, other: &Vote<Votes>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> MaxEncodedLen for Vote<Votes>where\n Votes: MaxEncodedLen,

    source§

    fn max_encoded_len() -> usize

    Upper bound, in bytes, of the maximum encoded size of this item.
    ","MaxEncodedLen","pallet_inv4::voting::VoteRecord"],["
    source§

    impl<Votes> Debug for Vote<Votes>where\n Votes: Debug,

    source§

    fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","pallet_inv4::voting::VoteRecord"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file