git.delta.rocks / unique-network / refs/commits / 7f04dc961d64

difftreelog

chore update polkadot types

Daniel Shiposha2023-10-20parent: #7fa45b5.patch.diff
in: master

11 files changed

modifiedtests/src/interfaces/augment-api-consts.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-consts.ts
+++ b/tests/src/interfaces/augment-api-consts.ts
@@ -9,7 +9,7 @@
 import type { Option, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
 import type { Codec, ITuple } from '@polkadot/types-codec/types';
 import type { H160, Perbill, Permill } from '@polkadot/types/interfaces/runtime';
-import type { FrameSupportPalletId, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, PalletReferendaTrackInfo, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, UpDataStructsCollectionLimits, XcmV3MultiLocation } from '@polkadot/types/lookup';
+import type { FrameSupportPalletId, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, PalletReferendaTrackInfo, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, StagingXcmV3MultiLocation, UpDataStructsCollectionLimits } from '@polkadot/types/lookup';
 
 export type __AugmentedConst<ApiType extends ApiTypes> = AugmentedConst<ApiType>;
 
@@ -79,13 +79,6 @@
        **/
       [key: string]: Codec;
     };
-    collatorSelection: {
-      licenceBondIdentifier: U8aFixed & AugmentedConst<ApiType>;
-      /**
-       * Generic const
-       **/
-      [key: string]: Codec;
-    };
     common: {
       /**
        * Maximum admins per collection.
@@ -518,6 +511,16 @@
        **/
       [key: string]: Codec;
     };
+    utility: {
+      /**
+       * The limit on the number of batched calls.
+       **/
+      batchedCallsLimit: u32 & AugmentedConst<ApiType>;
+      /**
+       * Generic const
+       **/
+      [key: string]: Codec;
+    };
     vesting: {
       /**
        * The minimum amount transferred to call `vested_transfer`.
@@ -539,7 +542,7 @@
       /**
        * Self chain location.
        **/
-      selfLocation: XcmV3MultiLocation & AugmentedConst<ApiType>;
+      selfLocation: StagingXcmV3MultiLocation & AugmentedConst<ApiType>;
       /**
        * Generic const
        **/
modifiedtests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-errors.ts
+++ b/tests/src/interfaces/augment-api-errors.ts
@@ -227,6 +227,10 @@
        **/
       EmptyPropertyKey: AugmentedError<ApiType>;
       /**
+       * Fungible tokens hold no ID, and the default value of TokenId for a fungible collection is 0.
+       **/
+      FungibleItemsHaveNoId: AugmentedError<ApiType>;
+      /**
        * Only ASCII letters, digits, and symbols `_`, `-`, and `.` are allowed
        **/
       InvalidCharacterInPropertyKey: AugmentedError<ApiType>;
@@ -328,6 +332,10 @@
        **/
       NotMember: AugmentedError<ApiType>;
       /**
+       * Prime account is not a member
+       **/
+      PrimeAccountNotMember: AugmentedError<ApiType>;
+      /**
        * Proposal must exist
        **/
       ProposalMissing: AugmentedError<ApiType>;
@@ -738,10 +746,6 @@
        **/
       FungibleItemsDontHaveData: AugmentedError<ApiType>;
       /**
-       * Fungible tokens hold no ID, and the default value of TokenId for Fungible collection is 0.
-       **/
-      FungibleItemsHaveNoId: AugmentedError<ApiType>;
-      /**
        * Only a fungible collection could be possibly broken; any fungible token is valid.
        **/
       FungibleTokensAreAlwaysValid: AugmentedError<ApiType>;
@@ -966,8 +970,8 @@
        **/
       NoSubscription: AugmentedError<ApiType>;
       /**
-       * There was some other issue (i.e. not to do with routing) in sending the message. Perhaps
-       * a lack of space for buffering the message.
+       * There was some other issue (i.e. not to do with routing) in sending the message.
+       * Perhaps a lack of space for buffering the message.
        **/
       SendFailure: AugmentedError<ApiType>;
       /**
@@ -1224,6 +1228,10 @@
        **/
       NotMember: AugmentedError<ApiType>;
       /**
+       * Prime account is not a member
+       **/
+      PrimeAccountNotMember: AugmentedError<ApiType>;
+      /**
        * Proposal must exist
        **/
       ProposalMissing: AugmentedError<ApiType>;
@@ -1358,6 +1366,16 @@
        **/
       [key: string]: AugmentedError<ApiType>;
     };
+    utility: {
+      /**
+       * Too many calls batched.
+       **/
+      TooManyCalls: AugmentedError<ApiType>;
+      /**
+       * Generic error
+       **/
+      [key: string]: AugmentedError<ApiType>;
+    };
     vesting: {
       /**
        * The vested transfer amount is too low
modifiedtests/src/interfaces/augment-api-events.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-events.ts
+++ b/tests/src/interfaces/augment-api-events.ts
@@ -9,7 +9,7 @@
 import type { Bytes, Null, Option, Result, U8aFixed, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
 import type { ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportDispatchDispatchInfo, FrameSupportPreimagesBounded, FrameSupportTokensMiscBalanceStatus, OrmlVestingVestingSchedule, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletStateTrieMigrationError, PalletStateTrieMigrationMigrationCompute, SpRuntimeDispatchError, SpWeightsWeightV2Weight, XcmV3MultiAsset, XcmV3MultiLocation, XcmV3MultiassetMultiAssets, XcmV3Response, XcmV3TraitsError, XcmV3TraitsOutcome, XcmV3Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
+import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportDispatchDispatchInfo, FrameSupportPreimagesBounded, FrameSupportTokensMiscBalanceStatus, OrmlVestingVestingSchedule, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetId, PalletForeignAssetsModuleAssetMetadata, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletStateTrieMigrationError, PalletStateTrieMigrationMigrationCompute, SpRuntimeDispatchError, SpWeightsWeightV2Weight, StagingXcmV3MultiAsset, StagingXcmV3MultiLocation, StagingXcmV3MultiassetMultiAssets, StagingXcmV3Response, StagingXcmV3TraitsError, StagingXcmV3TraitsOutcome, StagingXcmV3Xcm, StagingXcmVersionedMultiAssets, StagingXcmVersionedMultiLocation } from '@polkadot/types/lookup';
 
 export type __AugmentedEvent<ApiType extends ApiTypes> = AugmentedEvent<ApiType>;
 
@@ -331,7 +331,7 @@
        * Downward message executed with the given outcome.
        * \[ id, outcome \]
        **/
-      ExecutedDownward: AugmentedEvent<ApiType, [U8aFixed, XcmV3TraitsOutcome]>;
+      ExecutedDownward: AugmentedEvent<ApiType, [U8aFixed, StagingXcmV3TraitsOutcome]>;
       /**
        * Downward message is invalid XCM.
        * \[ id \]
@@ -425,19 +425,19 @@
       /**
        * Downward message executed with the given outcome.
        **/
-      ExecutedDownward: AugmentedEvent<ApiType, [messageId: U8aFixed, outcome: XcmV3TraitsOutcome], { messageId: U8aFixed, outcome: XcmV3TraitsOutcome }>;
+      ExecutedDownward: AugmentedEvent<ApiType, [messageHash: U8aFixed, messageId: U8aFixed, outcome: StagingXcmV3TraitsOutcome], { messageHash: U8aFixed, messageId: U8aFixed, outcome: StagingXcmV3TraitsOutcome }>;
       /**
        * Downward message is invalid XCM.
        **/
-      InvalidFormat: AugmentedEvent<ApiType, [messageId: U8aFixed], { messageId: U8aFixed }>;
+      InvalidFormat: AugmentedEvent<ApiType, [messageHash: U8aFixed], { messageHash: U8aFixed }>;
       /**
-       * The maximum number of downward messages was.
+       * The maximum number of downward messages was reached.
        **/
-      MaxMessagesExhausted: AugmentedEvent<ApiType, [messageId: U8aFixed], { messageId: U8aFixed }>;
+      MaxMessagesExhausted: AugmentedEvent<ApiType, [messageHash: U8aFixed], { messageHash: U8aFixed }>;
       /**
        * Downward message is overweight and was placed in the overweight queue.
        **/
-      OverweightEnqueued: AugmentedEvent<ApiType, [messageId: U8aFixed, overweightIndex: u64, requiredWeight: SpWeightsWeightV2Weight], { messageId: U8aFixed, overweightIndex: u64, requiredWeight: SpWeightsWeightV2Weight }>;
+      OverweightEnqueued: AugmentedEvent<ApiType, [messageHash: U8aFixed, messageId: U8aFixed, overweightIndex: u64, requiredWeight: SpWeightsWeightV2Weight], { messageHash: U8aFixed, messageId: U8aFixed, overweightIndex: u64, requiredWeight: SpWeightsWeightV2Weight }>;
       /**
        * Downward message from the overweight queue was executed.
        **/
@@ -445,11 +445,11 @@
       /**
        * Downward message is unsupported version of XCM.
        **/
-      UnsupportedVersion: AugmentedEvent<ApiType, [messageId: U8aFixed], { messageId: U8aFixed }>;
+      UnsupportedVersion: AugmentedEvent<ApiType, [messageHash: U8aFixed], { messageHash: U8aFixed }>;
       /**
        * The weight limit for handling downward messages was reached.
        **/
-      WeightExhausted: AugmentedEvent<ApiType, [messageId: U8aFixed, remainingWeight: SpWeightsWeightV2Weight, requiredWeight: SpWeightsWeightV2Weight], { messageId: U8aFixed, remainingWeight: SpWeightsWeightV2Weight, requiredWeight: SpWeightsWeightV2Weight }>;
+      WeightExhausted: AugmentedEvent<ApiType, [messageHash: U8aFixed, messageId: U8aFixed, remainingWeight: SpWeightsWeightV2Weight, requiredWeight: SpWeightsWeightV2Weight], { messageHash: U8aFixed, messageId: U8aFixed, remainingWeight: SpWeightsWeightV2Weight, requiredWeight: SpWeightsWeightV2Weight }>;
       /**
        * Generic event
        **/
@@ -610,19 +610,19 @@
       /**
        * The asset registered.
        **/
-      AssetRegistered: AugmentedEvent<ApiType, [assetId: PalletForeignAssetsAssetIds, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: PalletForeignAssetsAssetIds, metadata: PalletForeignAssetsModuleAssetMetadata }>;
+      AssetRegistered: AugmentedEvent<ApiType, [assetId: PalletForeignAssetsAssetId, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: PalletForeignAssetsAssetId, metadata: PalletForeignAssetsModuleAssetMetadata }>;
       /**
        * The asset updated.
        **/
-      AssetUpdated: AugmentedEvent<ApiType, [assetId: PalletForeignAssetsAssetIds, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: PalletForeignAssetsAssetIds, metadata: PalletForeignAssetsModuleAssetMetadata }>;
+      AssetUpdated: AugmentedEvent<ApiType, [assetId: PalletForeignAssetsAssetId, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: PalletForeignAssetsAssetId, metadata: PalletForeignAssetsModuleAssetMetadata }>;
       /**
        * The foreign asset registered.
        **/
-      ForeignAssetRegistered: AugmentedEvent<ApiType, [assetId: u32, assetAddress: XcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: u32, assetAddress: XcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata }>;
+      ForeignAssetRegistered: AugmentedEvent<ApiType, [assetId: u32, assetAddress: StagingXcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: u32, assetAddress: StagingXcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata }>;
       /**
        * The foreign asset updated.
        **/
-      ForeignAssetUpdated: AugmentedEvent<ApiType, [assetId: u32, assetAddress: XcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: u32, assetAddress: XcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata }>;
+      ForeignAssetUpdated: AugmentedEvent<ApiType, [assetId: u32, assetAddress: StagingXcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata], { assetId: u32, assetAddress: StagingXcmV3MultiLocation, metadata: PalletForeignAssetsModuleAssetMetadata }>;
       /**
        * Generic event
        **/
@@ -732,36 +732,26 @@
     polkadotXcm: {
       /**
        * Some assets have been claimed from an asset trap
-       * 
-       * \[ hash, origin, assets \]
        **/
-      AssetsClaimed: AugmentedEvent<ApiType, [H256, XcmV3MultiLocation, XcmVersionedMultiAssets]>;
+      AssetsClaimed: AugmentedEvent<ApiType, [hash_: H256, origin: StagingXcmV3MultiLocation, assets: StagingXcmVersionedMultiAssets], { hash_: H256, origin: StagingXcmV3MultiLocation, assets: StagingXcmVersionedMultiAssets }>;
       /**
        * Some assets have been placed in an asset trap.
-       * 
-       * \[ hash, origin, assets \]
        **/
-      AssetsTrapped: AugmentedEvent<ApiType, [H256, XcmV3MultiLocation, XcmVersionedMultiAssets]>;
+      AssetsTrapped: AugmentedEvent<ApiType, [hash_: H256, origin: StagingXcmV3MultiLocation, assets: StagingXcmVersionedMultiAssets], { hash_: H256, origin: StagingXcmV3MultiLocation, assets: StagingXcmVersionedMultiAssets }>;
       /**
        * Execution of an XCM message was attempted.
-       * 
-       * \[ outcome \]
        **/
-      Attempted: AugmentedEvent<ApiType, [XcmV3TraitsOutcome]>;
+      Attempted: AugmentedEvent<ApiType, [outcome: StagingXcmV3TraitsOutcome], { outcome: StagingXcmV3TraitsOutcome }>;
       /**
        * Fees were paid from a location for an operation (often for using `SendXcm`).
-       * 
-       * \[ paying location, fees \]
        **/
-      FeesPaid: AugmentedEvent<ApiType, [XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+      FeesPaid: AugmentedEvent<ApiType, [paying: StagingXcmV3MultiLocation, fees: StagingXcmV3MultiassetMultiAssets], { paying: StagingXcmV3MultiLocation, fees: StagingXcmV3MultiassetMultiAssets }>;
       /**
        * Expected query response has been received but the querier location of the response does
        * not match the expected. The query remains registered for a later, valid, response to
        * be received and acted upon.
-       * 
-       * \[ origin location, id, expected querier, maybe actual querier \]
        **/
-      InvalidQuerier: AugmentedEvent<ApiType, [XcmV3MultiLocation, u64, XcmV3MultiLocation, Option<XcmV3MultiLocation>]>;
+      InvalidQuerier: AugmentedEvent<ApiType, [origin: StagingXcmV3MultiLocation, queryId: u64, expectedQuerier: StagingXcmV3MultiLocation, maybeActualQuerier: Option<StagingXcmV3MultiLocation>], { origin: StagingXcmV3MultiLocation, queryId: u64, expectedQuerier: StagingXcmV3MultiLocation, maybeActualQuerier: Option<StagingXcmV3MultiLocation> }>;
       /**
        * Expected query response has been received but the expected querier location placed in
        * storage by this runtime previously cannot be decoded. The query remains registered.
@@ -770,18 +760,14 @@
        * runtime should be readable prior to query timeout) and dangerous since the possibly
        * valid response will be dropped. Manual governance intervention is probably going to be
        * needed.
-       * 
-       * \[ origin location, id \]
        **/
-      InvalidQuerierVersion: AugmentedEvent<ApiType, [XcmV3MultiLocation, u64]>;
+      InvalidQuerierVersion: AugmentedEvent<ApiType, [origin: StagingXcmV3MultiLocation, queryId: u64], { origin: StagingXcmV3MultiLocation, queryId: u64 }>;
       /**
        * Expected query response has been received but the origin location of the response does
        * not match that expected. The query remains registered for a later, valid, response to
        * be received and acted upon.
-       * 
-       * \[ origin location, id, expected location \]
        **/
-      InvalidResponder: AugmentedEvent<ApiType, [XcmV3MultiLocation, u64, Option<XcmV3MultiLocation>]>;
+      InvalidResponder: AugmentedEvent<ApiType, [origin: StagingXcmV3MultiLocation, queryId: u64, expectedLocation: Option<StagingXcmV3MultiLocation>], { origin: StagingXcmV3MultiLocation, queryId: u64, expectedLocation: Option<StagingXcmV3MultiLocation> }>;
       /**
        * Expected query response has been received but the expected origin location placed in
        * storage by this runtime previously cannot be decoded. The query remains registered.
@@ -790,115 +776,84 @@
        * runtime should be readable prior to query timeout) and dangerous since the possibly
        * valid response will be dropped. Manual governance intervention is probably going to be
        * needed.
-       * 
-       * \[ origin location, id \]
        **/
-      InvalidResponderVersion: AugmentedEvent<ApiType, [XcmV3MultiLocation, u64]>;
+      InvalidResponderVersion: AugmentedEvent<ApiType, [origin: StagingXcmV3MultiLocation, queryId: u64], { origin: StagingXcmV3MultiLocation, queryId: u64 }>;
       /**
        * Query response has been received and query is removed. The registered notification has
        * been dispatched and executed successfully.
-       * 
-       * \[ id, pallet index, call index \]
        **/
-      Notified: AugmentedEvent<ApiType, [u64, u8, u8]>;
+      Notified: AugmentedEvent<ApiType, [queryId: u64, palletIndex: u8, callIndex: u8], { queryId: u64, palletIndex: u8, callIndex: u8 }>;
       /**
        * Query response has been received and query is removed. The dispatch was unable to be
        * decoded into a `Call`; this might be due to dispatch function having a signature which
        * is not `(origin, QueryId, Response)`.
-       * 
-       * \[ id, pallet index, call index \]
        **/
-      NotifyDecodeFailed: AugmentedEvent<ApiType, [u64, u8, u8]>;
+      NotifyDecodeFailed: AugmentedEvent<ApiType, [queryId: u64, palletIndex: u8, callIndex: u8], { queryId: u64, palletIndex: u8, callIndex: u8 }>;
       /**
        * Query response has been received and query is removed. There was a general error with
        * dispatching the notification call.
-       * 
-       * \[ id, pallet index, call index \]
        **/
-      NotifyDispatchError: AugmentedEvent<ApiType, [u64, u8, u8]>;
+      NotifyDispatchError: AugmentedEvent<ApiType, [queryId: u64, palletIndex: u8, callIndex: u8], { queryId: u64, palletIndex: u8, callIndex: u8 }>;
       /**
-       * Query response has been received and query is removed. The registered notification could
-       * not be dispatched because the dispatch weight is greater than the maximum weight
+       * Query response has been received and query is removed. The registered notification
+       * could not be dispatched because the dispatch weight is greater than the maximum weight
        * originally budgeted by this runtime for the query result.
-       * 
-       * \[ id, pallet index, call index, actual weight, max budgeted weight \]
        **/
-      NotifyOverweight: AugmentedEvent<ApiType, [u64, u8, u8, SpWeightsWeightV2Weight, SpWeightsWeightV2Weight]>;
+      NotifyOverweight: AugmentedEvent<ApiType, [queryId: u64, palletIndex: u8, callIndex: u8, actualWeight: SpWeightsWeightV2Weight, maxBudgetedWeight: SpWeightsWeightV2Weight], { queryId: u64, palletIndex: u8, callIndex: u8, actualWeight: SpWeightsWeightV2Weight, maxBudgetedWeight: SpWeightsWeightV2Weight }>;
       /**
        * A given location which had a version change subscription was dropped owing to an error
        * migrating the location to our new XCM format.
-       * 
-       * \[ location, query ID \]
        **/
-      NotifyTargetMigrationFail: AugmentedEvent<ApiType, [XcmVersionedMultiLocation, u64]>;
+      NotifyTargetMigrationFail: AugmentedEvent<ApiType, [location: StagingXcmVersionedMultiLocation, queryId: u64], { location: StagingXcmVersionedMultiLocation, queryId: u64 }>;
       /**
        * A given location which had a version change subscription was dropped owing to an error
        * sending the notification to it.
-       * 
-       * \[ location, query ID, error \]
        **/
-      NotifyTargetSendFail: AugmentedEvent<ApiType, [XcmV3MultiLocation, u64, XcmV3TraitsError]>;
+      NotifyTargetSendFail: AugmentedEvent<ApiType, [location: StagingXcmV3MultiLocation, queryId: u64, error: StagingXcmV3TraitsError], { location: StagingXcmV3MultiLocation, queryId: u64, error: StagingXcmV3TraitsError }>;
       /**
        * Query response has been received and is ready for taking with `take_response`. There is
        * no registered notification call.
-       * 
-       * \[ id, response \]
        **/
-      ResponseReady: AugmentedEvent<ApiType, [u64, XcmV3Response]>;
+      ResponseReady: AugmentedEvent<ApiType, [queryId: u64, response: StagingXcmV3Response], { queryId: u64, response: StagingXcmV3Response }>;
       /**
        * Received query response has been read and removed.
-       * 
-       * \[ id \]
        **/
-      ResponseTaken: AugmentedEvent<ApiType, [u64]>;
+      ResponseTaken: AugmentedEvent<ApiType, [queryId: u64], { queryId: u64 }>;
       /**
        * A XCM message was sent.
-       * 
-       * \[ origin, destination, message \]
        **/
-      Sent: AugmentedEvent<ApiType, [XcmV3MultiLocation, XcmV3MultiLocation, XcmV3Xcm]>;
+      Sent: AugmentedEvent<ApiType, [origin: StagingXcmV3MultiLocation, destination: StagingXcmV3MultiLocation, message: StagingXcmV3Xcm, messageId: U8aFixed], { origin: StagingXcmV3MultiLocation, destination: StagingXcmV3MultiLocation, message: StagingXcmV3Xcm, messageId: U8aFixed }>;
       /**
        * The supported version of a location has been changed. This might be through an
        * automatic notification or a manual intervention.
-       * 
-       * \[ location, XCM version \]
        **/
-      SupportedVersionChanged: AugmentedEvent<ApiType, [XcmV3MultiLocation, u32]>;
+      SupportedVersionChanged: AugmentedEvent<ApiType, [location: StagingXcmV3MultiLocation, version: u32], { location: StagingXcmV3MultiLocation, version: u32 }>;
       /**
        * Query response received which does not match a registered query. This may be because a
        * matching query was never registered, it may be because it is a duplicate response, or
        * because the query timed out.
-       * 
-       * \[ origin location, id \]
        **/
-      UnexpectedResponse: AugmentedEvent<ApiType, [XcmV3MultiLocation, u64]>;
+      UnexpectedResponse: AugmentedEvent<ApiType, [origin: StagingXcmV3MultiLocation, queryId: u64], { origin: StagingXcmV3MultiLocation, queryId: u64 }>;
       /**
        * An XCM version change notification message has been attempted to be sent.
        * 
        * The cost of sending it (borne by the chain) is included.
-       * 
-       * \[ destination, result, cost \]
        **/
-      VersionChangeNotified: AugmentedEvent<ApiType, [XcmV3MultiLocation, u32, XcmV3MultiassetMultiAssets]>;
+      VersionChangeNotified: AugmentedEvent<ApiType, [destination: StagingXcmV3MultiLocation, result: u32, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed], { destination: StagingXcmV3MultiLocation, result: u32, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed }>;
       /**
-       * We have requested that a remote chain sends us XCM version change notifications.
-       * 
-       * \[ destination location, cost \]
+       * We have requested that a remote chain send us XCM version change notifications.
        **/
-      VersionNotifyRequested: AugmentedEvent<ApiType, [XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+      VersionNotifyRequested: AugmentedEvent<ApiType, [destination: StagingXcmV3MultiLocation, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed], { destination: StagingXcmV3MultiLocation, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed }>;
       /**
        * A remote has requested XCM version change notification from us and we have honored it.
        * A version information message is sent to them and its cost is included.
-       * 
-       * \[ destination location, cost \]
        **/
-      VersionNotifyStarted: AugmentedEvent<ApiType, [XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+      VersionNotifyStarted: AugmentedEvent<ApiType, [destination: StagingXcmV3MultiLocation, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed], { destination: StagingXcmV3MultiLocation, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed }>;
       /**
-       * We have requested that a remote chain stops sending us XCM version change notifications.
-       * 
-       * \[ destination location, cost \]
+       * We have requested that a remote chain stops sending us XCM version change
+       * notifications.
        **/
-      VersionNotifyUnrequested: AugmentedEvent<ApiType, [XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+      VersionNotifyUnrequested: AugmentedEvent<ApiType, [destination: StagingXcmV3MultiLocation, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed], { destination: StagingXcmV3MultiLocation, cost: StagingXcmV3MultiassetMultiAssets, messageId: U8aFixed }>;
       /**
        * Generic event
        **/
@@ -1123,65 +1078,67 @@
       /**
        * A balance was set by root.
        **/
-      BalanceSet: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, free: u128, reserved: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, free: u128, reserved: u128 }>;
+      BalanceSet: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, free: u128, reserved: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, free: u128, reserved: u128 }>;
       /**
        * Deposited some balance into an account
        **/
-      Deposited: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      Deposited: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
       /**
        * An account was removed whose balance was non-zero but below
        * ExistentialDeposit, resulting in an outright loss.
        **/
-      DustLost: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      DustLost: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
       /**
        * An account was created with some free balance.
        **/
-      Endowed: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      Endowed: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
+      Issued: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, amount: u128], { currencyId: PalletForeignAssetsAssetId, amount: u128 }>;
       /**
        * Some free balance was locked.
        **/
-      Locked: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      Locked: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
       /**
        * Some locked funds were unlocked
        **/
-      LockRemoved: AugmentedEvent<ApiType, [lockId: U8aFixed, currencyId: PalletForeignAssetsAssetIds, who: AccountId32], { lockId: U8aFixed, currencyId: PalletForeignAssetsAssetIds, who: AccountId32 }>;
+      LockRemoved: AugmentedEvent<ApiType, [lockId: U8aFixed, currencyId: PalletForeignAssetsAssetId, who: AccountId32], { lockId: U8aFixed, currencyId: PalletForeignAssetsAssetId, who: AccountId32 }>;
       /**
        * Some funds are locked
        **/
-      LockSet: AugmentedEvent<ApiType, [lockId: U8aFixed, currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { lockId: U8aFixed, currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      LockSet: AugmentedEvent<ApiType, [lockId: U8aFixed, currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { lockId: U8aFixed, currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
+      Rescinded: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, amount: u128], { currencyId: PalletForeignAssetsAssetId, amount: u128 }>;
       /**
        * Some balance was reserved (moved from free to reserved).
        **/
-      Reserved: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      Reserved: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
       /**
        * Some reserved balance was repatriated (moved from reserved to
        * another account).
        **/
-      ReserveRepatriated: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, from: AccountId32, to: AccountId32, amount: u128, status: FrameSupportTokensMiscBalanceStatus], { currencyId: PalletForeignAssetsAssetIds, from: AccountId32, to: AccountId32, amount: u128, status: FrameSupportTokensMiscBalanceStatus }>;
+      ReserveRepatriated: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, from: AccountId32, to: AccountId32, amount: u128, status: FrameSupportTokensMiscBalanceStatus], { currencyId: PalletForeignAssetsAssetId, from: AccountId32, to: AccountId32, amount: u128, status: FrameSupportTokensMiscBalanceStatus }>;
       /**
        * Some balances were slashed (e.g. due to mis-behavior)
        **/
-      Slashed: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, freeAmount: u128, reservedAmount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, freeAmount: u128, reservedAmount: u128 }>;
+      Slashed: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, freeAmount: u128, reservedAmount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, freeAmount: u128, reservedAmount: u128 }>;
       /**
        * The total issuance of an currency has been set
        **/
-      TotalIssuanceSet: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, amount: u128], { currencyId: PalletForeignAssetsAssetIds, amount: u128 }>;
+      TotalIssuanceSet: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, amount: u128], { currencyId: PalletForeignAssetsAssetId, amount: u128 }>;
       /**
        * Transfer succeeded.
        **/
-      Transfer: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, from: AccountId32, to: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, from: AccountId32, to: AccountId32, amount: u128 }>;
+      Transfer: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, from: AccountId32, to: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, from: AccountId32, to: AccountId32, amount: u128 }>;
       /**
        * Some locked balance was freed.
        **/
-      Unlocked: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      Unlocked: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
       /**
        * Some balance was unreserved (moved from reserved to free).
        **/
-      Unreserved: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      Unreserved: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
       /**
        * Some balances were withdrawn (e.g. pay for transaction fee)
        **/
-      Withdrawn: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetIds, who: AccountId32, amount: u128 }>;
+      Withdrawn: AugmentedEvent<ApiType, [currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128], { currencyId: PalletForeignAssetsAssetId, who: AccountId32, amount: u128 }>;
       /**
        * Generic event
        **/
@@ -1240,6 +1197,37 @@
        **/
       [key: string]: AugmentedEvent<ApiType>;
     };
+    utility: {
+      /**
+       * Batch of dispatches completed fully with no error.
+       **/
+      BatchCompleted: AugmentedEvent<ApiType, []>;
+      /**
+       * Batch of dispatches completed but has errors.
+       **/
+      BatchCompletedWithErrors: AugmentedEvent<ApiType, []>;
+      /**
+       * Batch of dispatches did not complete fully. Index of first failing dispatch given, as
+       * well as the error.
+       **/
+      BatchInterrupted: AugmentedEvent<ApiType, [index: u32, error: SpRuntimeDispatchError], { index: u32, error: SpRuntimeDispatchError }>;
+      /**
+       * A call was dispatched.
+       **/
+      DispatchedAs: AugmentedEvent<ApiType, [result: Result<Null, SpRuntimeDispatchError>], { result: Result<Null, SpRuntimeDispatchError> }>;
+      /**
+       * A single item within a Batch of dispatches has completed with no error.
+       **/
+      ItemCompleted: AugmentedEvent<ApiType, []>;
+      /**
+       * A single item within a Batch of dispatches has completed with error.
+       **/
+      ItemFailed: AugmentedEvent<ApiType, [error: SpRuntimeDispatchError], { error: SpRuntimeDispatchError }>;
+      /**
+       * Generic event
+       **/
+      [key: string]: AugmentedEvent<ApiType>;
+    };
     vesting: {
       /**
        * Claimed vesting.
@@ -1262,15 +1250,15 @@
       /**
        * Bad XCM format used.
        **/
-      BadFormat: AugmentedEvent<ApiType, [messageHash: Option<U8aFixed>], { messageHash: Option<U8aFixed> }>;
+      BadFormat: AugmentedEvent<ApiType, [messageHash: U8aFixed], { messageHash: U8aFixed }>;
       /**
        * Bad XCM version used.
        **/
-      BadVersion: AugmentedEvent<ApiType, [messageHash: Option<U8aFixed>], { messageHash: Option<U8aFixed> }>;
+      BadVersion: AugmentedEvent<ApiType, [messageHash: U8aFixed], { messageHash: U8aFixed }>;
       /**
        * Some XCM failed.
        **/
-      Fail: AugmentedEvent<ApiType, [messageHash: Option<U8aFixed>, error: XcmV3TraitsError, weight: SpWeightsWeightV2Weight], { messageHash: Option<U8aFixed>, error: XcmV3TraitsError, weight: SpWeightsWeightV2Weight }>;
+      Fail: AugmentedEvent<ApiType, [messageHash: U8aFixed, messageId: U8aFixed, error: StagingXcmV3TraitsError, weight: SpWeightsWeightV2Weight], { messageHash: U8aFixed, messageId: U8aFixed, error: StagingXcmV3TraitsError, weight: SpWeightsWeightV2Weight }>;
       /**
        * An XCM exceeded the individual message weight budget.
        **/
@@ -1282,11 +1270,11 @@
       /**
        * Some XCM was executed ok.
        **/
-      Success: AugmentedEvent<ApiType, [messageHash: Option<U8aFixed>, weight: SpWeightsWeightV2Weight], { messageHash: Option<U8aFixed>, weight: SpWeightsWeightV2Weight }>;
+      Success: AugmentedEvent<ApiType, [messageHash: U8aFixed, messageId: U8aFixed, weight: SpWeightsWeightV2Weight], { messageHash: U8aFixed, messageId: U8aFixed, weight: SpWeightsWeightV2Weight }>;
       /**
        * An HRMP message was sent to a sibling parachain.
        **/
-      XcmpMessageSent: AugmentedEvent<ApiType, [messageHash: Option<U8aFixed>], { messageHash: Option<U8aFixed> }>;
+      XcmpMessageSent: AugmentedEvent<ApiType, [messageHash: U8aFixed], { messageHash: U8aFixed }>;
       /**
        * Generic event
        **/
@@ -1296,7 +1284,7 @@
       /**
        * Transferred `MultiAsset` with fee.
        **/
-      TransferredMultiAssets: AugmentedEvent<ApiType, [sender: AccountId32, assets: XcmV3MultiassetMultiAssets, fee: XcmV3MultiAsset, dest: XcmV3MultiLocation], { sender: AccountId32, assets: XcmV3MultiassetMultiAssets, fee: XcmV3MultiAsset, dest: XcmV3MultiLocation }>;
+      TransferredMultiAssets: AugmentedEvent<ApiType, [sender: AccountId32, assets: StagingXcmV3MultiassetMultiAssets, fee: StagingXcmV3MultiAsset, dest: StagingXcmV3MultiLocation], { sender: AccountId32, assets: StagingXcmV3MultiassetMultiAssets, fee: StagingXcmV3MultiAsset, dest: StagingXcmV3MultiLocation }>;
       /**
        * Generic event
        **/
modifiedtests/src/interfaces/augment-api-query.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-query.ts
+++ b/tests/src/interfaces/augment-api-query.ts
@@ -7,10 +7,10 @@
 
 import type { ApiTypes, AugmentedQuery, QueryableStorageEntry } from '@polkadot/api-base/types';
 import type { Data } from '@polkadot/types';
-import type { BTreeMap, Bytes, Option, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
+import type { BTreeMap, Bytes, Option, Struct, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
 import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, Call, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportDispatchPerDispatchClassWeight, FrameSupportPreimagesBounded, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OpalRuntimeRuntimeCommonSessionKeys, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensReserveData, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesIdAmount, PalletBalancesReserveData, PalletCollectiveVotes, PalletConfigurationAppPromotionConfiguration, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCodeMetadata, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletNonfungibleItemData, PalletPreimageRequestStatus, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveVoteRecord, PalletReferendaReferendumInfo, PalletSchedulerScheduled, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletXcmQueryStatus, PalletXcmRemoteLockedFungibleRecord, PalletXcmVersionMigrationStage, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV4AbridgedHostConfiguration, PolkadotPrimitivesV4PersistedValidationData, PolkadotPrimitivesV4UpgradeRestriction, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, XcmV3MultiLocation, XcmVersionedAssetId, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletParachainSystemUnincludedSegmentAncestor, CumulusPalletParachainSystemUnincludedSegmentSegmentTracker, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportDispatchPerDispatchClassWeight, FrameSupportPreimagesBounded, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OpalRuntimeRuntimeCommonSessionKeys, OpalRuntimeRuntimeHoldReason, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensReserveData, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesIdAmount, PalletBalancesReserveData, PalletCollectiveVotes, PalletConfigurationAppPromotionConfiguration, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCodeMetadata, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetId, PalletForeignAssetsModuleAssetMetadata, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletNonfungibleItemData, PalletPreimageRequestStatus, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveVoteRecord, PalletReferendaReferendumInfo, PalletSchedulerScheduled, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletXcmQueryStatus, PalletXcmRemoteLockedFungibleRecord, PalletXcmVersionMigrationStage, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV5AbridgedHostConfiguration, PolkadotPrimitivesV5PersistedValidationData, PolkadotPrimitivesV5UpgradeGoAhead, PolkadotPrimitivesV5UpgradeRestriction, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, StagingXcmV3MultiLocation, StagingXcmVersionedAssetId, StagingXcmVersionedMultiLocation, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild } from '@polkadot/types/lookup';
 import type { Observable } from '@polkadot/types/types';
 
 export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;
@@ -81,11 +81,17 @@
        * Serves as cache for the authorities.
        * 
        * The authorities in AuRa are overwritten in `on_initialize` when we switch to a new session,
-       * but we require the old authorities to verify the seal when validating a PoV. This will always
-       * be updated to the latest AuRa authorities in `on_finalize`.
+       * but we require the old authorities to verify the seal when validating a PoV. This will
+       * always be updated to the latest AuRa authorities in `on_finalize`.
        **/
       authorities: AugmentedQuery<ApiType, () => Observable<Vec<SpConsensusAuraSr25519AppSr25519Public>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
+       * Current slot paired with a number of authored blocks.
+       * 
+       * Updated on each block initialization.
+       **/
+      slotInfo: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[u64, u32]>>>, []> & QueryableStorageEntry<ApiType, []>;
+      /**
        * Generic query
        **/
       [key: string]: QueryableStorageEntry<ApiType>;
@@ -135,7 +141,10 @@
       /**
        * Holds on account balances.
        **/
-      holds: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesIdAmount>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
+      holds: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<{
+    readonly id: OpalRuntimeRuntimeHoldReason;
+    readonly amount: u128;
+  } & Struct>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
       /**
        * The total units of outstanding deactivated balance in the system.
        **/
@@ -569,19 +578,19 @@
        * 
        * AssetMetadatas: map AssetIds => Option<AssetMetadata>
        **/
-      assetMetadatas: AugmentedQuery<ApiType, (arg: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<Option<PalletForeignAssetsModuleAssetMetadata>>, [PalletForeignAssetsAssetIds]> & QueryableStorageEntry<ApiType, [PalletForeignAssetsAssetIds]>;
+      assetMetadatas: AugmentedQuery<ApiType, (arg: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<Option<PalletForeignAssetsModuleAssetMetadata>>, [PalletForeignAssetsAssetId]> & QueryableStorageEntry<ApiType, [PalletForeignAssetsAssetId]>;
       /**
        * The storages for MultiLocations.
        * 
        * ForeignAssetLocations: map ForeignAssetId => Option<MultiLocation>
        **/
-      foreignAssetLocations: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<XcmV3MultiLocation>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
+      foreignAssetLocations: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<StagingXcmV3MultiLocation>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
       /**
        * The storages for CurrencyIds.
        * 
        * LocationToCurrencyIds: map MultiLocation => Option<ForeignAssetId>
        **/
-      locationToCurrencyIds: AugmentedQuery<ApiType, (arg: XcmV3MultiLocation | { parents?: any; interior?: any } | string | Uint8Array) => Observable<Option<u32>>, [XcmV3MultiLocation]> & QueryableStorageEntry<ApiType, [XcmV3MultiLocation]>;
+      locationToCurrencyIds: AugmentedQuery<ApiType, (arg: StagingXcmV3MultiLocation | { parents?: any; interior?: any } | string | Uint8Array) => Observable<Option<u32>>, [StagingXcmV3MultiLocation]> & QueryableStorageEntry<ApiType, [StagingXcmV3MultiLocation]>;
       /**
        * Next available Foreign AssetId ID.
        * 
@@ -716,7 +725,7 @@
       /**
        * Map of key-value pairs, describing the metadata of a token.
        **/
-      tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
+      tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<UpDataStructsProperties>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       /**
        * Amount of burnt tokens in a collection.
        **/
@@ -739,6 +748,12 @@
     };
     parachainSystem: {
       /**
+       * Storage field that keeps track of bandwidth used by the unincluded segment along with the
+       * latest the latest HRMP watermark. Used for limiting the acceptance of new blocks with
+       * respect to relay chain constraints.
+       **/
+      aggregatedUnincludedSegment: AugmentedQuery<ApiType, () => Observable<Option<CumulusPalletParachainSystemUnincludedSegmentSegmentTracker>>, []> & QueryableStorageEntry<ApiType, []>;
+      /**
        * The number of HRMP messages we observed in `on_initialize` and thus used that number for
        * announcing the weight of `on_initialize` and `on_finalize`.
        **/
@@ -750,7 +765,7 @@
       /**
        * A custom head data that should be returned as result of `validate_block`.
        * 
-       * See [`Pallet::set_custom_validation_head_data`] for more information.
+       * See `Pallet::set_custom_validation_head_data` for more information.
        **/
       customValidationHeadData: AugmentedQuery<ApiType, () => Observable<Option<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
@@ -765,7 +780,7 @@
        * 
        * This data is also absent from the genesis.
        **/
-      hostConfiguration: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV4AbridgedHostConfiguration>>, []> & QueryableStorageEntry<ApiType, []>;
+      hostConfiguration: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV5AbridgedHostConfiguration>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
        * HRMP messages that were sent in a block.
        * 
@@ -809,12 +824,12 @@
        **/
       pendingUpwardMessages: AugmentedQuery<ApiType, () => Observable<Vec<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
-       * In case of a scheduled upgrade, this storage field contains the validation code to be applied.
-       * 
-       * As soon as the relay chain gives us the go-ahead signal, we will overwrite the [`:code`][well_known_keys::CODE]
-       * which will result the next block process with the new validation code. This concludes the upgrade process.
+       * In case of a scheduled upgrade, this storage field contains the validation code to be
+       * applied.
        * 
-       * [well_known_keys::CODE]: sp_core::storage::well_known_keys::CODE
+       * As soon as the relay chain gives us the go-ahead signal, we will overwrite the
+       * [`:code`][sp_core::storage::well_known_keys::CODE] which will result the next block process
+       * with the new validation code. This concludes the upgrade process.
        **/
       pendingValidationCode: AugmentedQuery<ApiType, () => Observable<Bytes>, []> & QueryableStorageEntry<ApiType, []>;
       /**
@@ -853,6 +868,23 @@
        **/
       reservedXcmpWeightOverride: AugmentedQuery<ApiType, () => Observable<Option<SpWeightsWeightV2Weight>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
+       * Latest included block descendants the runtime accepted. In other words, these are
+       * ancestors of the currently executing block which have not been included in the observed
+       * relay-chain state.
+       * 
+       * The segment length is limited by the capacity returned from the [`ConsensusHook`] configured
+       * in the pallet.
+       **/
+      unincludedSegment: AugmentedQuery<ApiType, () => Observable<Vec<CumulusPalletParachainSystemUnincludedSegmentAncestor>>, []> & QueryableStorageEntry<ApiType, []>;
+      /**
+       * Optional upgrade go-ahead signal from the relay-chain.
+       * 
+       * This storage item is a mirror of the corresponding value for the current parachain from the
+       * relay-chain. This value is ephemeral which means it doesn't hit the storage. This value is
+       * set after the inherent.
+       **/
+      upgradeGoAhead: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV5UpgradeGoAhead>>, []> & QueryableStorageEntry<ApiType, []>;
+      /**
        * An option which indicates if the relay-chain restricts signalling a validation code upgrade.
        * In other words, if this is `Some` and [`NewValidationCode`] is `Some` then the produced
        * candidate will be invalid.
@@ -861,7 +893,7 @@
        * relay-chain. This value is ephemeral which means it doesn't hit the storage. This value is
        * set after the inherent.
        **/
-      upgradeRestrictionSignal: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV4UpgradeRestriction>>, []> & QueryableStorageEntry<ApiType, []>;
+      upgradeRestrictionSignal: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV5UpgradeRestriction>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
        * Upward messages that were sent in a block.
        * 
@@ -873,7 +905,7 @@
        * This value is expected to be set only once per block and it's never stored
        * in the trie.
        **/
-      validationData: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV4PersistedValidationData>>, []> & QueryableStorageEntry<ApiType, []>;
+      validationData: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV5PersistedValidationData>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
        * Generic query
        **/
@@ -894,7 +926,7 @@
       /**
        * Fungible assets which we know are locked on this chain.
        **/
-      lockedFungibles: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Option<Vec<ITuple<[u128, XcmVersionedMultiLocation]>>>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
+      lockedFungibles: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Option<Vec<ITuple<[u128, StagingXcmVersionedMultiLocation]>>>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
       /**
        * The ongoing queries.
        **/
@@ -906,7 +938,7 @@
       /**
        * Fungible assets which we know are locked on a remote chain.
        **/
-      remoteLockedFungibles: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array, arg3: XcmVersionedAssetId | { V3: any } | string | Uint8Array) => Observable<Option<PalletXcmRemoteLockedFungibleRecord>>, [u32, AccountId32, XcmVersionedAssetId]> & QueryableStorageEntry<ApiType, [u32, AccountId32, XcmVersionedAssetId]>;
+      remoteLockedFungibles: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array, arg3: StagingXcmVersionedAssetId | { V3: any } | string | Uint8Array) => Observable<Option<PalletXcmRemoteLockedFungibleRecord>>, [u32, AccountId32, StagingXcmVersionedAssetId]> & QueryableStorageEntry<ApiType, [u32, AccountId32, StagingXcmVersionedAssetId]>;
       /**
        * Default version to encode XCM when latest version of destination is unknown. If `None`,
        * then the destinations whose XCM version is unknown are considered unreachable.
@@ -915,22 +947,22 @@
       /**
        * The Latest versions that we know various locations support.
        **/
-      supportedVersion: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => Observable<Option<u32>>, [u32, XcmVersionedMultiLocation]> & QueryableStorageEntry<ApiType, [u32, XcmVersionedMultiLocation]>;
+      supportedVersion: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => Observable<Option<u32>>, [u32, StagingXcmVersionedMultiLocation]> & QueryableStorageEntry<ApiType, [u32, StagingXcmVersionedMultiLocation]>;
       /**
        * Destinations whose latest XCM version we would like to know. Duplicates not allowed, and
        * the `u32` counter is the number of times that a send to the destination has been attempted,
        * which is used as a prioritization.
        **/
-      versionDiscoveryQueue: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[XcmVersionedMultiLocation, u32]>>>, []> & QueryableStorageEntry<ApiType, []>;
+      versionDiscoveryQueue: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[StagingXcmVersionedMultiLocation, u32]>>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
        * All locations that we have requested version notifications from.
        **/
-      versionNotifiers: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => Observable<Option<u64>>, [u32, XcmVersionedMultiLocation]> & QueryableStorageEntry<ApiType, [u32, XcmVersionedMultiLocation]>;
+      versionNotifiers: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => Observable<Option<u64>>, [u32, StagingXcmVersionedMultiLocation]> & QueryableStorageEntry<ApiType, [u32, StagingXcmVersionedMultiLocation]>;
       /**
        * The target locations that are subscribed to our version changes, as well as the most recent
        * of our versions we informed them of.
        **/
-      versionNotifyTargets: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => Observable<Option<ITuple<[u64, SpWeightsWeightV2Weight, u32]>>>, [u32, XcmVersionedMultiLocation]> & QueryableStorageEntry<ApiType, [u32, XcmVersionedMultiLocation]>;
+      versionNotifyTargets: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => Observable<Option<ITuple<[u64, SpWeightsWeightV2Weight, u32]>>>, [u32, StagingXcmVersionedMultiLocation]> & QueryableStorageEntry<ApiType, [u32, StagingXcmVersionedMultiLocation]>;
       /**
        * Global suspension state of the XCM executor.
        **/
@@ -975,7 +1007,7 @@
       /**
        * Amount of pieces a refungible token is split into.
        **/
-      tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
+      tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<UpDataStructsProperties>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       /**
        * Amount of tokens burnt in a collection.
        **/
@@ -1129,7 +1161,7 @@
        * allows light-clients to leverage the changes trie storage tracking mechanism and
        * in case of changes fetch the list of events of interest.
        * 
-       * The value has the type `(T::BlockNumber, EventIndex)` because if we used only just
+       * The value has the type `(BlockNumberFor<T>, EventIndex)` because if we used only just
        * the `EventIndex` then in case if the topic has the same contents on the next block
        * no notification will be triggered thus the event might be lost.
        **/
@@ -1247,20 +1279,20 @@
        * NOTE: This is only used in the case that this module is used to store
        * balances.
        **/
-      accounts: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<OrmlTokensAccountData>, [AccountId32, PalletForeignAssetsAssetIds]> & QueryableStorageEntry<ApiType, [AccountId32, PalletForeignAssetsAssetIds]>;
+      accounts: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<OrmlTokensAccountData>, [AccountId32, PalletForeignAssetsAssetId]> & QueryableStorageEntry<ApiType, [AccountId32, PalletForeignAssetsAssetId]>;
       /**
        * Any liquidity locks of a token type under an account.
        * NOTE: Should only be accessed when setting, changing and freeing a lock.
        **/
-      locks: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<Vec<OrmlTokensBalanceLock>>, [AccountId32, PalletForeignAssetsAssetIds]> & QueryableStorageEntry<ApiType, [AccountId32, PalletForeignAssetsAssetIds]>;
+      locks: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<Vec<OrmlTokensBalanceLock>>, [AccountId32, PalletForeignAssetsAssetId]> & QueryableStorageEntry<ApiType, [AccountId32, PalletForeignAssetsAssetId]>;
       /**
        * Named reserves on some account balances.
        **/
-      reserves: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<Vec<OrmlTokensReserveData>>, [AccountId32, PalletForeignAssetsAssetIds]> & QueryableStorageEntry<ApiType, [AccountId32, PalletForeignAssetsAssetIds]>;
+      reserves: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<Vec<OrmlTokensReserveData>>, [AccountId32, PalletForeignAssetsAssetId]> & QueryableStorageEntry<ApiType, [AccountId32, PalletForeignAssetsAssetId]>;
       /**
        * The total issuance of a token type.
        **/
-      totalIssuance: AugmentedQuery<ApiType, (arg: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<u128>, [PalletForeignAssetsAssetIds]> & QueryableStorageEntry<ApiType, [PalletForeignAssetsAssetIds]>;
+      totalIssuance: AugmentedQuery<ApiType, (arg: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array) => Observable<u128>, [PalletForeignAssetsAssetId]> & QueryableStorageEntry<ApiType, [PalletForeignAssetsAssetId]>;
       /**
        * Generic query
        **/
modifiedtests/src/interfaces/augment-api-runtime.tsdiffbeforeafterboth
6import '@polkadot/api-base/types/calls';6import '@polkadot/api-base/types/calls';
77
8import type { ApiTypes, AugmentedCall, DecoratedCallBase } from '@polkadot/api-base/types';8import type { ApiTypes, AugmentedCall, DecoratedCallBase } from '@polkadot/api-base/types';
9import type { Bytes, Null, Option, Vec, u32 } from '@polkadot/types-codec';9import type { Bytes, Null, Option, Result, U256, Vec, bool, u256, u32, u64 } from '@polkadot/types-codec';
10import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';10import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
11import type { CheckInherentsResult, InherentData } from '@polkadot/types/interfaces/blockbuilder';11import type { CheckInherentsResult, InherentData } from '@polkadot/types/interfaces/blockbuilder';
12import type { BlockHash } from '@polkadot/types/interfaces/chain';12import type { BlockHash } from '@polkadot/types/interfaces/chain';
13import type { AuthorityId } from '@polkadot/types/interfaces/consensus';13import type { AuthorityId } from '@polkadot/types/interfaces/consensus';
14import type { CollationInfo } from '@polkadot/types/interfaces/cumulus';14import type { CollationInfo } from '@polkadot/types/interfaces/cumulus';
15import type { TransactionV2 } from '@polkadot/types/interfaces/eth';15import type { BlockV2, EthReceiptV3, EthTransactionStatus, TransactionV2 } from '@polkadot/types/interfaces/eth';
16import type { EvmAccount, EvmCallInfoV2, EvmCreateInfoV2 } from '@polkadot/types/interfaces/evm';
16import type { Extrinsic } from '@polkadot/types/interfaces/extrinsics';17import type { Extrinsic } from '@polkadot/types/interfaces/extrinsics';
17import type { OpaqueMetadata } from '@polkadot/types/interfaces/metadata';18import type { OpaqueMetadata } from '@polkadot/types/interfaces/metadata';
18import type { FeeDetails, RuntimeDispatchInfo } from '@polkadot/types/interfaces/payment';19import type { FeeDetails, RuntimeDispatchInfo } from '@polkadot/types/interfaces/payment';
19import type { AccountId, Balance, Block, Header, Index, KeyTypeId, SlotDuration, Weight } from '@polkadot/types/interfaces/runtime';20import type { AccountId, Balance, Block, H160, H256, Header, Index, KeyTypeId, Permill, SlotDuration, Weight } from '@polkadot/types/interfaces/runtime';
20import type { RuntimeVersion } from '@polkadot/types/interfaces/state';21import type { RuntimeVersion } from '@polkadot/types/interfaces/state';
21import type { ApplyExtrinsicResult } from '@polkadot/types/interfaces/system';22import type { ApplyExtrinsicResult, DispatchError } from '@polkadot/types/interfaces/system';
22import type { TransactionSource, TransactionValidity } from '@polkadot/types/interfaces/txqueue';23import type { TransactionSource, TransactionValidity } from '@polkadot/types/interfaces/txqueue';
23import type { IExtrinsic, Observable } from '@polkadot/types/types';24import type { IExtrinsic, Observable } from '@polkadot/types/types';
2425
117 **/118 **/
118 [key: string]: DecoratedCallBase<ApiType>;119 [key: string]: DecoratedCallBase<ApiType>;
119 };120 };
121 /** 0x582211f65bb14b89/5 */
122 ethereumRuntimeRPCApi: {
123 /**
124 * Returns pallet_evm::Accounts by address.
125 **/
126 accountBasic: AugmentedCall<ApiType, (address: H160 | string | Uint8Array) => Observable<EvmAccount>>;
127 /**
128 * For a given account address, returns pallet_evm::AccountCodes.
129 **/
130 accountCodeAt: AugmentedCall<ApiType, (address: H160 | string | Uint8Array) => Observable<Bytes>>;
131 /**
132 * Returns the converted FindAuthor::find_author authority id.
133 **/
134 author: AugmentedCall<ApiType, () => Observable<H160>>;
135 /**
136 * Returns a frame_ethereum::call response. If `estimate` is true,
137 **/
138 call: AugmentedCall<ApiType, (from: H160 | string | Uint8Array, to: H160 | string | Uint8Array, data: Bytes | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: U256 | AnyNumber | Uint8Array, maxFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, estimate: bool | boolean | Uint8Array, accessList: Option<Vec<ITuple<[H160, Vec<H256>]>>> | null | Uint8Array | Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => Observable<Result<EvmCallInfoV2, DispatchError>>>;
139 /**
140 * Returns runtime defined pallet_evm::ChainId.
141 **/
142 chainId: AugmentedCall<ApiType, () => Observable<u64>>;
143 /**
144 * Returns a frame_ethereum::call response. If `estimate` is true,
145 **/
146 create: AugmentedCall<ApiType, (from: H160 | string | Uint8Array, data: Bytes | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: U256 | AnyNumber | Uint8Array, maxFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, estimate: bool | boolean | Uint8Array, accessList: Option<Vec<ITuple<[H160, Vec<H256>]>>> | null | Uint8Array | Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => Observable<Result<EvmCreateInfoV2, DispatchError>>>;
147 /**
148 * Return all the current data for a block in a single runtime call.
149 **/
150 currentAll: AugmentedCall<ApiType, () => Observable<ITuple<[Option<BlockV2>, Option<Vec<EthReceiptV3>>, Option<Vec<EthTransactionStatus>>]>>>;
151 /**
152 * Return the current block.
153 **/
154 currentBlock: AugmentedCall<ApiType, () => Observable<BlockV2>>;
155 /**
156 * Return the current receipt.
157 **/
158 currentReceipts: AugmentedCall<ApiType, () => Observable<Option<Vec<EthReceiptV3>>>>;
159 /**
160 * Return the current transaction status.
161 **/
162 currentTransactionStatuses: AugmentedCall<ApiType, () => Observable<Option<Vec<EthTransactionStatus>>>>;
163 /**
164 * Return the elasticity multiplier.
165 **/
166 elasticity: AugmentedCall<ApiType, () => Observable<Option<Permill>>>;
167 /**
168 * Receives a `Vec<OpaqueExtrinsic>` and filters all the ethereum transactions.
169 **/
170 extrinsicFilter: AugmentedCall<ApiType, (xts: Vec<Extrinsic> | (Extrinsic | IExtrinsic | string | Uint8Array)[]) => Observable<Vec<TransactionV2>>>;
171 /**
172 * Returns FixedGasPrice::min_gas_price
173 **/
174 gasPrice: AugmentedCall<ApiType, () => Observable<u256>>;
175 /**
176 * For a given account address and index, returns pallet_evm::AccountStorages.
177 **/
178 storageAt: AugmentedCall<ApiType, (address: H160 | string | Uint8Array, index: u256 | AnyNumber | Uint8Array) => Observable<H256>>;
179 /**
180 * Generic call
181 **/
182 [key: string]: DecoratedCallBase<ApiType>;
183 };
120 /** 0x37e397fc7c91f5e4/2 */184 /** 0x37e397fc7c91f5e4/2 */
121 metadata: {185 metadata: {
122 /**186 /**
modifiedtests/src/interfaces/augment-api-tx.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-tx.ts
+++ b/tests/src/interfaces/augment-api-tx.ts
@@ -10,7 +10,7 @@
 import type { Bytes, Compact, Option, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
 import type { AnyNumber, IMethod, ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, Call, H160, H256, MultiAddress } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumLog, EthereumTransactionTransactionV2, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, OpalRuntimeOriginCaller, OpalRuntimeRuntimeCommonSessionKeys, OrmlVestingVestingSchedule, PalletConfigurationAppPromotionConfiguration, PalletDemocracyConviction, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletIdentityBitFlags, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistration, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, SpWeightsWeightV2Weight, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, XcmV3MultiLocation, XcmV3WeightLimit, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
+import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumLog, EthereumTransactionTransactionV2, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, OpalRuntimeOriginCaller, OpalRuntimeRuntimeCommonSessionKeys, OrmlVestingVestingSchedule, PalletConfigurationAppPromotionConfiguration, PalletDemocracyConviction, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetId, PalletForeignAssetsModuleAssetMetadata, PalletIdentityBitFlags, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistration, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, SpWeightsWeightV2Weight, StagingXcmV3MultiLocation, StagingXcmV3WeightLimit, StagingXcmVersionedMultiAsset, StagingXcmVersionedMultiAssets, StagingXcmVersionedMultiLocation, StagingXcmVersionedXcm, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsProperty, UpDataStructsPropertyKeyPermission } from '@polkadot/types/lookup';
 
 export type __AugmentedSubmittable = AugmentedSubmittable<() => unknown>;
 export type __SubmittableExtrinsic<ApiType extends ApiTypes> = SubmittableExtrinsic<ApiType>;
@@ -20,122 +20,43 @@
   interface AugmentedSubmittables<ApiType extends ApiTypes> {
     appPromotion: {
       /**
-       * Called for blocks that, for some reason, have not been unstacked
-       * 
-       * # Permissions
-       * 
-       * * Sudo
-       * 
-       * # Arguments
-       * 
-       * * `origin`: Must be `Root`.
-       * * `pending_blocks`: Block numbers that will be processed.
+       * See [`Pallet::force_unstake`].
        **/
       forceUnstake: AugmentedSubmittable<(pendingBlocks: Vec<u32> | (u32 | AnyNumber | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<u32>]>;
       /**
-       * Recalculates interest for the specified number of stakers.
-       * If all stakers are not recalculated, the next call of the extrinsic
-       * will continue the recalculation, from those stakers for whom this
-       * was not perform in last call.
-       * 
-       * # Permissions
-       * 
-       * * Pallet admin
-       * 
-       * # Arguments
-       * 
-       * * `stakers_number`: the number of stakers for which recalculation will be performed
+       * See [`Pallet::payout_stakers`].
        **/
       payoutStakers: AugmentedSubmittable<(stakersNumber: Option<u8> | null | Uint8Array | u8 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u8>]>;
       /**
-       * Sets an address as the the admin.
-       * 
-       * # Permissions
-       * 
-       * * Sudo
-       * 
-       * # Arguments
-       * 
-       * * `admin`: account of the new admin.
+       * See [`Pallet::set_admin_address`].
        **/
       setAdminAddress: AugmentedSubmittable<(admin: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
-       * Sets the pallet to be the sponsor for the collection.
-       * 
-       * # Permissions
-       * 
-       * * Pallet admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection that will be sponsored by `pallet_id`
+       * See [`Pallet::sponsor_collection`].
        **/
       sponsorCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Sets the pallet to be the sponsor for the contract.
-       * 
-       * # Permissions
-       * 
-       * * Pallet admin
-       * 
-       * # Arguments
-       * 
-       * * `contract_id`: the contract address that will be sponsored by `pallet_id`
+       * See [`Pallet::sponsor_contract`].
        **/
       sponsorContract: AugmentedSubmittable<(contractId: H160 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160]>;
       /**
-       * Stakes the amount of native tokens.
-       * Sets `amount` to the locked state.
-       * The maximum number of stakes for a staker is 10.
-       * 
-       * # Arguments
-       * 
-       * * `amount`: in native tokens.
+       * See [`Pallet::stake`].
        **/
       stake: AugmentedSubmittable<(amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128]>;
       /**
-       * Removes the pallet as the sponsor for the collection.
-       * Returns [`NoPermission`][`Error::NoPermission`]
-       * if the pallet wasn't the sponsor.
-       * 
-       * # Permissions
-       * 
-       * * Pallet admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection that is sponsored by `pallet_id`
+       * See [`Pallet::stop_sponsoring_collection`].
        **/
       stopSponsoringCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Removes the pallet as the sponsor for the contract.
-       * Returns [`NoPermission`][`Error::NoPermission`]
-       * if the pallet wasn't the sponsor.
-       * 
-       * # Permissions
-       * 
-       * * Pallet admin
-       * 
-       * # Arguments
-       * 
-       * * `contract_id`: the contract address that is sponsored by `pallet_id`
+       * See [`Pallet::stop_sponsoring_contract`].
        **/
       stopSponsoringContract: AugmentedSubmittable<(contractId: H160 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160]>;
       /**
-       * Unstakes all stakes.
-       * After the end of `PendingInterval` this sum becomes completely
-       * free for further use.
+       * See [`Pallet::unstake_all`].
        **/
       unstakeAll: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Unstakes the amount of balance for the staker.
-       * After the end of `PendingInterval` this sum becomes completely
-       * free for further use.
-       * 
-       * # Arguments
-       * 
-       * * `staker`: staker account.
-       * * `amount`: amount of unstaked funds.
+       * See [`Pallet::unstake_partial`].
        **/
       unstakePartial: AugmentedSubmittable<(amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128]>;
       /**
@@ -145,83 +66,39 @@
     };
     balances: {
       /**
-       * Set the regular balance of a given account.
-       * 
-       * The dispatch origin for this call is `root`.
+       * See [`Pallet::force_set_balance`].
        **/
       forceSetBalance: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, newFree: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>]>;
       /**
-       * Exactly as `transfer_allow_death`, except the origin must be root and the source account
-       * may be specified.
+       * See [`Pallet::force_transfer`].
        **/
       forceTransfer: AugmentedSubmittable<(source: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, MultiAddress, Compact<u128>]>;
       /**
-       * Unreserve some balance from a user by force.
-       * 
-       * Can only be called by ROOT.
+       * See [`Pallet::force_unreserve`].
        **/
       forceUnreserve: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u128]>;
       /**
-       * Set the regular balance of a given account; it also takes a reserved balance but this
-       * must be the same as the account's current reserved balance.
-       * 
-       * The dispatch origin for this call is `root`.
-       * 
-       * WARNING: This call is DEPRECATED! Use `force_set_balance` instead.
+       * See [`Pallet::set_balance_deprecated`].
        **/
       setBalanceDeprecated: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, newFree: Compact<u128> | AnyNumber | Uint8Array, oldReserved: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>, Compact<u128>]>;
       /**
-       * Alias for `transfer_allow_death`, provided only for name-wise compatibility.
-       * 
-       * WARNING: DEPRECATED! Will be released in approximately 3 months.
+       * See [`Pallet::transfer`].
        **/
       transfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>]>;
       /**
-       * Transfer the entire transferable balance from the caller account.
-       * 
-       * NOTE: This function only attempts to transfer _transferable_ balances. This means that
-       * any locked, reserved, or existential deposits (when `keep_alive` is `true`), will not be
-       * transferred by this function. To ensure that this function results in a killed account,
-       * you might need to prepare the account by removing any reference counters, storage
-       * deposits, etc...
-       * 
-       * The dispatch origin of this call must be Signed.
-       * 
-       * - `dest`: The recipient of the transfer.
-       * - `keep_alive`: A boolean to determine if the `transfer_all` operation should send all
-       * of the funds the account has, causing the sender account to be killed (false), or
-       * transfer everything except at least the existential deposit, which will guarantee to
-       * keep the sender account alive (true).
+       * See [`Pallet::transfer_all`].
        **/
       transferAll: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, keepAlive: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, bool]>;
       /**
-       * Transfer some liquid free balance to another account.
-       * 
-       * `transfer_allow_death` will set the `FreeBalance` of the sender and receiver.
-       * If the sender's account is below the existential deposit as a result
-       * of the transfer, the account will be reaped.
-       * 
-       * The dispatch origin for this call must be `Signed` by the transactor.
+       * See [`Pallet::transfer_allow_death`].
        **/
       transferAllowDeath: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>]>;
       /**
-       * Same as the [`transfer_allow_death`] call, but with a check that the transfer will not
-       * kill the origin account.
-       * 
-       * 99% of the time you want [`transfer_allow_death`] instead.
-       * 
-       * [`transfer_allow_death`]: struct.Pallet.html#method.transfer
+       * See [`Pallet::transfer_keep_alive`].
        **/
       transferKeepAlive: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>]>;
       /**
-       * Upgrade a specified account.
-       * 
-       * - `origin`: Must be `Signed`.
-       * - `who`: The account to be upgraded.
-       * 
-       * This will waive the transaction fee if at least all but 10% of the accounts needed to
-       * be upgraded. (We let some not have to be upgraded just in order to allow for the
-       * possibililty of churn).
+       * See [`Pallet::upgrade_accounts`].
        **/
       upgradeAccounts: AugmentedSubmittable<(who: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<AccountId32>]>;
       /**
@@ -231,45 +108,31 @@
     };
     collatorSelection: {
       /**
-       * Add a collator to the list of invulnerable (fixed) collators.
+       * See [`Pallet::add_invulnerable`].
        **/
       addInvulnerable: AugmentedSubmittable<(updated: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32]>;
       /**
-       * Force deregister `origin` as a collator candidate as a governing authority, and revoke its license.
-       * Note that the collator can only leave on session change.
-       * The `LicenseBond` will be unreserved and returned immediately.
-       * 
-       * This call is, of course, not applicable to `Invulnerable` collators.
+       * See [`Pallet::force_release_license`].
        **/
       forceReleaseLicense: AugmentedSubmittable<(who: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32]>;
       /**
-       * Purchase a license on block collation for this account.
-       * It does not make it a collator candidate, use `onboard` afterward. The account must
-       * (a) already have registered session keys and (b) be able to reserve the `LicenseBond`.
-       * 
-       * This call is not available to `Invulnerable` collators.
+       * See [`Pallet::get_license`].
        **/
       getLicense: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Deregister `origin` as a collator candidate. Note that the collator can only leave on
-       * session change. The license to `onboard` later at any other time will remain.
+       * See [`Pallet::offboard`].
        **/
       offboard: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Register this account as a candidate for collators for next sessions.
-       * The account must already hold a license, and cannot offboard immediately during a session.
-       * 
-       * This call is not available to `Invulnerable` collators.
+       * See [`Pallet::onboard`].
        **/
       onboard: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Forfeit `origin`'s own license. The `LicenseBond` will be unreserved immediately.
-       * 
-       * This call is not available to `Invulnerable` collators.
+       * See [`Pallet::release_license`].
        **/
       releaseLicense: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Remove a collator from the list of invulnerable (fixed) collators.
+       * See [`Pallet::remove_invulnerable`].
        **/
       removeInvulnerable: AugmentedSubmittable<(who: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32]>;
       /**
@@ -278,11 +141,29 @@
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
     configuration: {
+      /**
+       * See [`Pallet::set_app_promotion_configuration_override`].
+       **/
       setAppPromotionConfigurationOverride: AugmentedSubmittable<(configuration: PalletConfigurationAppPromotionConfiguration | { recalculationInterval?: any; pendingInterval?: any; intervalIncome?: any; maxStakersPerCalculation?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletConfigurationAppPromotionConfiguration]>;
+      /**
+       * See [`Pallet::set_collator_selection_desired_collators`].
+       **/
       setCollatorSelectionDesiredCollators: AugmentedSubmittable<(max: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u32>]>;
+      /**
+       * See [`Pallet::set_collator_selection_kick_threshold`].
+       **/
       setCollatorSelectionKickThreshold: AugmentedSubmittable<(threshold: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u32>]>;
+      /**
+       * See [`Pallet::set_collator_selection_license_bond`].
+       **/
       setCollatorSelectionLicenseBond: AugmentedSubmittable<(amount: Option<u128> | null | Uint8Array | u128 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u128>]>;
+      /**
+       * See [`Pallet::set_min_gas_price_override`].
+       **/
       setMinGasPriceOverride: AugmentedSubmittable<(coeff: Option<u64> | null | Uint8Array | u64 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u64>]>;
+      /**
+       * See [`Pallet::set_weight_to_fee_coefficient_override`].
+       **/
       setWeightToFeeCoefficientOverride: AugmentedSubmittable<(coeff: Option<u64> | null | Uint8Array | u64 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u64>]>;
       /**
        * Generic tx
@@ -291,111 +172,27 @@
     };
     council: {
       /**
-       * Close a vote that is either approved, disapproved or whose voting period has ended.
-       * 
-       * May be called by any signed account in order to finish voting and close the proposal.
-       * 
-       * If called before the end of the voting period it will only close the vote if it is
-       * has enough votes to be approved or disapproved.
-       * 
-       * If called after the end of the voting period abstentions are counted as rejections
-       * unless there is a prime member set and the prime member cast an approval.
-       * 
-       * If the close operation completes successfully with disapproval, the transaction fee will
-       * be waived. Otherwise execution of the approved operation will be charged to the caller.
-       * 
-       * + `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed
-       * proposal.
-       * + `length_bound`: The upper bound for the length of the proposal in storage. Checked via
-       * `storage::read` so it is `size_of::<u32>() == 4` larger than the pure length.
-       * 
-       * ## Complexity
-       * - `O(B + M + P1 + P2)` where:
-       * - `B` is `proposal` size in bytes (length-fee-bounded)
-       * - `M` is members-count (code- and governance-bounded)
-       * - `P1` is the complexity of `proposal` preimage.
-       * - `P2` is proposal-count (code-bounded)
+       * See [`Pallet::close`].
        **/
       close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, SpWeightsWeightV2Weight, Compact<u32>]>;
       /**
-       * Disapprove a proposal, close, and remove it from the system, regardless of its current
-       * state.
-       * 
-       * Must be called by the Root origin.
-       * 
-       * Parameters:
-       * * `proposal_hash`: The hash of the proposal that should be disapproved.
-       * 
-       * ## Complexity
-       * O(P) where P is the number of max proposals
+       * See [`Pallet::disapprove_proposal`].
        **/
       disapproveProposal: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
       /**
-       * Dispatch a proposal from a member using the `Member` origin.
-       * 
-       * Origin must be a member of the collective.
-       * 
-       * ## Complexity:
-       * - `O(B + M + P)` where:
-       * - `B` is `proposal` size in bytes (length-fee-bounded)
-       * - `M` members-count (code-bounded)
-       * - `P` complexity of dispatching `proposal`
+       * See [`Pallet::execute`].
        **/
       execute: AugmentedSubmittable<(proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, Compact<u32>]>;
       /**
-       * Add a new proposal to either be voted on or executed directly.
-       * 
-       * Requires the sender to be member.
-       * 
-       * `threshold` determines whether `proposal` is executed directly (`threshold < 2`)
-       * or put up for voting.
-       * 
-       * ## Complexity
-       * - `O(B + M + P1)` or `O(B + M + P2)` where:
-       * - `B` is `proposal` size in bytes (length-fee-bounded)
-       * - `M` is members-count (code- and governance-bounded)
-       * - branching is influenced by `threshold` where:
-       * - `P1` is proposal execution complexity (`threshold < 2`)
-       * - `P2` is proposals-count (code-bounded) (`threshold >= 2`)
+       * See [`Pallet::propose`].
        **/
       propose: AugmentedSubmittable<(threshold: Compact<u32> | AnyNumber | Uint8Array, proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Call, Compact<u32>]>;
       /**
-       * Set the collective's membership.
-       * 
-       * - `new_members`: The new member list. Be nice to the chain and provide it sorted.
-       * - `prime`: The prime member whose vote sets the default.
-       * - `old_count`: The upper bound for the previous number of members in storage. Used for
-       * weight estimation.
-       * 
-       * The dispatch of this call must be `SetMembersOrigin`.
-       * 
-       * NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but
-       * the weight estimations rely on it to estimate dispatchable weight.
-       * 
-       * # WARNING:
-       * 
-       * The `pallet-collective` can also be managed by logic outside of the pallet through the
-       * implementation of the trait [`ChangeMembers`].
-       * Any call to `set_members` must be careful that the member set doesn't get out of sync
-       * with other logic managing the member set.
-       * 
-       * ## Complexity:
-       * - `O(MP + N)` where:
-       * - `M` old-members-count (code- and governance-bounded)
-       * - `N` new-members-count (code- and governance-bounded)
-       * - `P` proposals-count (code-bounded)
+       * See [`Pallet::set_members`].
        **/
       setMembers: AugmentedSubmittable<(newMembers: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], prime: Option<AccountId32> | null | Uint8Array | AccountId32 | string, oldCount: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<AccountId32>, Option<AccountId32>, u32]>;
       /**
-       * Add an aye or nay vote for the sender to the given proposal.
-       * 
-       * Requires the sender to be a member.
-       * 
-       * Transaction fees will be waived if the member is voting on any particular proposal
-       * for the first time and the call is successful. Subsequent vote changes will charge a
-       * fee.
-       * ## Complexity
-       * - `O(M)` where `M` is members-count (code- and governance-bounded)
+       * See [`Pallet::vote`].
        **/
       vote: AugmentedSubmittable<(proposal: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, approve: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, bool]>;
       /**
@@ -405,50 +202,31 @@
     };
     councilMembership: {
       /**
-       * Add a member `who` to the set.
-       * 
-       * May only be called from `T::AddOrigin`.
+       * See [`Pallet::add_member`].
        **/
       addMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Swap out the sending member for some other key `new`.
-       * 
-       * May only be called from `Signed` origin of a current member.
-       * 
-       * Prime membership is passed from the origin account to `new`, if extant.
+       * See [`Pallet::change_key`].
        **/
       changeKey: AugmentedSubmittable<(updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Remove the prime member if it exists.
-       * 
-       * May only be called from `T::PrimeOrigin`.
+       * See [`Pallet::clear_prime`].
        **/
       clearPrime: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Remove a member `who` from the set.
-       * 
-       * May only be called from `T::RemoveOrigin`.
+       * See [`Pallet::remove_member`].
        **/
       removeMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Change the membership to a new set, disregarding the existing membership. Be nice and
-       * pass `members` pre-sorted.
-       * 
-       * May only be called from `T::ResetOrigin`.
+       * See [`Pallet::reset_members`].
        **/
       resetMembers: AugmentedSubmittable<(members: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<AccountId32>]>;
       /**
-       * Set the prime member. Must be a current member.
-       * 
-       * May only be called from `T::PrimeOrigin`.
+       * See [`Pallet::set_prime`].
        **/
       setPrime: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Swap out one member `remove` for another `add`.
-       * 
-       * May only be called from `T::SwapOrigin`.
-       * 
-       * Prime membership is *not* passed from `remove` to `add`, if extant.
+       * See [`Pallet::swap_member`].
        **/
       swapMember: AugmentedSubmittable<(remove: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, add: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, MultiAddress]>;
       /**
@@ -464,273 +242,79 @@
     };
     democracy: {
       /**
-       * Permanently place a proposal into the blacklist. This prevents it from ever being
-       * proposed again.
-       * 
-       * If called on a queued public or external proposal, then this will result in it being
-       * removed. If the `ref_index` supplied is an active referendum with the proposal hash,
-       * then it will be cancelled.
-       * 
-       * The dispatch origin of this call must be `BlacklistOrigin`.
-       * 
-       * - `proposal_hash`: The proposal hash to blacklist permanently.
-       * - `ref_index`: An ongoing referendum whose hash is `proposal_hash`, which will be
-       * cancelled.
-       * 
-       * Weight: `O(p)` (though as this is an high-privilege dispatch, we assume it has a
-       * reasonable value).
+       * See [`Pallet::blacklist`].
        **/
       blacklist: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, maybeRefIndex: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [H256, Option<u32>]>;
       /**
-       * Remove a proposal.
-       * 
-       * The dispatch origin of this call must be `CancelProposalOrigin`.
-       * 
-       * - `prop_index`: The index of the proposal to cancel.
-       * 
-       * Weight: `O(p)` where `p = PublicProps::<T>::decode_len()`
+       * See [`Pallet::cancel_proposal`].
        **/
       cancelProposal: AugmentedSubmittable<(propIndex: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
       /**
-       * Remove a referendum.
-       * 
-       * The dispatch origin of this call must be _Root_.
-       * 
-       * - `ref_index`: The index of the referendum to cancel.
-       * 
-       * # Weight: `O(1)`.
+       * See [`Pallet::cancel_referendum`].
        **/
       cancelReferendum: AugmentedSubmittable<(refIndex: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
       /**
-       * Clears all public proposals.
-       * 
-       * The dispatch origin of this call must be _Root_.
-       * 
-       * Weight: `O(1)`.
+       * See [`Pallet::clear_public_proposals`].
        **/
       clearPublicProposals: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Delegate the voting power (with some given conviction) of the sending account.
-       * 
-       * The balance delegated is locked for as long as it's delegated, and thereafter for the
-       * time appropriate for the conviction's lock period.
-       * 
-       * The dispatch origin of this call must be _Signed_, and the signing account must either:
-       * - be delegating already; or
-       * - have no voting activity (if there is, then it will need to be removed/consolidated
-       * through `reap_vote` or `unvote`).
-       * 
-       * - `to`: The account whose voting the `target` account's voting power will follow.
-       * - `conviction`: The conviction that will be attached to the delegated votes. When the
-       * account is undelegated, the funds will be locked for the corresponding period.
-       * - `balance`: The amount of the account's balance to be used in delegating. This must not
-       * be more than the account's current balance.
-       * 
-       * Emits `Delegated`.
-       * 
-       * Weight: `O(R)` where R is the number of referendums the voter delegating to has
-       * voted on. Weight is charged as if maximum votes.
+       * See [`Pallet::delegate`].
        **/
       delegate: AugmentedSubmittable<(to: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, conviction: PalletDemocracyConviction | 'None' | 'Locked1x' | 'Locked2x' | 'Locked3x' | 'Locked4x' | 'Locked5x' | 'Locked6x' | number | Uint8Array, balance: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletDemocracyConviction, u128]>;
       /**
-       * Schedule an emergency cancellation of a referendum. Cannot happen twice to the same
-       * referendum.
-       * 
-       * The dispatch origin of this call must be `CancellationOrigin`.
-       * 
-       * -`ref_index`: The index of the referendum to cancel.
-       * 
-       * Weight: `O(1)`.
+       * See [`Pallet::emergency_cancel`].
        **/
       emergencyCancel: AugmentedSubmittable<(refIndex: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Schedule a referendum to be tabled once it is legal to schedule an external
-       * referendum.
-       * 
-       * The dispatch origin of this call must be `ExternalOrigin`.
-       * 
-       * - `proposal_hash`: The preimage hash of the proposal.
+       * See [`Pallet::external_propose`].
        **/
       externalPropose: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded]>;
       /**
-       * Schedule a negative-turnout-bias referendum to be tabled next once it is legal to
-       * schedule an external referendum.
-       * 
-       * The dispatch of this call must be `ExternalDefaultOrigin`.
-       * 
-       * - `proposal_hash`: The preimage hash of the proposal.
-       * 
-       * Unlike `external_propose`, blacklisting has no effect on this and it may replace a
-       * pre-scheduled `external_propose` call.
-       * 
-       * Weight: `O(1)`
+       * See [`Pallet::external_propose_default`].
        **/
       externalProposeDefault: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded]>;
       /**
-       * Schedule a majority-carries referendum to be tabled next once it is legal to schedule
-       * an external referendum.
-       * 
-       * The dispatch of this call must be `ExternalMajorityOrigin`.
-       * 
-       * - `proposal_hash`: The preimage hash of the proposal.
-       * 
-       * Unlike `external_propose`, blacklisting has no effect on this and it may replace a
-       * pre-scheduled `external_propose` call.
-       * 
-       * Weight: `O(1)`
+       * See [`Pallet::external_propose_majority`].
        **/
       externalProposeMajority: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded]>;
       /**
-       * Schedule the currently externally-proposed majority-carries referendum to be tabled
-       * immediately. If there is no externally-proposed referendum currently, or if there is one
-       * but it is not a majority-carries referendum then it fails.
-       * 
-       * The dispatch of this call must be `FastTrackOrigin`.
-       * 
-       * - `proposal_hash`: The hash of the current external proposal.
-       * - `voting_period`: The period that is allowed for voting on this proposal. Increased to
-       * Must be always greater than zero.
-       * For `FastTrackOrigin` must be equal or greater than `FastTrackVotingPeriod`.
-       * - `delay`: The number of block after voting has ended in approval and this should be
-       * enacted. This doesn't have a minimum amount.
-       * 
-       * Emits `Started`.
-       * 
-       * Weight: `O(1)`
+       * See [`Pallet::fast_track`].
        **/
       fastTrack: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, votingPeriod: u32 | AnyNumber | Uint8Array, delay: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, u32, u32]>;
       /**
-       * Propose a sensitive action to be taken.
-       * 
-       * The dispatch origin of this call must be _Signed_ and the sender must
-       * have funds to cover the deposit.
-       * 
-       * - `proposal_hash`: The hash of the proposal preimage.
-       * - `value`: The amount of deposit (must be at least `MinimumDeposit`).
-       * 
-       * Emits `Proposed`.
+       * See [`Pallet::propose`].
        **/
       propose: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded, Compact<u128>]>;
       /**
-       * Remove a vote for a referendum.
-       * 
-       * If the `target` is equal to the signer, then this function is exactly equivalent to
-       * `remove_vote`. If not equal to the signer, then the vote must have expired,
-       * either because the referendum was cancelled, because the voter lost the referendum or
-       * because the conviction period is over.
-       * 
-       * The dispatch origin of this call must be _Signed_.
-       * 
-       * - `target`: The account of the vote to be removed; this account must have voted for
-       * referendum `index`.
-       * - `index`: The index of referendum of the vote to be removed.
-       * 
-       * Weight: `O(R + log R)` where R is the number of referenda that `target` has voted on.
-       * Weight is calculated for the maximum number of vote.
+       * See [`Pallet::remove_other_vote`].
        **/
       removeOtherVote: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u32]>;
       /**
-       * Remove a vote for a referendum.
-       * 
-       * If:
-       * - the referendum was cancelled, or
-       * - the referendum is ongoing, or
-       * - the referendum has ended such that
-       * - the vote of the account was in opposition to the result; or
-       * - there was no conviction to the account's vote; or
-       * - the account made a split vote
-       * ...then the vote is removed cleanly and a following call to `unlock` may result in more
-       * funds being available.
-       * 
-       * If, however, the referendum has ended and:
-       * - it finished corresponding to the vote of the account, and
-       * - the account made a standard vote with conviction, and
-       * - the lock period of the conviction is not over
-       * ...then the lock will be aggregated into the overall account's lock, which may involve
-       * *overlocking* (where the two locks are combined into a single lock that is the maximum
-       * of both the amount locked and the time is it locked for).
-       * 
-       * The dispatch origin of this call must be _Signed_, and the signer must have a vote
-       * registered for referendum `index`.
-       * 
-       * - `index`: The index of referendum of the vote to be removed.
-       * 
-       * Weight: `O(R + log R)` where R is the number of referenda that `target` has voted on.
-       * Weight is calculated for the maximum number of vote.
+       * See [`Pallet::remove_vote`].
        **/
       removeVote: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Signals agreement with a particular proposal.
-       * 
-       * The dispatch origin of this call must be _Signed_ and the sender
-       * must have funds to cover the deposit, equal to the original deposit.
-       * 
-       * - `proposal`: The index of the proposal to second.
+       * See [`Pallet::second`].
        **/
       second: AugmentedSubmittable<(proposal: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
       /**
-       * Set or clear a metadata of a proposal or a referendum.
-       * 
-       * Parameters:
-       * - `origin`: Must correspond to the `MetadataOwner`.
-       * - `ExternalOrigin` for an external proposal with the `SuperMajorityApprove`
-       * threshold.
-       * - `ExternalDefaultOrigin` for an external proposal with the `SuperMajorityAgainst`
-       * threshold.
-       * - `ExternalMajorityOrigin` for an external proposal with the `SimpleMajority`
-       * threshold.
-       * - `Signed` by a creator for a public proposal.
-       * - `Signed` to clear a metadata for a finished referendum.
-       * - `Root` to set a metadata for an ongoing referendum.
-       * - `owner`: an identifier of a metadata owner.
-       * - `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata.
+       * See [`Pallet::set_metadata`].
        **/
       setMetadata: AugmentedSubmittable<(owner: PalletDemocracyMetadataOwner | { External: any } | { Proposal: any } | { Referendum: any } | string | Uint8Array, maybeHash: Option<H256> | null | Uint8Array | H256 | string) => SubmittableExtrinsic<ApiType>, [PalletDemocracyMetadataOwner, Option<H256>]>;
       /**
-       * Undelegate the voting power of the sending account.
-       * 
-       * Tokens may be unlocked following once an amount of time consistent with the lock period
-       * of the conviction with which the delegation was issued.
-       * 
-       * The dispatch origin of this call must be _Signed_ and the signing account must be
-       * currently delegating.
-       * 
-       * Emits `Undelegated`.
-       * 
-       * Weight: `O(R)` where R is the number of referendums the voter delegating to has
-       * voted on. Weight is charged as if maximum votes.
+       * See [`Pallet::undelegate`].
        **/
       undelegate: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Unlock tokens that have an expired lock.
-       * 
-       * The dispatch origin of this call must be _Signed_.
-       * 
-       * - `target`: The account to remove the lock on.
-       * 
-       * Weight: `O(R)` with R number of vote of target.
+       * See [`Pallet::unlock`].
        **/
       unlock: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Veto and blacklist the external proposal hash.
-       * 
-       * The dispatch origin of this call must be `VetoOrigin`.
-       * 
-       * - `proposal_hash`: The preimage hash of the proposal to veto and blacklist.
-       * 
-       * Emits `Vetoed`.
-       * 
-       * Weight: `O(V + log(V))` where V is number of `existing vetoers`
+       * See [`Pallet::veto_external`].
        **/
       vetoExternal: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
       /**
-       * Vote in a referendum. If `vote.is_aye()`, the vote is to enact the proposal;
-       * otherwise it is a vote to keep the status quo.
-       * 
-       * The dispatch origin of this call must be _Signed_.
-       * 
-       * - `ref_index`: The index of the referendum to vote for.
-       * - `vote`: The vote configuration.
+       * See [`Pallet::vote`].
        **/
       vote: AugmentedSubmittable<(refIndex: Compact<u32> | AnyNumber | Uint8Array, vote: PalletDemocracyVoteAccountVote | { Standard: any } | { Split: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, PalletDemocracyVoteAccountVote]>;
       /**
@@ -740,7 +324,7 @@
     };
     dmpQueue: {
       /**
-       * Service a single overweight message.
+       * See [`Pallet::service_overweight`].
        **/
       serviceOverweight: AugmentedSubmittable<(index: u64 | AnyNumber | Uint8Array, weightLimit: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64, SpWeightsWeightV2Weight]>;
       /**
@@ -750,7 +334,7 @@
     };
     ethereum: {
       /**
-       * Transact an Ethereum transaction.
+       * See [`Pallet::transact`].
        **/
       transact: AugmentedSubmittable<(transaction: EthereumTransactionTransactionV2 | { Legacy: any } | { EIP2930: any } | { EIP1559: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [EthereumTransactionTransactionV2]>;
       /**
@@ -760,20 +344,19 @@
     };
     evm: {
       /**
-       * Issue an EVM call operation. This is similar to a message call transaction in Ethereum.
+       * See [`Pallet::call`].
        **/
       call: AugmentedSubmittable<(source: H160 | string | Uint8Array, target: H160 | string | Uint8Array, input: Bytes | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, maxFeePerGas: U256 | AnyNumber | Uint8Array, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, accessList: Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => SubmittableExtrinsic<ApiType>, [H160, H160, Bytes, U256, u64, U256, Option<U256>, Option<U256>, Vec<ITuple<[H160, Vec<H256>]>>]>;
       /**
-       * Issue an EVM create operation. This is similar to a contract creation transaction in
-       * Ethereum.
+       * See [`Pallet::create`].
        **/
       create: AugmentedSubmittable<(source: H160 | string | Uint8Array, init: Bytes | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, maxFeePerGas: U256 | AnyNumber | Uint8Array, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, accessList: Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => SubmittableExtrinsic<ApiType>, [H160, Bytes, U256, u64, U256, Option<U256>, Option<U256>, Vec<ITuple<[H160, Vec<H256>]>>]>;
       /**
-       * Issue an EVM create2 operation.
+       * See [`Pallet::create2`].
        **/
       create2: AugmentedSubmittable<(source: H160 | string | Uint8Array, init: Bytes | string | Uint8Array, salt: H256 | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, maxFeePerGas: U256 | AnyNumber | Uint8Array, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, accessList: Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => SubmittableExtrinsic<ApiType>, [H160, Bytes, H256, U256, u64, U256, Option<U256>, Option<U256>, Vec<ITuple<[H160, Vec<H256>]>>]>;
       /**
-       * Withdraw balance from EVM into currency/balances pallet.
+       * See [`Pallet::withdraw`].
        **/
       withdraw: AugmentedSubmittable<(address: H160 | string | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160, u128]>;
       /**
@@ -783,7 +366,7 @@
     };
     evmContractHelpers: {
       /**
-       * Migrate contract to use `SponsoringMode` storage instead of `SelfSponsoring`
+       * See [`Pallet::migrate_from_self_sponsoring`].
        **/
       migrateFromSelfSponsoring: AugmentedSubmittable<(addresses: Vec<H160> | (H160 | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<H160>]>;
       /**
@@ -793,31 +376,27 @@
     };
     evmMigration: {
       /**
-       * Start contract migration, inserts contract stub at target address,
-       * and marks account as pending, allowing to insert storage
+       * See [`Pallet::begin`].
        **/
       begin: AugmentedSubmittable<(address: H160 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160]>;
       /**
-       * Finish contract migration, allows it to be called.
-       * It is not possible to alter contract storage via [`Self::set_data`]
-       * after this call.
+       * See [`Pallet::finish`].
        **/
       finish: AugmentedSubmittable<(address: H160 | string | Uint8Array, code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160, Bytes]>;
       /**
-       * Create ethereum events attached to the fake transaction
+       * See [`Pallet::insert_eth_logs`].
        **/
       insertEthLogs: AugmentedSubmittable<(logs: Vec<EthereumLog> | (EthereumLog | { address?: any; topics?: any; data?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<EthereumLog>]>;
       /**
-       * Create substrate events
+       * See [`Pallet::insert_events`].
        **/
       insertEvents: AugmentedSubmittable<(events: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Bytes>]>;
       /**
-       * Remove remark compatibility data leftovers
+       * See [`Pallet::remove_rmrk_data`].
        **/
       removeRmrkData: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Insert items into contract storage, this method can be called
-       * multiple times
+       * See [`Pallet::set_data`].
        **/
       setData: AugmentedSubmittable<(address: H160 | string | Uint8Array, data: Vec<ITuple<[H256, H256]>> | ([H256 | string | Uint8Array, H256 | string | Uint8Array])[]) => SubmittableExtrinsic<ApiType>, [H160, Vec<ITuple<[H256, H256]>>]>;
       /**
@@ -827,69 +406,27 @@
     };
     fellowshipCollective: {
       /**
-       * Introduce a new member.
-       * 
-       * - `origin`: Must be the `AdminOrigin`.
-       * - `who`: Account of non-member which will become a member.
-       * - `rank`: The rank to give the new member.
-       * 
-       * Weight: `O(1)`
+       * See [`Pallet::add_member`].
        **/
       addMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Remove votes from the given poll. It must have ended.
-       * 
-       * - `origin`: Must be `Signed` by any account.
-       * - `poll_index`: Index of a poll which is completed and for which votes continue to
-       * exist.
-       * - `max`: Maximum number of vote items from remove in this call.
-       * 
-       * Transaction fees are waived if the operation is successful.
-       * 
-       * Weight `O(max)` (less if there are fewer items to remove than `max`).
+       * See [`Pallet::cleanup_poll`].
        **/
       cleanupPoll: AugmentedSubmittable<(pollIndex: u32 | AnyNumber | Uint8Array, max: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;
       /**
-       * Decrement the rank of an existing member by one. If the member is already at rank zero,
-       * then they are removed entirely.
-       * 
-       * - `origin`: Must be the `AdminOrigin`.
-       * - `who`: Account of existing member of rank greater than zero.
-       * 
-       * Weight: `O(1)`, less if the member's index is highest in its rank.
+       * See [`Pallet::demote_member`].
        **/
       demoteMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Increment the rank of an existing member by one.
-       * 
-       * - `origin`: Must be the `AdminOrigin`.
-       * - `who`: Account of existing member.
-       * 
-       * Weight: `O(1)`
+       * See [`Pallet::promote_member`].
        **/
       promoteMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Remove the member entirely.
-       * 
-       * - `origin`: Must be the `AdminOrigin`.
-       * - `who`: Account of existing member of rank greater than zero.
-       * - `min_rank`: The rank of the member or greater.
-       * 
-       * Weight: `O(min_rank)`.
+       * See [`Pallet::remove_member`].
        **/
       removeMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, minRank: u16 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u16]>;
       /**
-       * Add an aye or nay vote for the sender to the given proposal.
-       * 
-       * - `origin`: Must be `Signed` by a member account.
-       * - `poll`: Index of a poll which is ongoing.
-       * - `aye`: `true` if the vote is to approve the proposal, `false` otherwise.
-       * 
-       * Transaction fees are be waived if the member is voting on any particular proposal
-       * for the first time and the call is successful. Subsequent vote changes will charge a
-       * fee.
-       * 
-       * Weight: `O(1)`, less if there was no previous vote on the poll by the member.
+       * See [`Pallet::vote`].
        **/
       vote: AugmentedSubmittable<(poll: u32 | AnyNumber | Uint8Array, aye: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, bool]>;
       /**
@@ -899,93 +436,39 @@
     };
     fellowshipReferenda: {
       /**
-       * Cancel an ongoing referendum.
-       * 
-       * - `origin`: must be the `CancelOrigin`.
-       * - `index`: The index of the referendum to be cancelled.
-       * 
-       * Emits `Cancelled`.
+       * See [`Pallet::cancel`].
        **/
       cancel: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Cancel an ongoing referendum and slash the deposits.
-       * 
-       * - `origin`: must be the `KillOrigin`.
-       * - `index`: The index of the referendum to be cancelled.
-       * 
-       * Emits `Killed` and `DepositSlashed`.
+       * See [`Pallet::kill`].
        **/
       kill: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Advance a referendum onto its next logical state. Only used internally.
-       * 
-       * - `origin`: must be `Root`.
-       * - `index`: the referendum to be advanced.
+       * See [`Pallet::nudge_referendum`].
        **/
       nudgeReferendum: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Advance a track onto its next logical state. Only used internally.
-       * 
-       * - `origin`: must be `Root`.
-       * - `track`: the track to be advanced.
-       * 
-       * Action item for when there is now one fewer referendum in the deciding phase and the
-       * `DecidingCount` is not yet updated. This means that we should either:
-       * - begin deciding another referendum (and leave `DecidingCount` alone); or
-       * - decrement `DecidingCount`.
+       * See [`Pallet::one_fewer_deciding`].
        **/
       oneFewerDeciding: AugmentedSubmittable<(track: u16 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16]>;
       /**
-       * Post the Decision Deposit for a referendum.
-       * 
-       * - `origin`: must be `Signed` and the account must have funds available for the
-       * referendum's track's Decision Deposit.
-       * - `index`: The index of the submitted referendum whose Decision Deposit is yet to be
-       * posted.
-       * 
-       * Emits `DecisionDepositPlaced`.
+       * See [`Pallet::place_decision_deposit`].
        **/
       placeDecisionDeposit: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Refund the Decision Deposit for a closed referendum back to the depositor.
-       * 
-       * - `origin`: must be `Signed` or `Root`.
-       * - `index`: The index of a closed referendum whose Decision Deposit has not yet been
-       * refunded.
-       * 
-       * Emits `DecisionDepositRefunded`.
+       * See [`Pallet::refund_decision_deposit`].
        **/
       refundDecisionDeposit: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Refund the Submission Deposit for a closed referendum back to the depositor.
-       * 
-       * - `origin`: must be `Signed` or `Root`.
-       * - `index`: The index of a closed referendum whose Submission Deposit has not yet been
-       * refunded.
-       * 
-       * Emits `SubmissionDepositRefunded`.
+       * See [`Pallet::refund_submission_deposit`].
        **/
       refundSubmissionDeposit: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Set or clear metadata of a referendum.
-       * 
-       * Parameters:
-       * - `origin`: Must be `Signed` by a creator of a referendum or by anyone to clear a
-       * metadata of a finished referendum.
-       * - `index`:  The index of a referendum to set or clear metadata for.
-       * - `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata.
+       * See [`Pallet::set_metadata`].
        **/
       setMetadata: AugmentedSubmittable<(index: u32 | AnyNumber | Uint8Array, maybeHash: Option<H256> | null | Uint8Array | H256 | string) => SubmittableExtrinsic<ApiType>, [u32, Option<H256>]>;
       /**
-       * Propose a referendum on a privileged action.
-       * 
-       * - `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds
-       * available.
-       * - `proposal_origin`: The origin from which the proposal should be executed.
-       * - `proposal`: The proposal.
-       * - `enactment_moment`: The moment that the proposal should be enacted.
-       * 
-       * Emits `Submitted`.
+       * See [`Pallet::submit`].
        **/
       submit: AugmentedSubmittable<(proposalOrigin: OpalRuntimeOriginCaller | { system: any } | { Void: any } | { Council: any } | { TechnicalCommittee: any } | { PolkadotXcm: any } | { CumulusXcm: any } | { Origins: any } | { Ethereum: any } | string | Uint8Array, proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array, enactmentMoment: FrameSupportScheduleDispatchTime | { At: any } | { After: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [OpalRuntimeOriginCaller, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime]>;
       /**
@@ -994,298 +477,90 @@
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
     foreignAssets: {
-      registerForeignAsset: AugmentedSubmittable<(owner: AccountId32 | string | Uint8Array, location: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, metadata: PalletForeignAssetsModuleAssetMetadata | { name?: any; symbol?: any; decimals?: any; minimalBalance?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, XcmVersionedMultiLocation, PalletForeignAssetsModuleAssetMetadata]>;
-      updateForeignAsset: AugmentedSubmittable<(foreignAssetId: u32 | AnyNumber | Uint8Array, location: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, metadata: PalletForeignAssetsModuleAssetMetadata | { name?: any; symbol?: any; decimals?: any; minimalBalance?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, XcmVersionedMultiLocation, PalletForeignAssetsModuleAssetMetadata]>;
       /**
+       * See [`Pallet::register_foreign_asset`].
+       **/
+      registerForeignAsset: AugmentedSubmittable<(owner: AccountId32 | string | Uint8Array, location: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, metadata: PalletForeignAssetsModuleAssetMetadata | { name?: any; symbol?: any; decimals?: any; minimalBalance?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, StagingXcmVersionedMultiLocation, PalletForeignAssetsModuleAssetMetadata]>;
+      /**
+       * See [`Pallet::update_foreign_asset`].
+       **/
+      updateForeignAsset: AugmentedSubmittable<(foreignAssetId: u32 | AnyNumber | Uint8Array, location: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, metadata: PalletForeignAssetsModuleAssetMetadata | { name?: any; symbol?: any; decimals?: any; minimalBalance?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, StagingXcmVersionedMultiLocation, PalletForeignAssetsModuleAssetMetadata]>;
+      /**
        * Generic tx
        **/
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
     identity: {
       /**
-       * Add a registrar to the system.
-       * 
-       * The dispatch origin for this call must be `T::RegistrarOrigin`.
-       * 
-       * - `account`: the account of the registrar.
-       * 
-       * Emits `RegistrarAdded` if successful.
-       * 
-       * # <weight>
-       * - `O(R)` where `R` registrar-count (governance-bounded and code-bounded).
-       * - One storage mutation (codec `O(R)`).
-       * - One event.
-       * # </weight>
+       * See [`Pallet::add_registrar`].
        **/
       addRegistrar: AugmentedSubmittable<(account: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Add the given account to the sender's subs.
-       * 
-       * Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated
-       * to the sender.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a registered
-       * sub identity of `sub`.
+       * See [`Pallet::add_sub`].
        **/
       addSub: AugmentedSubmittable<(sub: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, data: Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Data]>;
       /**
-       * Cancel a previous request.
-       * 
-       * Payment: A previously reserved deposit is returned on success.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a
-       * registered identity.
-       * 
-       * - `reg_index`: The index of the registrar whose judgement is no longer requested.
-       * 
-       * Emits `JudgementUnrequested` if successful.
-       * 
-       * # <weight>
-       * - `O(R + X)`.
-       * - One balance-reserve operation.
-       * - One storage mutation `O(R + X)`.
-       * - One event
-       * # </weight>
+       * See [`Pallet::cancel_request`].
        **/
       cancelRequest: AugmentedSubmittable<(regIndex: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Clear an account's identity info and all sub-accounts and return all deposits.
-       * 
-       * Payment: All reserved balances on the account are returned.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a registered
-       * identity.
-       * 
-       * Emits `IdentityCleared` if successful.
-       * 
-       * # <weight>
-       * - `O(R + S + X)`
-       * - where `R` registrar-count (governance-bounded).
-       * - where `S` subs-count (hard- and deposit-bounded).
-       * - where `X` additional-field-count (deposit-bounded and code-bounded).
-       * - One balance-unreserve operation.
-       * - `2` storage reads and `S + 2` storage deletions.
-       * - One event.
-       * # </weight>
+       * See [`Pallet::clear_identity`].
        **/
       clearIdentity: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Set identities to be associated with the provided accounts as force origin.
-       * 
-       * This is not meant to operate in tandem with the identity pallet as is,
-       * and be instead used to keep identities made and verified externally,
-       * forbidden from interacting with an ordinary user, since it ignores any safety mechanism.
+       * See [`Pallet::force_insert_identities`].
        **/
       forceInsertIdentities: AugmentedSubmittable<(identities: Vec<ITuple<[AccountId32, PalletIdentityRegistration]>> | ([AccountId32 | string | Uint8Array, PalletIdentityRegistration | { judgements?: any; deposit?: any; info?: any } | string | Uint8Array])[]) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[AccountId32, PalletIdentityRegistration]>>]>;
       /**
-       * Remove identities associated with the provided accounts as force origin.
-       * 
-       * This is not meant to operate in tandem with the identity pallet as is,
-       * and be instead used to keep identities made and verified externally,
-       * forbidden from interacting with an ordinary user, since it ignores any safety mechanism.
+       * See [`Pallet::force_remove_identities`].
        **/
       forceRemoveIdentities: AugmentedSubmittable<(identities: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<AccountId32>]>;
       /**
-       * Set sub-identities to be associated with the provided accounts as force origin.
-       * 
-       * This is not meant to operate in tandem with the identity pallet as is,
-       * and be instead used to keep identities made and verified externally,
-       * forbidden from interacting with an ordinary user, since it ignores any safety mechanism.
+       * See [`Pallet::force_set_subs`].
        **/
       forceSetSubs: AugmentedSubmittable<(subs: Vec<ITuple<[AccountId32, ITuple<[u128, Vec<ITuple<[AccountId32, Data]>>]>]>> | ([AccountId32 | string | Uint8Array, ITuple<[u128, Vec<ITuple<[AccountId32, Data]>>]> | [u128 | AnyNumber | Uint8Array, Vec<ITuple<[AccountId32, Data]>> | ([AccountId32 | string | Uint8Array, Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array])[]]])[]) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[AccountId32, ITuple<[u128, Vec<ITuple<[AccountId32, Data]>>]>]>>]>;
       /**
-       * Remove an account's identity and sub-account information and slash the deposits.
-       * 
-       * Payment: Reserved balances from `set_subs` and `set_identity` are slashed and handled by
-       * `Slash`. Verification request deposits are not returned; they should be cancelled
-       * manually using `cancel_request`.
-       * 
-       * The dispatch origin for this call must match `T::ForceOrigin`.
-       * 
-       * - `target`: the account whose identity the judgement is upon. This must be an account
-       * with a registered identity.
-       * 
-       * Emits `IdentityKilled` if successful.
-       * 
-       * # <weight>
-       * - `O(R + S + X)`.
-       * - One balance-reserve operation.
-       * - `S + 2` storage mutations.
-       * - One event.
-       * # </weight>
+       * See [`Pallet::kill_identity`].
        **/
       killIdentity: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Provide a judgement for an account's identity.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must be the account
-       * of the registrar whose index is `reg_index`.
-       * 
-       * - `reg_index`: the index of the registrar whose judgement is being made.
-       * - `target`: the account whose identity the judgement is upon. This must be an account
-       * with a registered identity.
-       * - `judgement`: the judgement of the registrar of index `reg_index` about `target`.
-       * - `identity`: The hash of the [`IdentityInfo`] for that the judgement is provided.
-       * 
-       * Emits `JudgementGiven` if successful.
-       * 
-       * # <weight>
-       * - `O(R + X)`.
-       * - One balance-transfer operation.
-       * - Up to one account-lookup operation.
-       * - Storage: 1 read `O(R)`, 1 mutate `O(R + X)`.
-       * - One event.
-       * # </weight>
+       * See [`Pallet::provide_judgement`].
        **/
       provideJudgement: AugmentedSubmittable<(regIndex: Compact<u32> | AnyNumber | Uint8Array, target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, judgement: PalletIdentityJudgement | { Unknown: any } | { FeePaid: any } | { Reasonable: any } | { KnownGood: any } | { OutOfDate: any } | { LowQuality: any } | { Erroneous: any } | string | Uint8Array, identity: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, MultiAddress, PalletIdentityJudgement, H256]>;
       /**
-       * Remove the sender as a sub-account.
-       * 
-       * Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated
-       * to the sender (*not* the original depositor).
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a registered
-       * super-identity.
-       * 
-       * NOTE: This should not normally be used, but is provided in the case that the non-
-       * controller of an account is maliciously registered as a sub-account.
+       * See [`Pallet::quit_sub`].
        **/
       quitSub: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Remove the given account from the sender's subs.
-       * 
-       * Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated
-       * to the sender.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a registered
-       * sub identity of `sub`.
+       * See [`Pallet::remove_sub`].
        **/
       removeSub: AugmentedSubmittable<(sub: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Alter the associated name of the given sub-account.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a registered
-       * sub identity of `sub`.
+       * See [`Pallet::rename_sub`].
        **/
       renameSub: AugmentedSubmittable<(sub: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, data: Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Data]>;
       /**
-       * Request a judgement from a registrar.
-       * 
-       * Payment: At most `max_fee` will be reserved for payment to the registrar if judgement
-       * given.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a
-       * registered identity.
-       * 
-       * - `reg_index`: The index of the registrar whose judgement is requested.
-       * - `max_fee`: The maximum fee that may be paid. This should just be auto-populated as:
-       * 
-       * ```nocompile
-       * Self::registrars().get(reg_index).unwrap().fee
-       * ```
-       * 
-       * Emits `JudgementRequested` if successful.
-       * 
-       * # <weight>
-       * - `O(R + X)`.
-       * - One balance-reserve operation.
-       * - Storage: 1 read `O(R)`, 1 mutate `O(X + R)`.
-       * - One event.
-       * # </weight>
+       * See [`Pallet::request_judgement`].
        **/
       requestJudgement: AugmentedSubmittable<(regIndex: Compact<u32> | AnyNumber | Uint8Array, maxFee: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Compact<u128>]>;
       /**
-       * Change the account associated with a registrar.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must be the account
-       * of the registrar whose index is `index`.
-       * 
-       * - `index`: the index of the registrar whose fee is to be set.
-       * - `new`: the new account ID.
-       * 
-       * # <weight>
-       * - `O(R)`.
-       * - One storage mutation `O(R)`.
-       * - Benchmark: 8.823 + R * 0.32 µs (min squares analysis)
-       * # </weight>
+       * See [`Pallet::set_account_id`].
        **/
       setAccountId: AugmentedSubmittable<(index: Compact<u32> | AnyNumber | Uint8Array, updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, MultiAddress]>;
       /**
-       * Set the fee required for a judgement to be requested from a registrar.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must be the account
-       * of the registrar whose index is `index`.
-       * 
-       * - `index`: the index of the registrar whose fee is to be set.
-       * - `fee`: the new fee.
-       * 
-       * # <weight>
-       * - `O(R)`.
-       * - One storage mutation `O(R)`.
-       * - Benchmark: 7.315 + R * 0.329 µs (min squares analysis)
-       * # </weight>
+       * See [`Pallet::set_fee`].
        **/
       setFee: AugmentedSubmittable<(index: Compact<u32> | AnyNumber | Uint8Array, fee: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Compact<u128>]>;
       /**
-       * Set the field information for a registrar.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must be the account
-       * of the registrar whose index is `index`.
-       * 
-       * - `index`: the index of the registrar whose fee is to be set.
-       * - `fields`: the fields that the registrar concerns themselves with.
-       * 
-       * # <weight>
-       * - `O(R)`.
-       * - One storage mutation `O(R)`.
-       * - Benchmark: 7.464 + R * 0.325 µs (min squares analysis)
-       * # </weight>
+       * See [`Pallet::set_fields`].
        **/
       setFields: AugmentedSubmittable<(index: Compact<u32> | AnyNumber | Uint8Array, fields: PalletIdentityBitFlags) => SubmittableExtrinsic<ApiType>, [Compact<u32>, PalletIdentityBitFlags]>;
       /**
-       * Set an account's identity information and reserve the appropriate deposit.
-       * 
-       * If the account already has identity information, the deposit is taken as part payment
-       * for the new deposit.
-       * 
-       * The dispatch origin for this call must be _Signed_.
-       * 
-       * - `info`: The identity information.
-       * 
-       * Emits `IdentitySet` if successful.
-       * 
-       * # <weight>
-       * - `O(X + X' + R)`
-       * - where `X` additional-field-count (deposit-bounded and code-bounded)
-       * - where `R` judgements-count (registrar-count-bounded)
-       * - One balance reserve operation.
-       * - One storage mutation (codec-read `O(X' + R)`, codec-write `O(X + R)`).
-       * - One event.
-       * # </weight>
+       * See [`Pallet::set_identity`].
        **/
       setIdentity: AugmentedSubmittable<(info: PalletIdentityIdentityInfo | { additional?: any; display?: any; legal?: any; web?: any; riot?: any; email?: any; pgpFingerprint?: any; image?: any; twitter?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletIdentityIdentityInfo]>;
       /**
-       * Set the sub-accounts of the sender.
-       * 
-       * Payment: Any aggregate balance reserved by previous `set_subs` calls will be returned
-       * and an amount `SubAccountDeposit` will be reserved for each item in `subs`.
-       * 
-       * The dispatch origin for this call must be _Signed_ and the sender must have a registered
-       * identity.
-       * 
-       * - `subs`: The identity's (new) sub-accounts.
-       * 
-       * # <weight>
-       * - `O(P + S)`
-       * - where `P` old-subs-count (hard- and deposit-bounded).
-       * - where `S` subs-count (hard- and deposit-bounded).
-       * - At most one balance operations.
-       * - DB:
-       * - `P + S` storage mutations (codec complexity `O(1)`)
-       * - One storage read (codec complexity `O(P)`).
-       * - One storage write (codec complexity `O(S)`).
-       * - One storage-exists (`IdentityOf::contains_key`).
-       * # </weight>
+       * See [`Pallet::set_subs`].
        **/
       setSubs: AugmentedSubmittable<(subs: Vec<ITuple<[AccountId32, Data]>> | ([AccountId32 | string | Uint8Array, Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array])[]) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[AccountId32, Data]>>]>;
       /**
@@ -1295,17 +570,7 @@
     };
     inflation: {
       /**
-       * This method sets the inflation start date. Can be only called once.
-       * Inflation start block can be backdated and will catch up. The method will create Treasury
-       * account if it does not exist and perform the first inflation deposit.
-       * 
-       * # Permissions
-       * 
-       * * Root
-       * 
-       * # Arguments
-       * 
-       * * inflation_start_relay_block: The relay chain block at which inflation should start
+       * See [`Pallet::start_inflation`].
        **/
       startInflation: AugmentedSubmittable<(inflationStartRelayBlock: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
@@ -1314,15 +579,14 @@
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
     maintenance: {
+      /**
+       * See [`Pallet::disable`].
+       **/
       disable: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
-      enable: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Execute a runtime call stored as a preimage.
-       * 
-       * `weight_bound` is the maximum weight that the caller is willing
-       * to allow the extrinsic to be executed with.
+       * See [`Pallet::enable`].
        **/
-      executePreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array, weightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, SpWeightsWeightV2Weight]>;
+      enable: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
        * Generic tx
        **/
@@ -1336,40 +600,20 @@
     };
     parachainSystem: {
       /**
-       * Authorize an upgrade to a given `code_hash` for the runtime. The runtime can be supplied
-       * later.
-       * 
-       * The `check_version` parameter sets a boolean flag for whether or not the runtime's spec
-       * version and name should be verified on upgrade. Since the authorization only has a hash,
-       * it cannot actually perform the verification.
-       * 
-       * This call requires Root origin.
+       * See [`Pallet::authorize_upgrade`].
        **/
       authorizeUpgrade: AugmentedSubmittable<(codeHash: H256 | string | Uint8Array, checkVersion: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, bool]>;
       /**
-       * Provide the preimage (runtime binary) `code` for an upgrade that has been authorized.
-       * 
-       * If the authorization required a version check, this call will ensure the spec name
-       * remains unchanged and that the spec version has increased.
-       * 
-       * Note that this function will not apply the new `code`, but only attempt to schedule the
-       * upgrade with the Relay Chain.
-       * 
-       * All origins are allowed.
+       * See [`Pallet::enact_authorized_upgrade`].
        **/
       enactAuthorizedUpgrade: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
       /**
-       * Set the current validation data.
-       * 
-       * This should be invoked exactly once per block. It will panic at the finalization
-       * phase if the call was not invoked.
-       * 
-       * The dispatch origin for this call must be `Inherent`
-       * 
-       * As a side effect, this function upgrades the current validation function
-       * if the appropriate time has come.
+       * See [`Pallet::set_validation_data`].
        **/
       setValidationData: AugmentedSubmittable<(data: CumulusPrimitivesParachainInherentParachainInherentData | { validationData?: any; relayChainState?: any; downwardMessages?: any; horizontalMessages?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [CumulusPrimitivesParachainInherentParachainInherentData]>;
+      /**
+       * See [`Pallet::sudo_send_upward_message`].
+       **/
       sudoSendUpwardMessage: AugmentedSubmittable<(message: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
       /**
        * Generic tx
@@ -1378,171 +622,69 @@
     };
     polkadotXcm: {
       /**
-       * Execute an XCM message from a local, signed, origin.
-       * 
-       * An event is deposited indicating whether `msg` could be executed completely or only
-       * partially.
-       * 
-       * No more than `max_weight` will be used in its attempted execution. If this is less than the
-       * maximum amount of weight that the message could take to be executed, then no execution
-       * attempt will be made.
-       * 
-       * NOTE: A successful return to this does *not* imply that the `msg` was executed successfully
-       * to completion; only that *some* of it was executed.
+       * See [`Pallet::execute`].
        **/
-      execute: AugmentedSubmittable<(message: XcmVersionedXcm | { V2: any } | { V3: any } | string | Uint8Array, maxWeight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedXcm, SpWeightsWeightV2Weight]>;
+      execute: AugmentedSubmittable<(message: StagingXcmVersionedXcm | { V2: any } | { V3: any } | string | Uint8Array, maxWeight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedXcm, SpWeightsWeightV2Weight]>;
       /**
-       * Set a safe XCM version (the version that XCM should be encoded with if the most recent
-       * version a destination can accept is unknown).
-       * 
-       * - `origin`: Must be an origin specified by AdminOrigin.
-       * - `maybe_xcm_version`: The default XCM encoding version, or `None` to disable.
+       * See [`Pallet::force_default_xcm_version`].
        **/
       forceDefaultXcmVersion: AugmentedSubmittable<(maybeXcmVersion: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u32>]>;
       /**
-       * Ask a location to notify us regarding their XCM version and any changes to it.
-       * 
-       * - `origin`: Must be an origin specified by AdminOrigin.
-       * - `location`: The location to which we should subscribe for XCM version notifications.
+       * See [`Pallet::force_subscribe_version_notify`].
        **/
-      forceSubscribeVersionNotify: AugmentedSubmittable<(location: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation]>;
+      forceSubscribeVersionNotify: AugmentedSubmittable<(location: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiLocation]>;
       /**
-       * Set or unset the global suspension state of the XCM executor.
-       * 
-       * - `origin`: Must be an origin specified by AdminOrigin.
-       * - `suspended`: `true` to suspend, `false` to resume.
+       * See [`Pallet::force_suspension`].
        **/
       forceSuspension: AugmentedSubmittable<(suspended: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [bool]>;
       /**
-       * Require that a particular destination should no longer notify us regarding any XCM
-       * version changes.
-       * 
-       * - `origin`: Must be an origin specified by AdminOrigin.
-       * - `location`: The location to which we are currently subscribed for XCM version
-       * notifications which we no longer desire.
+       * See [`Pallet::force_unsubscribe_version_notify`].
        **/
-      forceUnsubscribeVersionNotify: AugmentedSubmittable<(location: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation]>;
+      forceUnsubscribeVersionNotify: AugmentedSubmittable<(location: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiLocation]>;
       /**
-       * Extoll that a particular destination can be communicated with through a particular
-       * version of XCM.
-       * 
-       * - `origin`: Must be an origin specified by AdminOrigin.
-       * - `location`: The destination that is being described.
-       * - `xcm_version`: The latest version of XCM that `location` supports.
+       * See [`Pallet::force_xcm_version`].
        **/
-      forceXcmVersion: AugmentedSubmittable<(location: XcmV3MultiLocation | { parents?: any; interior?: any } | string | Uint8Array, xcmVersion: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmV3MultiLocation, u32]>;
+      forceXcmVersion: AugmentedSubmittable<(location: StagingXcmV3MultiLocation | { parents?: any; interior?: any } | string | Uint8Array, version: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmV3MultiLocation, u32]>;
       /**
-       * Transfer some assets from the local chain to the sovereign account of a destination
-       * chain and forward a notification XCM.
-       * 
-       * Fee payment on the destination side is made from the asset in the `assets` vector of
-       * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
-       * is needed than `weight_limit`, then the operation will fail and the assets send may be
-       * at risk.
-       * 
-       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
-       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send
-       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.
-       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be
-       * an `AccountId32` value.
-       * - `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the
-       * `dest` side.
-       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
-       * fees.
-       * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
+       * See [`Pallet::limited_reserve_transfer_assets`].
        **/
-      limitedReserveTransferAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array, weightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32, XcmV3WeightLimit]>;
+      limitedReserveTransferAssets: AugmentedSubmittable<(dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: StagingXcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array, weightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiAssets, u32, StagingXcmV3WeightLimit]>;
       /**
-       * Teleport some assets from the local chain to some destination chain.
-       * 
-       * Fee payment on the destination side is made from the asset in the `assets` vector of
-       * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
-       * is needed than `weight_limit`, then the operation will fail and the assets send may be
-       * at risk.
-       * 
-       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
-       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send
-       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.
-       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be
-       * an `AccountId32` value.
-       * - `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the
-       * `dest` side. May not be empty.
-       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
-       * fees.
-       * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
+       * See [`Pallet::limited_teleport_assets`].
        **/
-      limitedTeleportAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array, weightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32, XcmV3WeightLimit]>;
+      limitedTeleportAssets: AugmentedSubmittable<(dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: StagingXcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array, weightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiAssets, u32, StagingXcmV3WeightLimit]>;
       /**
-       * Transfer some assets from the local chain to the sovereign account of a destination
-       * chain and forward a notification XCM.
-       * 
-       * Fee payment on the destination side is made from the asset in the `assets` vector of
-       * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
-       * with all fees taken as needed from the asset.
-       * 
-       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
-       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send
-       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.
-       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be
-       * an `AccountId32` value.
-       * - `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the
-       * `dest` side.
-       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
-       * fees.
+       * See [`Pallet::reserve_transfer_assets`].
        **/
-      reserveTransferAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32]>;
-      send: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, message: XcmVersionedXcm | { V2: any } | { V3: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedXcm]>;
+      reserveTransferAssets: AugmentedSubmittable<(dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: StagingXcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiAssets, u32]>;
       /**
-       * Teleport some assets from the local chain to some destination chain.
-       * 
-       * Fee payment on the destination side is made from the asset in the `assets` vector of
-       * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
-       * with all fees taken as needed from the asset.
-       * 
-       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
-       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send
-       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.
-       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be
-       * an `AccountId32` value.
-       * - `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the
-       * `dest` side. May not be empty.
-       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
-       * fees.
+       * See [`Pallet::send`].
        **/
-      teleportAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32]>;
+      send: AugmentedSubmittable<(dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, message: StagingXcmVersionedXcm | { V2: any } | { V3: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiLocation, StagingXcmVersionedXcm]>;
       /**
+       * See [`Pallet::teleport_assets`].
+       **/
+      teleportAssets: AugmentedSubmittable<(dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, beneficiary: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, assets: StagingXcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiLocation, StagingXcmVersionedMultiAssets, u32]>;
+      /**
        * Generic tx
        **/
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
     preimage: {
       /**
-       * Register a preimage on-chain.
-       * 
-       * If the preimage was previously requested, no fees or deposits are taken for providing
-       * the preimage. Otherwise, a deposit is taken proportional to the size of the preimage.
+       * See [`Pallet::note_preimage`].
        **/
       notePreimage: AugmentedSubmittable<(bytes: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
       /**
-       * Request a preimage be uploaded to the chain without paying any fees or deposits.
-       * 
-       * If the preimage requests has already been provided on-chain, we unreserve any deposit
-       * a user may have paid, and take the control of the preimage out of their hands.
+       * See [`Pallet::request_preimage`].
        **/
       requestPreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
       /**
-       * Clear an unrequested preimage from the runtime storage.
-       * 
-       * If `len` is provided, then it will be a much cheaper operation.
-       * 
-       * - `hash`: The hash of the preimage to be removed from the store.
-       * - `len`: The length of the preimage of `hash`.
+       * See [`Pallet::unnote_preimage`].
        **/
       unnotePreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
       /**
-       * Clear a previously made request for a preimage.
-       * 
-       * NOTE: THIS MUST NOT BE CALLED ON `hash` MORE TIMES THAN `request_preimage`.
+       * See [`Pallet::unrequest_preimage`].
        **/
       unrequestPreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
       /**
@@ -1552,27 +694,27 @@
     };
     scheduler: {
       /**
-       * Cancel an anonymously scheduled task.
+       * See [`Pallet::cancel`].
        **/
       cancel: AugmentedSubmittable<(when: u32 | AnyNumber | Uint8Array, index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;
       /**
-       * Cancel a named scheduled task.
+       * See [`Pallet::cancel_named`].
        **/
       cancelNamed: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed]>;
       /**
-       * Anonymously schedule a task.
+       * See [`Pallet::schedule`].
        **/
       schedule: AugmentedSubmittable<(when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
       /**
-       * Anonymously schedule a task after a delay.
+       * See [`Pallet::schedule_after`].
        **/
       scheduleAfter: AugmentedSubmittable<(after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
       /**
-       * Schedule a named task.
+       * See [`Pallet::schedule_named`].
        **/
       scheduleNamed: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
       /**
-       * Schedule a named task after a delay.
+       * See [`Pallet::schedule_named_after`].
        **/
       scheduleNamedAfter: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
       /**
@@ -1582,30 +724,11 @@
     };
     session: {
       /**
-       * Removes any session key(s) of the function caller.
-       * 
-       * This doesn't take effect until the next session.
-       * 
-       * The dispatch origin of this function must be Signed and the account must be either be
-       * convertible to a validator ID using the chain's typical addressing system (this usually
-       * means being a controller account) or directly convertible into a validator ID (which
-       * usually means being a stash account).
-       * 
-       * ## Complexity
-       * - `O(1)` in number of key types. Actual cost depends on the number of length of
-       * `T::Keys::key_ids()` which is fixed.
+       * See [`Pallet::purge_keys`].
        **/
       purgeKeys: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Sets the session key(s) of the function caller to `keys`.
-       * Allows an account to set its session key prior to becoming a validator.
-       * This doesn't take effect until the next session.
-       * 
-       * The dispatch origin of this function must be signed.
-       * 
-       * ## Complexity
-       * - `O(1)`. Actual cost depends on the number of length of `T::Keys::key_ids()` which is
-       * fixed.
+       * See [`Pallet::set_keys`].
        **/
       setKeys: AugmentedSubmittable<(keys: OpalRuntimeRuntimeCommonSessionKeys | { aura?: any } | string | Uint8Array, proof: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [OpalRuntimeRuntimeCommonSessionKeys, Bytes]>;
       /**
@@ -1615,65 +738,27 @@
     };
     stateTrieMigration: {
       /**
-       * Continue the migration for the given `limits`.
-       * 
-       * The dispatch origin of this call can be any signed account.
-       * 
-       * This transaction has NO MONETARY INCENTIVES. calling it will not reward anyone. Albeit,
-       * Upon successful execution, the transaction fee is returned.
-       * 
-       * The (potentially over-estimated) of the byte length of all the data read must be
-       * provided for up-front fee-payment and weighing. In essence, the caller is guaranteeing
-       * that executing the current `MigrationTask` with the given `limits` will not exceed
-       * `real_size_upper` bytes of read data.
-       * 
-       * The `witness_task` is merely a helper to prevent the caller from being slashed or
-       * generally trigger a migration that they do not intend. This parameter is just a message
-       * from caller, saying that they believed `witness_task` was the last state of the
-       * migration, and they only wish for their transaction to do anything, if this assumption
-       * holds. In case `witness_task` does not match, the transaction fails.
-       * 
-       * Based on the documentation of [`MigrationTask::migrate_until_exhaustion`], the
-       * recommended way of doing this is to pass a `limit` that only bounds `count`, as the
-       * `size` limit can always be overwritten.
+       * See [`Pallet::continue_migrate`].
        **/
       continueMigrate: AugmentedSubmittable<(limits: PalletStateTrieMigrationMigrationLimits | { size_?: any; item?: any } | string | Uint8Array, realSizeUpper: u32 | AnyNumber | Uint8Array, witnessTask: PalletStateTrieMigrationMigrationTask | { progressTop?: any; progressChild?: any; size_?: any; topItems?: any; childItems?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletStateTrieMigrationMigrationLimits, u32, PalletStateTrieMigrationMigrationTask]>;
       /**
-       * Control the automatic migration.
-       * 
-       * The dispatch origin of this call must be [`Config::ControlOrigin`].
+       * See [`Pallet::control_auto_migration`].
        **/
       controlAutoMigration: AugmentedSubmittable<(maybeConfig: Option<PalletStateTrieMigrationMigrationLimits> | null | Uint8Array | PalletStateTrieMigrationMigrationLimits | { size_?: any; item?: any } | string) => SubmittableExtrinsic<ApiType>, [Option<PalletStateTrieMigrationMigrationLimits>]>;
       /**
-       * Forcefully set the progress the running migration.
-       * 
-       * This is only useful in one case: the next key to migrate is too big to be migrated with
-       * a signed account, in a parachain context, and we simply want to skip it. A reasonable
-       * example of this would be `:code:`, which is both very expensive to migrate, and commonly
-       * used, so probably it is already migrated.
-       * 
-       * In case you mess things up, you can also, in principle, use this to reset the migration
-       * process.
+       * See [`Pallet::force_set_progress`].
        **/
       forceSetProgress: AugmentedSubmittable<(progressTop: PalletStateTrieMigrationProgress | { ToStart: any } | { LastKey: any } | { Complete: any } | string | Uint8Array, progressChild: PalletStateTrieMigrationProgress | { ToStart: any } | { LastKey: any } | { Complete: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletStateTrieMigrationProgress, PalletStateTrieMigrationProgress]>;
       /**
-       * Migrate the list of child keys by iterating each of them one by one.
-       * 
-       * All of the given child keys must be present under one `child_root`.
-       * 
-       * This does not affect the global migration process tracker ([`MigrationProcess`]), and
-       * should only be used in case any keys are leftover due to a bug.
+       * See [`Pallet::migrate_custom_child`].
        **/
       migrateCustomChild: AugmentedSubmittable<(root: Bytes | string | Uint8Array, childKeys: Vec<Bytes> | (Bytes | string | Uint8Array)[], totalSize: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, Vec<Bytes>, u32]>;
       /**
-       * Migrate the list of top keys by iterating each of them one by one.
-       * 
-       * This does not affect the global migration process tracker ([`MigrationProcess`]), and
-       * should only be used in case any keys are leftover due to a bug.
+       * See [`Pallet::migrate_custom_top`].
        **/
       migrateCustomTop: AugmentedSubmittable<(keys: Vec<Bytes> | (Bytes | string | Uint8Array)[], witnessSize: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<Bytes>, u32]>;
       /**
-       * Set the maximum limit of the signed migration.
+       * See [`Pallet::set_signed_max_limits`].
        **/
       setSignedMaxLimits: AugmentedSubmittable<(limits: PalletStateTrieMigrationMigrationLimits | { size_?: any; item?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletStateTrieMigrationMigrationLimits]>;
       /**
@@ -1689,43 +774,19 @@
     };
     sudo: {
       /**
-       * Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo
-       * key.
-       * 
-       * The dispatch origin for this call must be _Signed_.
-       * 
-       * ## Complexity
-       * - O(1).
+       * See [`Pallet::set_key`].
        **/
       setKey: AugmentedSubmittable<(updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Authenticates the sudo key and dispatches a function call with `Root` origin.
-       * 
-       * The dispatch origin for this call must be _Signed_.
-       * 
-       * ## Complexity
-       * - O(1).
+       * See [`Pallet::sudo`].
        **/
       sudo: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call]>;
       /**
-       * Authenticates the sudo key and dispatches a function call with `Signed` origin from
-       * a given account.
-       * 
-       * The dispatch origin for this call must be _Signed_.
-       * 
-       * ## Complexity
-       * - O(1).
+       * See [`Pallet::sudo_as`].
        **/
       sudoAs: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Call]>;
       /**
-       * Authenticates the sudo key and dispatches a function call with `Root` origin.
-       * This function does not check the weight of the call, and instead allows the
-       * Sudo user to specify the weight of the call.
-       * 
-       * The dispatch origin for this call must be _Signed_.
-       * 
-       * ## Complexity
-       * - O(1).
+       * See [`Pallet::sudo_unchecked_weight`].
        **/
       sudoUncheckedWeight: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array, weight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, SpWeightsWeightV2Weight]>;
       /**
@@ -1735,40 +796,35 @@
     };
     system: {
       /**
-       * Kill all storage items with a key that starts with the given prefix.
-       * 
-       * **NOTE:** We rely on the Root origin to provide us the number of subkeys under
-       * the prefix we are removing to accurately calculate the weight of this function.
+       * See [`Pallet::kill_prefix`].
        **/
       killPrefix: AugmentedSubmittable<(prefix: Bytes | string | Uint8Array, subkeys: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, u32]>;
       /**
-       * Kill some items from storage.
+       * See [`Pallet::kill_storage`].
        **/
       killStorage: AugmentedSubmittable<(keys: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Bytes>]>;
       /**
-       * Make some on-chain remark.
-       * 
-       * - `O(1)`
+       * See [`Pallet::remark`].
        **/
       remark: AugmentedSubmittable<(remark: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
       /**
-       * Make some on-chain remark and emit event.
+       * See [`Pallet::remark_with_event`].
        **/
       remarkWithEvent: AugmentedSubmittable<(remark: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
       /**
-       * Set the new runtime code.
+       * See [`Pallet::set_code`].
        **/
       setCode: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
       /**
-       * Set the new runtime code without doing any checks of the given `code`.
+       * See [`Pallet::set_code_without_checks`].
        **/
       setCodeWithoutChecks: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
       /**
-       * Set the number of pages in the WebAssembly environment's heap.
+       * See [`Pallet::set_heap_pages`].
        **/
       setHeapPages: AugmentedSubmittable<(pages: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;
       /**
-       * Set some items of storage.
+       * See [`Pallet::set_storage`].
        **/
       setStorage: AugmentedSubmittable<(items: Vec<ITuple<[Bytes, Bytes]>> | ([Bytes | string | Uint8Array, Bytes | string | Uint8Array])[]) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[Bytes, Bytes]>>]>;
       /**
@@ -1778,111 +834,27 @@
     };
     technicalCommittee: {
       /**
-       * Close a vote that is either approved, disapproved or whose voting period has ended.
-       * 
-       * May be called by any signed account in order to finish voting and close the proposal.
-       * 
-       * If called before the end of the voting period it will only close the vote if it is
-       * has enough votes to be approved or disapproved.
-       * 
-       * If called after the end of the voting period abstentions are counted as rejections
-       * unless there is a prime member set and the prime member cast an approval.
-       * 
-       * If the close operation completes successfully with disapproval, the transaction fee will
-       * be waived. Otherwise execution of the approved operation will be charged to the caller.
-       * 
-       * + `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed
-       * proposal.
-       * + `length_bound`: The upper bound for the length of the proposal in storage. Checked via
-       * `storage::read` so it is `size_of::<u32>() == 4` larger than the pure length.
-       * 
-       * ## Complexity
-       * - `O(B + M + P1 + P2)` where:
-       * - `B` is `proposal` size in bytes (length-fee-bounded)
-       * - `M` is members-count (code- and governance-bounded)
-       * - `P1` is the complexity of `proposal` preimage.
-       * - `P2` is proposal-count (code-bounded)
+       * See [`Pallet::close`].
        **/
       close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, SpWeightsWeightV2Weight, Compact<u32>]>;
       /**
-       * Disapprove a proposal, close, and remove it from the system, regardless of its current
-       * state.
-       * 
-       * Must be called by the Root origin.
-       * 
-       * Parameters:
-       * * `proposal_hash`: The hash of the proposal that should be disapproved.
-       * 
-       * ## Complexity
-       * O(P) where P is the number of max proposals
+       * See [`Pallet::disapprove_proposal`].
        **/
       disapproveProposal: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
       /**
-       * Dispatch a proposal from a member using the `Member` origin.
-       * 
-       * Origin must be a member of the collective.
-       * 
-       * ## Complexity:
-       * - `O(B + M + P)` where:
-       * - `B` is `proposal` size in bytes (length-fee-bounded)
-       * - `M` members-count (code-bounded)
-       * - `P` complexity of dispatching `proposal`
+       * See [`Pallet::execute`].
        **/
       execute: AugmentedSubmittable<(proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, Compact<u32>]>;
       /**
-       * Add a new proposal to either be voted on or executed directly.
-       * 
-       * Requires the sender to be member.
-       * 
-       * `threshold` determines whether `proposal` is executed directly (`threshold < 2`)
-       * or put up for voting.
-       * 
-       * ## Complexity
-       * - `O(B + M + P1)` or `O(B + M + P2)` where:
-       * - `B` is `proposal` size in bytes (length-fee-bounded)
-       * - `M` is members-count (code- and governance-bounded)
-       * - branching is influenced by `threshold` where:
-       * - `P1` is proposal execution complexity (`threshold < 2`)
-       * - `P2` is proposals-count (code-bounded) (`threshold >= 2`)
+       * See [`Pallet::propose`].
        **/
       propose: AugmentedSubmittable<(threshold: Compact<u32> | AnyNumber | Uint8Array, proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Call, Compact<u32>]>;
       /**
-       * Set the collective's membership.
-       * 
-       * - `new_members`: The new member list. Be nice to the chain and provide it sorted.
-       * - `prime`: The prime member whose vote sets the default.
-       * - `old_count`: The upper bound for the previous number of members in storage. Used for
-       * weight estimation.
-       * 
-       * The dispatch of this call must be `SetMembersOrigin`.
-       * 
-       * NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but
-       * the weight estimations rely on it to estimate dispatchable weight.
-       * 
-       * # WARNING:
-       * 
-       * The `pallet-collective` can also be managed by logic outside of the pallet through the
-       * implementation of the trait [`ChangeMembers`].
-       * Any call to `set_members` must be careful that the member set doesn't get out of sync
-       * with other logic managing the member set.
-       * 
-       * ## Complexity:
-       * - `O(MP + N)` where:
-       * - `M` old-members-count (code- and governance-bounded)
-       * - `N` new-members-count (code- and governance-bounded)
-       * - `P` proposals-count (code-bounded)
+       * See [`Pallet::set_members`].
        **/
       setMembers: AugmentedSubmittable<(newMembers: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], prime: Option<AccountId32> | null | Uint8Array | AccountId32 | string, oldCount: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<AccountId32>, Option<AccountId32>, u32]>;
       /**
-       * Add an aye or nay vote for the sender to the given proposal.
-       * 
-       * Requires the sender to be a member.
-       * 
-       * Transaction fees will be waived if the member is voting on any particular proposal
-       * for the first time and the call is successful. Subsequent vote changes will charge a
-       * fee.
-       * ## Complexity
-       * - `O(M)` where `M` is members-count (code- and governance-bounded)
+       * See [`Pallet::vote`].
        **/
       vote: AugmentedSubmittable<(proposal: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, approve: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, bool]>;
       /**
@@ -1892,50 +864,31 @@
     };
     technicalCommitteeMembership: {
       /**
-       * Add a member `who` to the set.
-       * 
-       * May only be called from `T::AddOrigin`.
+       * See [`Pallet::add_member`].
        **/
       addMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Swap out the sending member for some other key `new`.
-       * 
-       * May only be called from `Signed` origin of a current member.
-       * 
-       * Prime membership is passed from the origin account to `new`, if extant.
+       * See [`Pallet::change_key`].
        **/
       changeKey: AugmentedSubmittable<(updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Remove the prime member if it exists.
-       * 
-       * May only be called from `T::PrimeOrigin`.
+       * See [`Pallet::clear_prime`].
        **/
       clearPrime: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Remove a member `who` from the set.
-       * 
-       * May only be called from `T::RemoveOrigin`.
+       * See [`Pallet::remove_member`].
        **/
       removeMember: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Change the membership to a new set, disregarding the existing membership. Be nice and
-       * pass `members` pre-sorted.
-       * 
-       * May only be called from `T::ResetOrigin`.
+       * See [`Pallet::reset_members`].
        **/
       resetMembers: AugmentedSubmittable<(members: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<AccountId32>]>;
       /**
-       * Set the prime member. Must be a current member.
-       * 
-       * May only be called from `T::PrimeOrigin`.
+       * See [`Pallet::set_prime`].
        **/
       setPrime: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
       /**
-       * Swap out one member `remove` for another `add`.
-       * 
-       * May only be called from `T::SwapOrigin`.
-       * 
-       * Prime membership is *not* passed from `remove` to `add`, if extant.
+       * See [`Pallet::swap_member`].
        **/
       swapMember: AugmentedSubmittable<(remove: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, add: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, MultiAddress]>;
       /**
@@ -1944,11 +897,29 @@
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
     testUtils: {
+      /**
+       * See `Pallet::batch_all`.
+       **/
       batchAll: AugmentedSubmittable<(calls: Vec<Call> | (Call | IMethod | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Call>]>;
+      /**
+       * See `Pallet::enable`.
+       **/
       enable: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
+      /**
+       * See `Pallet::inc_test_value`.
+       **/
       incTestValue: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
+      /**
+       * See `Pallet::just_take_fee`.
+       **/
       justTakeFee: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
+      /**
+       * See `Pallet::set_test_value`.
+       **/
       setTestValue: AugmentedSubmittable<(value: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
+      /**
+       * See `Pallet::set_test_value_and_rollback`.
+       **/
       setTestValueAndRollback: AugmentedSubmittable<(value: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
        * Generic tx
@@ -1957,21 +928,7 @@
     };
     timestamp: {
       /**
-       * Set the current time.
-       * 
-       * This call should be invoked exactly once per block. It will panic at the finalization
-       * phase, if this call hasn't been invoked by that time.
-       * 
-       * The timestamp should be greater than the previous one by the amount specified by
-       * `MinimumPeriod`.
-       * 
-       * The dispatch origin for this call must be `Inherent`.
-       * 
-       * ## Complexity
-       * - `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)
-       * - 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in
-       * `on_finalize`)
-       * - 1 event handler `on_timestamp_set`. Must be `O(1)`.
+       * See [`Pallet::set`].
        **/
       set: AugmentedSubmittable<(now: Compact<u64> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>]>;
       /**
@@ -1981,80 +938,25 @@
     };
     tokens: {
       /**
-       * Exactly as `transfer`, except the origin must be root and the source
-       * account may be specified.
-       * 
-       * The dispatch origin for this call must be _Root_.
-       * 
-       * - `source`: The sender of the transfer.
-       * - `dest`: The recipient of the transfer.
-       * - `currency_id`: currency type.
-       * - `amount`: free balance amount to tranfer.
+       * See [`Pallet::force_transfer`].
        **/
-      forceTransfer: AugmentedSubmittable<(source: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>]>;
+      forceTransfer: AugmentedSubmittable<(source: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, MultiAddress, PalletForeignAssetsAssetId, Compact<u128>]>;
       /**
-       * Set the balances of a given account.
-       * 
-       * This will alter `FreeBalance` and `ReservedBalance` in storage. it
-       * will also decrease the total issuance of the system
-       * (`TotalIssuance`). If the new free or reserved balance is below the
-       * existential deposit, it will reap the `AccountInfo`.
-       * 
-       * The dispatch origin for this call is `root`.
+       * See [`Pallet::set_balance`].
        **/
-      setBalance: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, newFree: Compact<u128> | AnyNumber | Uint8Array, newReserved: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>, Compact<u128>]>;
+      setBalance: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, newFree: Compact<u128> | AnyNumber | Uint8Array, newReserved: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetId, Compact<u128>, Compact<u128>]>;
       /**
-       * Transfer some liquid free balance to another account.
-       * 
-       * `transfer` will set the `FreeBalance` of the sender and receiver.
-       * It will decrease the total issuance of the system by the
-       * `TransferFee`. If the sender's account is below the existential
-       * deposit as a result of the transfer, the account will be reaped.
-       * 
-       * The dispatch origin for this call must be `Signed` by the
-       * transactor.
-       * 
-       * - `dest`: The recipient of the transfer.
-       * - `currency_id`: currency type.
-       * - `amount`: free balance amount to tranfer.
+       * See [`Pallet::transfer`].
        **/
-      transfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>]>;
+      transfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetId, Compact<u128>]>;
       /**
-       * Transfer all remaining balance to the given account.
-       * 
-       * NOTE: This function only attempts to transfer _transferable_
-       * balances. This means that any locked, reserved, or existential
-       * deposits (when `keep_alive` is `true`), will not be transferred by
-       * this function. To ensure that this function results in a killed
-       * account, you might need to prepare the account by removing any
-       * reference counters, storage deposits, etc...
-       * 
-       * The dispatch origin for this call must be `Signed` by the
-       * transactor.
-       * 
-       * - `dest`: The recipient of the transfer.
-       * - `currency_id`: currency type.
-       * - `keep_alive`: A boolean to determine if the `transfer_all`
-       * operation should send all of the funds the account has, causing
-       * the sender account to be killed (false), or transfer everything
-       * except at least the existential deposit, which will guarantee to
-       * keep the sender account alive (true).
+       * See [`Pallet::transfer_all`].
        **/
-      transferAll: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, keepAlive: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, bool]>;
+      transferAll: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, keepAlive: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetId, bool]>;
       /**
-       * Same as the [`transfer`] call, but with a check that the transfer
-       * will not kill the origin account.
-       * 
-       * 99% of the time you want [`transfer`] instead.
-       * 
-       * The dispatch origin for this call must be `Signed` by the
-       * transactor.
-       * 
-       * - `dest`: The recipient of the transfer.
-       * - `currency_id`: currency type.
-       * - `amount`: free balance amount to tranfer.
+       * See [`Pallet::transfer_keep_alive`].
        **/
-      transferKeepAlive: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>]>;
+      transferKeepAlive: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetId, Compact<u128>]>;
       /**
        * Generic tx
        **/
@@ -2062,58 +964,23 @@
     };
     treasury: {
       /**
-       * Approve a proposal. At a later time, the proposal will be allocated to the beneficiary
-       * and the original deposit will be returned.
-       * 
-       * May only be called from `T::ApproveOrigin`.
-       * 
-       * ## Complexity
-       * - O(1).
+       * See [`Pallet::approve_proposal`].
        **/
       approveProposal: AugmentedSubmittable<(proposalId: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
       /**
-       * Put forward a suggestion for spending. A deposit proportional to the value
-       * is reserved and slashed if the proposal is rejected. It is returned once the
-       * proposal is awarded.
-       * 
-       * ## Complexity
-       * - O(1)
+       * See [`Pallet::propose_spend`].
        **/
       proposeSpend: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress]>;
       /**
-       * Reject a proposed spend. The original deposit will be slashed.
-       * 
-       * May only be called from `T::RejectOrigin`.
-       * 
-       * ## Complexity
-       * - O(1)
+       * See [`Pallet::reject_proposal`].
        **/
       rejectProposal: AugmentedSubmittable<(proposalId: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
       /**
-       * Force a previously approved proposal to be removed from the approval queue.
-       * The original deposit will no longer be returned.
-       * 
-       * May only be called from `T::RejectOrigin`.
-       * - `proposal_id`: The index of a proposal
-       * 
-       * ## Complexity
-       * - O(A) where `A` is the number of approvals
-       * 
-       * Errors:
-       * - `ProposalNotApproved`: The `proposal_id` supplied was not found in the approval queue,
-       * i.e., the proposal has not been approved. This could also mean the proposal does not
-       * exist altogether, thus there is no way it would have been approved in the first place.
+       * See [`Pallet::remove_approval`].
        **/
       removeApproval: AugmentedSubmittable<(proposalId: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
       /**
-       * Propose and approve a spend of treasury funds.
-       * 
-       * - `origin`: Must be `SpendOrigin` with the `Success` value being at least `amount`.
-       * - `amount`: The amount to be transferred from the treasury to the `beneficiary`.
-       * - `beneficiary`: The destination account for the transfer.
-       * 
-       * NOTE: For record-keeping purposes, the proposer is deemed to be equivalent to the
-       * beneficiary.
+       * See [`Pallet::spend`].
        **/
       spend: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress]>;
       /**
@@ -2123,544 +990,131 @@
     };
     unique: {
       /**
-       * Add an admin to a collection.
-       * 
-       * NFT Collection can be controlled by multiple admin addresses
-       * (some which can also be servers, for example). Admins can issue
-       * and burn NFTs, as well as add and remove other admins,
-       * but cannot change NFT or Collection ownership.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the Collection to add an admin for.
-       * * `new_admin`: Address of new admin to add.
+       * See [`Pallet::add_collection_admin`].
        **/
       addCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newAdminId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
-       * Add an address to allow list.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `address`: ID of the address to be added to the allowlist.
+       * See [`Pallet::add_to_allow_list`].
        **/
       addToAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
-       * Allow a non-permissioned address to transfer or burn an item.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Current item owner
-       * 
-       * # Arguments
-       * 
-       * * `spender`: Account to be approved to make specific transactions on non-owned tokens.
-       * * `collection_id`: ID of the collection the item belongs to.
-       * * `item_id`: ID of the item transactions on which are now approved.
-       * * `amount`: Number of pieces of the item approved for a transaction (maximum of 1 for NFTs).
-       * Set to 0 to revoke the approval.
+       * See [`Pallet::approve`].
        **/
       approve: AugmentedSubmittable<(spender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
-       * Allow a non-permissioned address to transfer or burn an item from owner's eth mirror.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Current item owner
-       * 
-       * # Arguments
-       * 
-       * * `from`: Owner's account eth mirror
-       * * `to`: Account to be approved to make specific transactions on non-owned tokens.
-       * * `collection_id`: ID of the collection the item belongs to.
-       * * `item_id`: ID of the item transactions on which are now approved.
-       * * `amount`: Number of pieces of the item approved for a transaction (maximum of 1 for NFTs).
-       * Set to 0 to revoke the approval.
+       * See [`Pallet::approve_from`].
        **/
       approveFrom: AugmentedSubmittable<(from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, to: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
-       * Destroy a token on behalf of the owner as a non-owner account.
-       * 
-       * See also: [`approve`][`Pallet::approve`].
-       * 
-       * After this method executes, one approval is removed from the total so that
-       * the approved address will not be able to transfer this item again from this owner.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Current token owner
-       * * Address approved by current item owner
-       * 
-       * # Arguments
-       * 
-       * * `from`: The owner of the burning item.
-       * * `collection_id`: ID of the collection to which the item belongs.
-       * * `item_id`: ID of item to burn.
-       * * `value`: Number of pieces to burn.
-       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.
-       * * Fungible Mode: The desired number of pieces to burn.
-       * * Re-Fungible Mode: The desired number of pieces to burn.
+       * See [`Pallet::burn_from`].
        **/
       burnFrom: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32, u128]>;
       /**
-       * Destroy an item.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Current item owner
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection to which the item belongs.
-       * * `item_id`: ID of item to burn.
-       * * `value`: Number of pieces of the item to destroy.
-       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.
-       * * Fungible Mode: The desired number of pieces to burn.
-       * * Re-Fungible Mode: The desired number of pieces to burn.
+       * See [`Pallet::burn_item`].
        **/
       burnItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u128]>;
       /**
-       * Change the owner of the collection.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `new_owner`: ID of the account that will become the owner.
+       * See [`Pallet::change_collection_owner`].
        **/
       changeCollectionOwner: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newOwner: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, AccountId32]>;
       /**
-       * Confirm own sponsorship of a collection, becoming the sponsor.
-       * 
-       * An invitation must be pending, see [`set_collection_sponsor`][`Pallet::set_collection_sponsor`].
-       * Sponsor can pay the fees of a transaction instead of the sender,
-       * but only within specified limits.
-       * 
-       * # Permissions
-       * 
-       * * Sponsor-to-be
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection with the pending sponsor.
+       * See [`Pallet::confirm_sponsorship`].
        **/
       confirmSponsorship: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Create a collection of tokens.
-       * 
-       * Each Token may have multiple properties encoded as an array of bytes
-       * of certain length. The initial owner of the collection is set
-       * to the address that signed the transaction and can be changed later.
-       * 
-       * Prefer the more advanced [`create_collection_ex`][`Pallet::create_collection_ex`] instead.
-       * 
-       * # Permissions
-       * 
-       * * Anyone - becomes the owner of the new collection.
-       * 
-       * # Arguments
-       * 
-       * * `collection_name`: Wide-character string with collection name
-       * (limit [`MAX_COLLECTION_NAME_LENGTH`]).
-       * * `collection_description`: Wide-character string with collection description
-       * (limit [`MAX_COLLECTION_DESCRIPTION_LENGTH`]).
-       * * `token_prefix`: Byte string containing the token prefix to mark a collection
-       * to which a token belongs (limit [`MAX_TOKEN_PREFIX_LENGTH`]).
-       * * `mode`: Type of items stored in the collection and type dependent data.
-       * 
-       * returns collection ID
-       * 
-       * Deprecated: `create_collection_ex` is more up-to-date and advanced, prefer it instead.
+       * See [`Pallet::create_collection`].
        **/
       createCollection: AugmentedSubmittable<(collectionName: Vec<u16> | (u16 | AnyNumber | Uint8Array)[], collectionDescription: Vec<u16> | (u16 | AnyNumber | Uint8Array)[], tokenPrefix: Bytes | string | Uint8Array, mode: UpDataStructsCollectionMode | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<u16>, Vec<u16>, Bytes, UpDataStructsCollectionMode]>;
       /**
-       * Create a collection with explicit parameters.
-       * 
-       * Prefer it to the deprecated [`create_collection`][`Pallet::create_collection`] method.
-       * 
-       * # Permissions
-       * 
-       * * Anyone - becomes the owner of the new collection.
-       * 
-       * # Arguments
-       * 
-       * * `data`: Explicit data of a collection used for its creation.
+       * See [`Pallet::create_collection_ex`].
        **/
       createCollectionEx: AugmentedSubmittable<(data: UpDataStructsCreateCollectionData | { mode?: any; access?: any; name?: any; description?: any; tokenPrefix?: any; limits?: any; permissions?: any; tokenPropertyPermissions?: any; properties?: any; adminList?: any; pendingSponsor?: any; flags?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [UpDataStructsCreateCollectionData]>;
       /**
-       * Mint an item within a collection.
-       * 
-       * A collection must exist first, see [`create_collection_ex`][`Pallet::create_collection_ex`].
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Anyone if
-       * * Allow List is enabled, and
-       * * Address is added to allow list, and
-       * * MintPermission is enabled (see [`set_collection_permissions`][`Pallet::set_collection_permissions`])
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection to which an item would belong.
-       * * `owner`: Address of the initial owner of the item.
-       * * `data`: Token data describing the item to store on chain.
+       * See [`Pallet::create_item`].
        **/
       createItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, data: UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCreateItemData]>;
       /**
-       * Create multiple items within a collection.
-       * 
-       * A collection must exist first, see [`create_collection_ex`][`Pallet::create_collection_ex`].
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Anyone if
-       * * Allow List is enabled, and
-       * * Address is added to the allow list, and
-       * * MintPermission is enabled (see [`set_collection_permissions`][`Pallet::set_collection_permissions`])
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection to which the tokens would belong.
-       * * `owner`: Address of the initial owner of the tokens.
-       * * `items_data`: Vector of data describing each item to be created.
+       * See [`Pallet::create_multiple_items`].
        **/
       createMultipleItems: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemsData: Vec<UpDataStructsCreateItemData> | (UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, Vec<UpDataStructsCreateItemData>]>;
       /**
-       * Create multiple items within a collection with explicitly specified initial parameters.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Anyone if
-       * * Allow List is enabled, and
-       * * Address is added to allow list, and
-       * * MintPermission is enabled (see [`set_collection_permissions`][`Pallet::set_collection_permissions`])
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection to which the tokens would belong.
-       * * `data`: Explicit item creation data.
+       * See [`Pallet::create_multiple_items_ex`].
        **/
       createMultipleItemsEx: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, data: UpDataStructsCreateItemExData | { NFT: any } | { Fungible: any } | { RefungibleMultipleItems: any } | { RefungibleMultipleOwners: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCreateItemExData]>;
       /**
-       * Delete specified collection properties.
-       * 
-       * # Permissions
-       * 
-       * * Collection Owner
-       * * Collection Admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `property_keys`: Vector of keys of the properties to be deleted.
-       * Keys support Latin letters, `-`, `_`, and `.` as symbols.
+       * See [`Pallet::delete_collection_properties`].
        **/
       deleteCollectionProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, propertyKeys: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, Vec<Bytes>]>;
       /**
-       * Delete specified token properties. Currently properties only work with NFTs.
-       * 
-       * # Permissions
-       * 
-       * * Depends on collection's token property permissions and specified property mutability:
-       * * Collection owner
-       * * Collection admin
-       * * Token owner
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection to which the token belongs.
-       * * `token_id`: ID of the modified token.
-       * * `property_keys`: Vector of keys of the properties to be deleted.
-       * Keys support Latin letters, `-`, `_`, and `.` as symbols.
+       * See [`Pallet::delete_token_properties`].
        **/
       deleteTokenProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, u32, Vec<Bytes>]>;
       /**
-       * Destroy a collection if no tokens exist within.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: Collection to destroy.
+       * See [`Pallet::destroy_collection`].
        **/
       destroyCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Repairs a collection if the data was somehow corrupted.
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection to repair.
+       * See [`Pallet::force_repair_collection`].
        **/
       forceRepairCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Repairs a token if the data was somehow corrupted.
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection the item belongs to.
-       * * `item_id`: ID of the item.
+       * See [`Pallet::force_repair_item`].
        **/
       forceRepairItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;
       /**
-       * Remove admin of a collection.
-       * 
-       * An admin address can remove itself. List of admins may become empty,
-       * in which case only Collection Owner will be able to add an Admin.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection to remove the admin for.
-       * * `account_id`: Address of the admin to remove.
+       * See [`Pallet::remove_collection_admin`].
        **/
       removeCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, accountId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
-       * Remove a collection's a sponsor, making everyone pay for their own transactions.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection with the sponsor to remove.
+       * See [`Pallet::remove_collection_sponsor`].
        **/
       removeCollectionSponsor: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Remove an address from allow list.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `address`: ID of the address to be removed from the allowlist.
+       * See [`Pallet::remove_from_allow_list`].
        **/
       removeFromAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
-       * Re-partition a refungible token, while owning all of its parts/pieces.
-       * 
-       * # Permissions
-       * 
-       * * Token owner (must own every part)
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection the RFT belongs to.
-       * * `token_id`: ID of the RFT.
-       * * `amount`: New number of parts/pieces into which the token shall be partitioned.
+       * See [`Pallet::repartition`].
        **/
       repartition: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u128]>;
       /**
-       * Sets or unsets the approval of a given operator.
-       * 
-       * The `operator` is allowed to transfer all tokens of the `owner` on their behalf.
-       * 
-       * # Arguments
-       * 
-       * * `owner`: Token owner
-       * * `operator`: Operator
-       * * `approve`: Should operator status be granted or revoked?
+       * See [`Pallet::set_allowance_for_all`].
        **/
       setAllowanceForAll: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, operator: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, approve: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, bool]>;
       /**
-       * Set specific limits of a collection. Empty, or None fields mean chain default.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `new_limit`: New limits of the collection. Fields that are not set (None)
-       * will not overwrite the old ones.
+       * See [`Pallet::set_collection_limits`].
        **/
       setCollectionLimits: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newLimit: UpDataStructsCollectionLimits | { accountTokenOwnershipLimit?: any; sponsoredDataSize?: any; sponsoredDataRateLimit?: any; tokenLimit?: any; sponsorTransferTimeout?: any; sponsorApproveTimeout?: any; ownerCanTransfer?: any; ownerCanDestroy?: any; transfersEnabled?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCollectionLimits]>;
       /**
-       * Set specific permissions of a collection. Empty, or None fields mean chain default.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `new_permission`: New permissions of the collection. Fields that are not set (None)
-       * will not overwrite the old ones.
+       * See [`Pallet::set_collection_permissions`].
        **/
       setCollectionPermissions: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newPermission: UpDataStructsCollectionPermissions | { access?: any; mintMode?: any; nesting?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCollectionPermissions]>;
       /**
-       * Add or change collection properties.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `properties`: Vector of key-value pairs stored as the collection's metadata.
-       * Keys support Latin letters, `-`, `_`, and `.` as symbols.
+       * See [`Pallet::set_collection_properties`].
        **/
       setCollectionProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, properties: Vec<UpDataStructsProperty> | (UpDataStructsProperty | { key?: any; value?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, Vec<UpDataStructsProperty>]>;
       /**
-       * Set (invite) a new collection sponsor.
-       * 
-       * If successful, confirmation from the sponsor-to-be will be pending.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `new_sponsor`: ID of the account of the sponsor-to-be.
+       * See [`Pallet::set_collection_sponsor`].
        **/
       setCollectionSponsor: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newSponsor: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, AccountId32]>;
       /**
-       * Add or change token properties according to collection's permissions.
-       * Currently properties only work with NFTs.
-       * 
-       * # Permissions
-       * 
-       * * Depends on collection's token property permissions and specified property mutability:
-       * * Collection owner
-       * * Collection admin
-       * * Token owner
-       * 
-       * See [`set_token_property_permissions`][`Pallet::set_token_property_permissions`].
-       * 
-       * # Arguments
-       * 
-       * * `collection_id: ID of the collection to which the token belongs.
-       * * `token_id`: ID of the modified token.
-       * * `properties`: Vector of key-value pairs stored as the token's metadata.
-       * Keys support Latin letters, `-`, `_`, and `.` as symbols.
+       * See [`Pallet::set_token_properties`].
        **/
       setTokenProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, properties: Vec<UpDataStructsProperty> | (UpDataStructsProperty | { key?: any; value?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, u32, Vec<UpDataStructsProperty>]>;
       /**
-       * Add or change token property permissions of a collection.
-       * 
-       * Without a permission for a particular key, a property with that key
-       * cannot be created in a token.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the modified collection.
-       * * `property_permissions`: Vector of permissions for property keys.
-       * Keys support Latin letters, `-`, `_`, and `.` as symbols.
+       * See [`Pallet::set_token_property_permissions`].
        **/
       setTokenPropertyPermissions: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, propertyPermissions: Vec<UpDataStructsPropertyKeyPermission> | (UpDataStructsPropertyKeyPermission | { key?: any; permission?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, Vec<UpDataStructsPropertyKeyPermission>]>;
       /**
-       * Completely allow or disallow transfers for a particular collection.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * 
-       * # Arguments
-       * 
-       * * `collection_id`: ID of the collection.
-       * * `value`: New value of the flag, are transfers allowed?
+       * See [`Pallet::set_transfers_enabled_flag`].
        **/
       setTransfersEnabledFlag: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, value: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, bool]>;
       /**
-       * Change ownership of the token.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Current token owner
-       * 
-       * # Arguments
-       * 
-       * * `recipient`: Address of token recipient.
-       * * `collection_id`: ID of the collection the item belongs to.
-       * * `item_id`: ID of the item.
-       * * Non-Fungible Mode: Required.
-       * * Fungible Mode: Ignored.
-       * * Re-Fungible Mode: Required.
-       * 
-       * * `value`: Amount to transfer.
-       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.
-       * * Fungible Mode: The desired number of pieces to transfer.
-       * * Re-Fungible Mode: The desired number of pieces to transfer.
+       * See [`Pallet::transfer`].
        **/
       transfer: AugmentedSubmittable<(recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
-       * Change ownership of an item on behalf of the owner as a non-owner account.
-       * 
-       * See the [`approve`][`Pallet::approve`] method for additional information.
-       * 
-       * After this method executes, one approval is removed from the total so that
-       * the approved address will not be able to transfer this item again from this owner.
-       * 
-       * # Permissions
-       * 
-       * * Collection owner
-       * * Collection admin
-       * * Current item owner
-       * * Address approved by current item owner
-       * 
-       * # Arguments
-       * 
-       * * `from`: Address that currently owns the token.
-       * * `recipient`: Address of the new token-owner-to-be.
-       * * `collection_id`: ID of the collection the item.
-       * * `item_id`: ID of the item to be transferred.
-       * * `value`: Amount to transfer.
-       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.
-       * * Fungible Mode: The desired number of pieces to transfer.
-       * * Re-Fungible Mode: The desired number of pieces to transfer.
+       * See [`Pallet::transfer_from`].
        **/
       transferFrom: AugmentedSubmittable<(from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
@@ -2668,10 +1122,52 @@
        **/
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
+    utility: {
+      /**
+       * See [`Pallet::as_derivative`].
+       **/
+      asDerivative: AugmentedSubmittable<(index: u16 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16, Call]>;
+      /**
+       * See [`Pallet::batch`].
+       **/
+      batch: AugmentedSubmittable<(calls: Vec<Call> | (Call | IMethod | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Call>]>;
+      /**
+       * See [`Pallet::batch_all`].
+       **/
+      batchAll: AugmentedSubmittable<(calls: Vec<Call> | (Call | IMethod | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Call>]>;
+      /**
+       * See [`Pallet::dispatch_as`].
+       **/
+      dispatchAs: AugmentedSubmittable<(asOrigin: OpalRuntimeOriginCaller | { system: any } | { Void: any } | { Council: any } | { TechnicalCommittee: any } | { PolkadotXcm: any } | { CumulusXcm: any } | { Origins: any } | { Ethereum: any } | string | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [OpalRuntimeOriginCaller, Call]>;
+      /**
+       * See [`Pallet::force_batch`].
+       **/
+      forceBatch: AugmentedSubmittable<(calls: Vec<Call> | (Call | IMethod | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Call>]>;
+      /**
+       * See [`Pallet::with_weight`].
+       **/
+      withWeight: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array, weight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, SpWeightsWeightV2Weight]>;
+      /**
+       * Generic tx
+       **/
+      [key: string]: SubmittableExtrinsicFunction<ApiType>;
+    };
     vesting: {
+      /**
+       * See [`Pallet::claim`].
+       **/
       claim: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
+      /**
+       * See [`Pallet::claim_for`].
+       **/
       claimFor: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;
+      /**
+       * See [`Pallet::update_vesting_schedules`].
+       **/
       updateVestingSchedules: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, vestingSchedules: Vec<OrmlVestingVestingSchedule> | (OrmlVestingVestingSchedule | { start?: any; period?: any; periodCount?: any; perPeriod?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [MultiAddress, Vec<OrmlVestingVestingSchedule>]>;
+      /**
+       * See [`Pallet::vested_transfer`].
+       **/
       vestedTransfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, schedule: OrmlVestingVestingSchedule | { start?: any; period?: any; periodCount?: any; perPeriod?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, OrmlVestingVestingSchedule]>;
       /**
        * Generic tx
@@ -2680,80 +1176,39 @@
     };
     xcmpQueue: {
       /**
-       * Resumes all XCM executions for the XCMP queue.
-       * 
-       * Note that this function doesn't change the status of the in/out bound channels.
-       * 
-       * - `origin`: Must pass `ControllerOrigin`.
+       * See [`Pallet::resume_xcm_execution`].
        **/
       resumeXcmExecution: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Services a single overweight XCM.
-       * 
-       * - `origin`: Must pass `ExecuteOverweightOrigin`.
-       * - `index`: The index of the overweight XCM to service
-       * - `weight_limit`: The amount of weight that XCM execution may take.
-       * 
-       * Errors:
-       * - `BadOverweightIndex`: XCM under `index` is not found in the `Overweight` storage map.
-       * - `BadXcm`: XCM under `index` cannot be properly decoded into a valid XCM format.
-       * - `WeightOverLimit`: XCM execution may use greater `weight_limit`.
-       * 
-       * Events:
-       * - `OverweightServiced`: On success.
+       * See [`Pallet::service_overweight`].
        **/
       serviceOverweight: AugmentedSubmittable<(index: u64 | AnyNumber | Uint8Array, weightLimit: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64, SpWeightsWeightV2Weight]>;
       /**
-       * Suspends all XCM executions for the XCMP queue, regardless of the sender's origin.
-       * 
-       * - `origin`: Must pass `ControllerOrigin`.
+       * See [`Pallet::suspend_xcm_execution`].
        **/
       suspendXcmExecution: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
       /**
-       * Overwrites the number of pages of messages which must be in the queue after which we drop any further
-       * messages from the channel.
-       * 
-       * - `origin`: Must pass `Root`.
-       * - `new`: Desired value for `QueueConfigData.drop_threshold`
+       * See [`Pallet::update_drop_threshold`].
        **/
       updateDropThreshold: AugmentedSubmittable<(updated: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Overwrites the number of pages of messages which the queue must be reduced to before it signals that
-       * message sending may recommence after it has been suspended.
-       * 
-       * - `origin`: Must pass `Root`.
-       * - `new`: Desired value for `QueueConfigData.resume_threshold`
+       * See [`Pallet::update_resume_threshold`].
        **/
       updateResumeThreshold: AugmentedSubmittable<(updated: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Overwrites the number of pages of messages which must be in the queue for the other side to be told to
-       * suspend their sending.
-       * 
-       * - `origin`: Must pass `Root`.
-       * - `new`: Desired value for `QueueConfigData.suspend_value`
+       * See [`Pallet::update_suspend_threshold`].
        **/
       updateSuspendThreshold: AugmentedSubmittable<(updated: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
       /**
-       * Overwrites the amount of remaining weight under which we stop processing messages.
-       * 
-       * - `origin`: Must pass `Root`.
-       * - `new`: Desired value for `QueueConfigData.threshold_weight`
+       * See [`Pallet::update_threshold_weight`].
        **/
       updateThresholdWeight: AugmentedSubmittable<(updated: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [SpWeightsWeightV2Weight]>;
       /**
-       * Overwrites the speed to which the available weight approaches the maximum weight.
-       * A lower number results in a faster progression. A value of 1 makes the entire weight available initially.
-       * 
-       * - `origin`: Must pass `Root`.
-       * - `new`: Desired value for `QueueConfigData.weight_restrict_decay`.
+       * See [`Pallet::update_weight_restrict_decay`].
        **/
       updateWeightRestrictDecay: AugmentedSubmittable<(updated: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [SpWeightsWeightV2Weight]>;
       /**
-       * Overwrite the maximum amount of weight any individual message may consume.
-       * Messages above this weight go into the overweight queue and may only be serviced explicitly.
-       * 
-       * - `origin`: Must pass `Root`.
-       * - `new`: Desired value for `QueueConfigData.xcmp_max_individual_weight`.
+       * See [`Pallet::update_xcmp_max_individual_weight`].
        **/
       updateXcmpMaxIndividualWeight: AugmentedSubmittable<(updated: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [SpWeightsWeightV2Weight]>;
       /**
@@ -2763,119 +1218,29 @@
     };
     xTokens: {
       /**
-       * Transfer native currencies.
-       * 
-       * `dest_weight_limit` is the weight for XCM execution on the dest
-       * chain, and it would be charged from the transferred assets. If set
-       * below requirements, the execution may fail and assets wouldn't be
-       * received.
-       * 
-       * It's a no-op if any error on local XCM execution or message sending.
-       * Note sending assets out per se doesn't guarantee they would be
-       * received. Receiving depends on if the XCM message could be delivered
-       * by the network, and if the receiving chain would handle
-       * messages correctly.
+       * See [`Pallet::transfer`].
        **/
-      transfer: AugmentedSubmittable<(currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletForeignAssetsAssetIds, u128, XcmVersionedMultiLocation, XcmV3WeightLimit]>;
+      transfer: AugmentedSubmittable<(currencyId: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array, dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletForeignAssetsAssetId, u128, StagingXcmVersionedMultiLocation, StagingXcmV3WeightLimit]>;
       /**
-       * Transfer `MultiAsset`.
-       * 
-       * `dest_weight_limit` is the weight for XCM execution on the dest
-       * chain, and it would be charged from the transferred assets. If set
-       * below requirements, the execution may fail and assets wouldn't be
-       * received.
-       * 
-       * It's a no-op if any error on local XCM execution or message sending.
-       * Note sending assets out per se doesn't guarantee they would be
-       * received. Receiving depends on if the XCM message could be delivered
-       * by the network, and if the receiving chain would handle
-       * messages correctly.
+       * See [`Pallet::transfer_multiasset`].
        **/
-      transferMultiasset: AugmentedSubmittable<(asset: XcmVersionedMultiAsset | { V2: any } | { V3: any } | string | Uint8Array, dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiAsset, XcmVersionedMultiLocation, XcmV3WeightLimit]>;
+      transferMultiasset: AugmentedSubmittable<(asset: StagingXcmVersionedMultiAsset | { V2: any } | { V3: any } | string | Uint8Array, dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiAsset, StagingXcmVersionedMultiLocation, StagingXcmV3WeightLimit]>;
       /**
-       * Transfer several `MultiAsset` specifying the item to be used as fee
-       * 
-       * `dest_weight_limit` is the weight for XCM execution on the dest
-       * chain, and it would be charged from the transferred assets. If set
-       * below requirements, the execution may fail and assets wouldn't be
-       * received.
-       * 
-       * `fee_item` is index of the MultiAssets that we want to use for
-       * payment
-       * 
-       * It's a no-op if any error on local XCM execution or message sending.
-       * Note sending assets out per se doesn't guarantee they would be
-       * received. Receiving depends on if the XCM message could be delivered
-       * by the network, and if the receiving chain would handle
-       * messages correctly.
+       * See [`Pallet::transfer_multiassets`].
        **/
-      transferMultiassets: AugmentedSubmittable<(assets: XcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeItem: u32 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiAssets, u32, XcmVersionedMultiLocation, XcmV3WeightLimit]>;
+      transferMultiassets: AugmentedSubmittable<(assets: StagingXcmVersionedMultiAssets | { V2: any } | { V3: any } | string | Uint8Array, feeItem: u32 | AnyNumber | Uint8Array, dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiAssets, u32, StagingXcmVersionedMultiLocation, StagingXcmV3WeightLimit]>;
       /**
-       * Transfer `MultiAsset` specifying the fee and amount as separate.
-       * 
-       * `dest_weight_limit` is the weight for XCM execution on the dest
-       * chain, and it would be charged from the transferred assets. If set
-       * below requirements, the execution may fail and assets wouldn't be
-       * received.
-       * 
-       * `fee` is the multiasset to be spent to pay for execution in
-       * destination chain. Both fee and amount will be subtracted form the
-       * callers balance For now we only accept fee and asset having the same
-       * `MultiLocation` id.
-       * 
-       * If `fee` is not high enough to cover for the execution costs in the
-       * destination chain, then the assets will be trapped in the
-       * destination chain
-       * 
-       * It's a no-op if any error on local XCM execution or message sending.
-       * Note sending assets out per se doesn't guarantee they would be
-       * received. Receiving depends on if the XCM message could be delivered
-       * by the network, and if the receiving chain would handle
-       * messages correctly.
+       * See [`Pallet::transfer_multiasset_with_fee`].
        **/
-      transferMultiassetWithFee: AugmentedSubmittable<(asset: XcmVersionedMultiAsset | { V2: any } | { V3: any } | string | Uint8Array, fee: XcmVersionedMultiAsset | { V2: any } | { V3: any } | string | Uint8Array, dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiAsset, XcmVersionedMultiAsset, XcmVersionedMultiLocation, XcmV3WeightLimit]>;
+      transferMultiassetWithFee: AugmentedSubmittable<(asset: StagingXcmVersionedMultiAsset | { V2: any } | { V3: any } | string | Uint8Array, fee: StagingXcmVersionedMultiAsset | { V2: any } | { V3: any } | string | Uint8Array, dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [StagingXcmVersionedMultiAsset, StagingXcmVersionedMultiAsset, StagingXcmVersionedMultiLocation, StagingXcmV3WeightLimit]>;
       /**
-       * Transfer several currencies specifying the item to be used as fee
-       * 
-       * `dest_weight_limit` is the weight for XCM execution on the dest
-       * chain, and it would be charged from the transferred assets. If set
-       * below requirements, the execution may fail and assets wouldn't be
-       * received.
-       * 
-       * `fee_item` is index of the currencies tuple that we want to use for
-       * payment
-       * 
-       * It's a no-op if any error on local XCM execution or message sending.
-       * Note sending assets out per se doesn't guarantee they would be
-       * received. Receiving depends on if the XCM message could be delivered
-       * by the network, and if the receiving chain would handle
-       * messages correctly.
+       * See [`Pallet::transfer_multicurrencies`].
        **/
-      transferMulticurrencies: AugmentedSubmittable<(currencies: Vec<ITuple<[PalletForeignAssetsAssetIds, u128]>> | ([PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, u128 | AnyNumber | Uint8Array])[], feeItem: u32 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[PalletForeignAssetsAssetIds, u128]>>, u32, XcmVersionedMultiLocation, XcmV3WeightLimit]>;
+      transferMulticurrencies: AugmentedSubmittable<(currencies: Vec<ITuple<[PalletForeignAssetsAssetId, u128]>> | ([PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, u128 | AnyNumber | Uint8Array])[], feeItem: u32 | AnyNumber | Uint8Array, dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[PalletForeignAssetsAssetId, u128]>>, u32, StagingXcmVersionedMultiLocation, StagingXcmV3WeightLimit]>;
       /**
-       * Transfer native currencies specifying the fee and amount as
-       * separate.
-       * 
-       * `dest_weight_limit` is the weight for XCM execution on the dest
-       * chain, and it would be charged from the transferred assets. If set
-       * below requirements, the execution may fail and assets wouldn't be
-       * received.
-       * 
-       * `fee` is the amount to be spent to pay for execution in destination
-       * chain. Both fee and amount will be subtracted form the callers
-       * balance.
-       * 
-       * If `fee` is not high enough to cover for the execution costs in the
-       * destination chain, then the assets will be trapped in the
-       * destination chain
-       * 
-       * It's a no-op if any error on local XCM execution or message sending.
-       * Note sending assets out per se doesn't guarantee they would be
-       * received. Receiving depends on if the XCM message could be delivered
-       * by the network, and if the receiving chain would handle
-       * messages correctly.
+       * See [`Pallet::transfer_with_fee`].
        **/
-      transferWithFee: AugmentedSubmittable<(currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array, fee: u128 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: XcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletForeignAssetsAssetIds, u128, u128, XcmVersionedMultiLocation, XcmV3WeightLimit]>;
+      transferWithFee: AugmentedSubmittable<(currencyId: PalletForeignAssetsAssetId | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array, fee: u128 | AnyNumber | Uint8Array, dest: StagingXcmVersionedMultiLocation | { V2: any } | { V3: any } | string | Uint8Array, destWeightLimit: StagingXcmV3WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletForeignAssetsAssetId, u128, u128, StagingXcmVersionedMultiLocation, StagingXcmV3WeightLimit]>;
       /**
        * Generic tx
        **/
modifiedtests/src/interfaces/augment-types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-types.ts
+++ b/tests/src/interfaces/augment-types.ts
@@ -5,7 +5,7 @@
 // this is required to allow for ambient/previous definitions
 import '@polkadot/types/types/registry';
 
-import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OpalRuntimeRuntimeCommonSessionKeys, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesIdAmount, PalletBalancesReasons, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCollectiveCall, PalletCollectiveError, PalletCollectiveEvent, PalletCollectiveRawOrigin, PalletCollectiveVotes, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletDemocracyCall, PalletDemocracyConviction, PalletDemocracyDelegations, PalletDemocracyError, PalletDemocracyEvent, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyTally, PalletDemocracyVoteAccountVote, PalletDemocracyVotePriorLock, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCodeMetadata, PalletEvmCoderSubstrateError, PalletEvmContractHelpersCall, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletGovOriginsOrigin, PalletIdentityBitFlags, PalletIdentityCall, PalletIdentityError, PalletIdentityEvent, PalletIdentityIdentityField, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletMembershipCall, PalletMembershipError, PalletMembershipEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletRankedCollectiveCall, PalletRankedCollectiveError, PalletRankedCollectiveEvent, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletReferendaCall, PalletReferendaCurve, PalletReferendaDecidingStatus, PalletReferendaDeposit, PalletReferendaError, PalletReferendaEvent, PalletReferendaReferendumInfo, PalletReferendaReferendumStatus, PalletReferendaTrackInfo, PalletRefungibleError, PalletSchedulerCall, PalletSchedulerError, PalletSchedulerEvent, PalletSchedulerScheduled, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletStateTrieMigrationCall, PalletStateTrieMigrationError, PalletStateTrieMigrationEvent, PalletStateTrieMigrationMigrationCompute, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PalletXcmQueryStatus, PalletXcmRemoteLockedFungibleRecord, PalletXcmVersionMigrationStage, ParachainInfoCall, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV4AbridgedHostConfiguration, PolkadotPrimitivesV4AbridgedHrmpChannel, PolkadotPrimitivesV4PersistedValidationData, PolkadotPrimitivesV4UpgradeRestriction, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue, XcmDoubleEncoded, XcmV2BodyId, XcmV2BodyPart, XcmV2Instruction, XcmV2Junction, XcmV2MultiAsset, XcmV2MultiLocation, XcmV2MultiassetAssetId, XcmV2MultiassetAssetInstance, XcmV2MultiassetFungibility, XcmV2MultiassetMultiAssetFilter, XcmV2MultiassetMultiAssets, XcmV2MultiassetWildFungibility, XcmV2MultiassetWildMultiAsset, XcmV2MultilocationJunctions, XcmV2NetworkId, XcmV2OriginKind, XcmV2Response, XcmV2TraitsError, XcmV2WeightLimit, XcmV2Xcm, XcmV3Instruction, XcmV3Junction, XcmV3JunctionBodyId, XcmV3JunctionBodyPart, XcmV3JunctionNetworkId, XcmV3Junctions, XcmV3MaybeErrorCode, XcmV3MultiAsset, XcmV3MultiLocation, XcmV3MultiassetAssetId, XcmV3MultiassetAssetInstance, XcmV3MultiassetFungibility, XcmV3MultiassetMultiAssetFilter, XcmV3MultiassetMultiAssets, XcmV3MultiassetWildFungibility, XcmV3MultiassetWildMultiAsset, XcmV3PalletInfo, XcmV3QueryResponseInfo, XcmV3Response, XcmV3TraitsError, XcmV3TraitsOutcome, XcmV3WeightLimit, XcmV3Xcm, XcmVersionedAssetId, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedResponse, XcmVersionedXcm } from './default';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity, CumulusPalletParachainSystemUnincludedSegmentAncestor, CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate, CumulusPalletParachainSystemUnincludedSegmentSegmentTracker, CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OpalRuntimeRuntimeCommonSessionKeys, OpalRuntimeRuntimeHoldReason, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesIdAmount, PalletBalancesReasons, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCollatorSelectionHoldReason, PalletCollectiveCall, PalletCollectiveError, PalletCollectiveEvent, PalletCollectiveRawOrigin, PalletCollectiveVotes, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletDemocracyCall, PalletDemocracyConviction, PalletDemocracyDelegations, PalletDemocracyError, PalletDemocracyEvent, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyTally, PalletDemocracyVoteAccountVote, PalletDemocracyVotePriorLock, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCodeMetadata, PalletEvmCoderSubstrateError, PalletEvmContractHelpersCall, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetId, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletGovOriginsOrigin, PalletIdentityBitFlags, PalletIdentityCall, PalletIdentityError, PalletIdentityEvent, PalletIdentityIdentityField, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletMembershipCall, PalletMembershipError, PalletMembershipEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletRankedCollectiveCall, PalletRankedCollectiveError, PalletRankedCollectiveEvent, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletReferendaCall, PalletReferendaCurve, PalletReferendaDecidingStatus, PalletReferendaDeposit, PalletReferendaError, PalletReferendaEvent, PalletReferendaReferendumInfo, PalletReferendaReferendumStatus, PalletReferendaTrackInfo, PalletRefungibleError, PalletSchedulerCall, PalletSchedulerError, PalletSchedulerEvent, PalletSchedulerScheduled, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletStateTrieMigrationCall, PalletStateTrieMigrationError, PalletStateTrieMigrationEvent, PalletStateTrieMigrationMigrationCompute, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUtilityCall, PalletUtilityError, PalletUtilityEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PalletXcmQueryStatus, PalletXcmRemoteLockedFungibleRecord, PalletXcmVersionMigrationStage, ParachainInfoCall, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat, PolkadotPrimitivesV5AbridgedHostConfiguration, PolkadotPrimitivesV5AbridgedHrmpChannel, PolkadotPrimitivesV5PersistedValidationData, PolkadotPrimitivesV5UpgradeGoAhead, PolkadotPrimitivesV5UpgradeRestriction, PolkadotPrimitivesVstagingAsyncBackingParams, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, StagingXcmDoubleEncoded, StagingXcmV2BodyId, StagingXcmV2BodyPart, StagingXcmV2Instruction, StagingXcmV2Junction, StagingXcmV2MultiAsset, StagingXcmV2MultiLocation, StagingXcmV2MultiassetAssetId, StagingXcmV2MultiassetAssetInstance, StagingXcmV2MultiassetFungibility, StagingXcmV2MultiassetMultiAssetFilter, StagingXcmV2MultiassetMultiAssets, StagingXcmV2MultiassetWildFungibility, StagingXcmV2MultiassetWildMultiAsset, StagingXcmV2MultilocationJunctions, StagingXcmV2NetworkId, StagingXcmV2OriginKind, StagingXcmV2Response, StagingXcmV2TraitsError, StagingXcmV2WeightLimit, StagingXcmV2Xcm, StagingXcmV3Instruction, StagingXcmV3Junction, StagingXcmV3JunctionBodyId, StagingXcmV3JunctionBodyPart, StagingXcmV3JunctionNetworkId, StagingXcmV3Junctions, StagingXcmV3MaybeErrorCode, StagingXcmV3MultiAsset, StagingXcmV3MultiLocation, StagingXcmV3MultiassetAssetId, StagingXcmV3MultiassetAssetInstance, StagingXcmV3MultiassetFungibility, StagingXcmV3MultiassetMultiAssetFilter, StagingXcmV3MultiassetMultiAssets, StagingXcmV3MultiassetWildFungibility, StagingXcmV3MultiassetWildMultiAsset, StagingXcmV3PalletInfo, StagingXcmV3QueryResponseInfo, StagingXcmV3Response, StagingXcmV3TraitsError, StagingXcmV3TraitsOutcome, StagingXcmV3WeightLimit, StagingXcmV3Xcm, StagingXcmVersionedAssetId, StagingXcmVersionedMultiAsset, StagingXcmVersionedMultiAssets, StagingXcmVersionedMultiLocation, StagingXcmVersionedResponse, StagingXcmVersionedXcm, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue } from './default';
 import type { Data, StorageKey } from '@polkadot/types';
 import type { BitVec, Bool, Bytes, F32, F64, I128, I16, I256, I32, I64, I8, ISize, Json, Null, OptionBool, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, f32, f64, i128, i16, i256, i32, i64, i8, isize, u128, u16, u256, u32, u64, u8, usize } from '@polkadot/types-codec';
 import type { AssetApproval, AssetApprovalKey, AssetBalance, AssetDestroyWitness, AssetDetails, AssetMetadata, TAssetBalance, TAssetDepositBalance } from '@polkadot/types/interfaces/assets';
@@ -33,7 +33,7 @@
 import type { ApprovalFlag, DefunctVoter, Renouncing, SetIndex, Vote, VoteIndex, VoteThreshold, VoterInfo } from '@polkadot/types/interfaces/elections';
 import type { CreatedBlock, ImportedAux } from '@polkadot/types/interfaces/engine';
 import type { BlockV0, BlockV1, BlockV2, EIP1559Transaction, EIP2930Transaction, EthAccessList, EthAccessListItem, EthAccount, EthAddress, EthBlock, EthBloom, EthCallRequest, EthFeeHistory, EthFilter, EthFilterAddress, EthFilterChanges, EthFilterTopic, EthFilterTopicEntry, EthFilterTopicInner, EthHeader, EthLog, EthReceipt, EthReceiptV0, EthReceiptV3, EthRichBlock, EthRichHeader, EthStorageProof, EthSubKind, EthSubParams, EthSubResult, EthSyncInfo, EthSyncStatus, EthTransaction, EthTransactionAction, EthTransactionCondition, EthTransactionRequest, EthTransactionSignature, EthTransactionStatus, EthWork, EthereumAccountId, EthereumAddress, EthereumLookupSource, EthereumSignature, LegacyTransaction, TransactionV0, TransactionV1, TransactionV2 } from '@polkadot/types/interfaces/eth';
-import type { EvmAccount, EvmCallInfo, EvmCreateInfo, EvmLog, EvmVicinity, ExitError, ExitFatal, ExitReason, ExitRevert, ExitSucceed } from '@polkadot/types/interfaces/evm';
+import type { EvmAccount, EvmCallInfo, EvmCallInfoV2, EvmCreateInfo, EvmCreateInfoV2, EvmLog, EvmVicinity, EvmWeightInfo, ExitError, ExitFatal, ExitReason, ExitRevert, ExitSucceed } from '@polkadot/types/interfaces/evm';
 import type { AnySignature, EcdsaSignature, Ed25519Signature, Era, Extrinsic, ExtrinsicEra, ExtrinsicPayload, ExtrinsicPayloadUnknown, ExtrinsicPayloadV4, ExtrinsicSignature, ExtrinsicSignatureV4, ExtrinsicUnknown, ExtrinsicV4, ImmortalEra, MortalEra, MultiSignature, Signature, SignerPayload, Sr25519Signature } from '@polkadot/types/interfaces/extrinsics';
 import type { FungiblesAccessError } from '@polkadot/types/interfaces/fungibles';
 import type { AssetOptions, Owner, PermissionLatest, PermissionVersions, PermissionsV1 } from '@polkadot/types/interfaces/genericAsset';
@@ -42,13 +42,13 @@
 import type { IdentityFields, IdentityInfo, IdentityInfoAdditional, IdentityInfoTo198, IdentityJudgement, RegistrarIndex, RegistrarInfo, Registration, RegistrationJudgement, RegistrationTo198 } from '@polkadot/types/interfaces/identity';
 import type { AuthIndex, AuthoritySignature, Heartbeat, HeartbeatTo244, OpaqueMultiaddr, OpaqueNetworkState, OpaquePeerId } from '@polkadot/types/interfaces/imOnline';
 import type { CallIndex, LotteryConfig } from '@polkadot/types/interfaces/lottery';
-import type { ErrorMetadataLatest, ErrorMetadataV10, ErrorMetadataV11, ErrorMetadataV12, ErrorMetadataV13, ErrorMetadataV14, ErrorMetadataV9, EventMetadataLatest, EventMetadataV10, EventMetadataV11, EventMetadataV12, EventMetadataV13, EventMetadataV14, EventMetadataV9, ExtrinsicMetadataLatest, ExtrinsicMetadataV11, ExtrinsicMetadataV12, ExtrinsicMetadataV13, ExtrinsicMetadataV14, FunctionArgumentMetadataLatest, FunctionArgumentMetadataV10, FunctionArgumentMetadataV11, FunctionArgumentMetadataV12, FunctionArgumentMetadataV13, FunctionArgumentMetadataV14, FunctionArgumentMetadataV9, FunctionMetadataLatest, FunctionMetadataV10, FunctionMetadataV11, FunctionMetadataV12, FunctionMetadataV13, FunctionMetadataV14, FunctionMetadataV9, MetadataAll, MetadataLatest, MetadataV10, MetadataV11, MetadataV12, MetadataV13, MetadataV14, MetadataV15, MetadataV9, ModuleConstantMetadataV10, ModuleConstantMetadataV11, ModuleConstantMetadataV12, ModuleConstantMetadataV13, ModuleConstantMetadataV9, ModuleMetadataV10, ModuleMetadataV11, ModuleMetadataV12, ModuleMetadataV13, ModuleMetadataV9, OpaqueMetadata, PalletCallMetadataLatest, PalletCallMetadataV14, PalletConstantMetadataLatest, PalletConstantMetadataV14, PalletErrorMetadataLatest, PalletErrorMetadataV14, PalletEventMetadataLatest, PalletEventMetadataV14, PalletMetadataLatest, PalletMetadataV14, PalletMetadataV15, PalletStorageMetadataLatest, PalletStorageMetadataV14, PortableType, PortableTypeV14, RuntimeApiMetadataLatest, RuntimeApiMetadataV15, RuntimeApiMethodMetadataV15, RuntimeApiMethodParamMetadataV15, SignedExtensionMetadataLatest, SignedExtensionMetadataV14, StorageEntryMetadataLatest, StorageEntryMetadataV10, StorageEntryMetadataV11, StorageEntryMetadataV12, StorageEntryMetadataV13, StorageEntryMetadataV14, StorageEntryMetadataV9, StorageEntryModifierLatest, StorageEntryModifierV10, StorageEntryModifierV11, StorageEntryModifierV12, StorageEntryModifierV13, StorageEntryModifierV14, StorageEntryModifierV9, StorageEntryTypeLatest, StorageEntryTypeV10, StorageEntryTypeV11, StorageEntryTypeV12, StorageEntryTypeV13, StorageEntryTypeV14, StorageEntryTypeV9, StorageHasher, StorageHasherV10, StorageHasherV11, StorageHasherV12, StorageHasherV13, StorageHasherV14, StorageHasherV9, StorageMetadataV10, StorageMetadataV11, StorageMetadataV12, StorageMetadataV13, StorageMetadataV9 } from '@polkadot/types/interfaces/metadata';
+import type { CustomMetadata15, CustomValueMetadata15, ErrorMetadataLatest, ErrorMetadataV10, ErrorMetadataV11, ErrorMetadataV12, ErrorMetadataV13, ErrorMetadataV14, ErrorMetadataV9, EventMetadataLatest, EventMetadataV10, EventMetadataV11, EventMetadataV12, EventMetadataV13, EventMetadataV14, EventMetadataV9, ExtrinsicMetadataLatest, ExtrinsicMetadataV11, ExtrinsicMetadataV12, ExtrinsicMetadataV13, ExtrinsicMetadataV14, ExtrinsicMetadataV15, FunctionArgumentMetadataLatest, FunctionArgumentMetadataV10, FunctionArgumentMetadataV11, FunctionArgumentMetadataV12, FunctionArgumentMetadataV13, FunctionArgumentMetadataV14, FunctionArgumentMetadataV9, FunctionMetadataLatest, FunctionMetadataV10, FunctionMetadataV11, FunctionMetadataV12, FunctionMetadataV13, FunctionMetadataV14, FunctionMetadataV9, MetadataAll, MetadataLatest, MetadataV10, MetadataV11, MetadataV12, MetadataV13, MetadataV14, MetadataV15, MetadataV9, ModuleConstantMetadataV10, ModuleConstantMetadataV11, ModuleConstantMetadataV12, ModuleConstantMetadataV13, ModuleConstantMetadataV9, ModuleMetadataV10, ModuleMetadataV11, ModuleMetadataV12, ModuleMetadataV13, ModuleMetadataV9, OpaqueMetadata, OuterEnums15, PalletCallMetadataLatest, PalletCallMetadataV14, PalletConstantMetadataLatest, PalletConstantMetadataV14, PalletErrorMetadataLatest, PalletErrorMetadataV14, PalletEventMetadataLatest, PalletEventMetadataV14, PalletMetadataLatest, PalletMetadataV14, PalletMetadataV15, PalletStorageMetadataLatest, PalletStorageMetadataV14, PortableType, PortableTypeV14, RuntimeApiMetadataLatest, RuntimeApiMetadataV15, RuntimeApiMethodMetadataV15, RuntimeApiMethodParamMetadataV15, SignedExtensionMetadataLatest, SignedExtensionMetadataV14, StorageEntryMetadataLatest, StorageEntryMetadataV10, StorageEntryMetadataV11, StorageEntryMetadataV12, StorageEntryMetadataV13, StorageEntryMetadataV14, StorageEntryMetadataV9, StorageEntryModifierLatest, StorageEntryModifierV10, StorageEntryModifierV11, StorageEntryModifierV12, StorageEntryModifierV13, StorageEntryModifierV14, StorageEntryModifierV9, StorageEntryTypeLatest, StorageEntryTypeV10, StorageEntryTypeV11, StorageEntryTypeV12, StorageEntryTypeV13, StorageEntryTypeV14, StorageEntryTypeV9, StorageHasher, StorageHasherV10, StorageHasherV11, StorageHasherV12, StorageHasherV13, StorageHasherV14, StorageHasherV9, StorageMetadataV10, StorageMetadataV11, StorageMetadataV12, StorageMetadataV13, StorageMetadataV9 } from '@polkadot/types/interfaces/metadata';
 import type { MmrBatchProof, MmrEncodableOpaqueLeaf, MmrError, MmrHash, MmrLeafBatchProof, MmrLeafIndex, MmrLeafProof, MmrNodeIndex, MmrProof } from '@polkadot/types/interfaces/mmr';
 import type { NftCollectionId, NftItemId } from '@polkadot/types/interfaces/nfts';
 import type { NpApiError, NpPoolId } from '@polkadot/types/interfaces/nompools';
 import type { StorageKind } from '@polkadot/types/interfaces/offchain';
 import type { DeferredOffenceOf, Kind, OffenceDetails, Offender, OpaqueTimeSlot, ReportIdOf, Reporter } from '@polkadot/types/interfaces/offences';
-import type { AbridgedCandidateReceipt, AbridgedHostConfiguration, AbridgedHrmpChannel, AssignmentId, AssignmentKind, AttestedCandidate, AuctionIndex, AuthorityDiscoveryId, AvailabilityBitfield, AvailabilityBitfieldRecord, BackedCandidate, Bidder, BufferedSessionChange, CandidateCommitments, CandidateDescriptor, CandidateEvent, CandidateHash, CandidateInfo, CandidatePendingAvailability, CandidateReceipt, CollatorId, CollatorSignature, CommittedCandidateReceipt, CoreAssignment, CoreIndex, CoreOccupied, CoreState, DisputeLocation, DisputeResult, DisputeState, DisputeStatement, DisputeStatementSet, DoubleVoteReport, DownwardMessage, ExecutorParam, ExecutorParams, ExecutorParamsHash, ExplicitDisputeStatement, GlobalValidationData, GlobalValidationSchedule, GroupIndex, GroupRotationInfo, HeadData, HostConfiguration, HrmpChannel, HrmpChannelId, HrmpOpenChannelRequest, InboundDownwardMessage, InboundHrmpMessage, InboundHrmpMessages, IncomingParachain, IncomingParachainDeploy, IncomingParachainFixed, InvalidDisputeStatementKind, LeasePeriod, LeasePeriodOf, LocalValidationData, MessageIngestionType, MessageQueueChain, MessagingStateSnapshot, MessagingStateSnapshotEgressEntry, MultiDisputeStatementSet, NewBidder, OccupiedCore, OccupiedCoreAssumption, OldV1SessionInfo, OutboundHrmpMessage, ParaGenesisArgs, ParaId, ParaInfo, ParaLifecycle, ParaPastCodeMeta, ParaScheduling, ParaValidatorIndex, ParachainDispatchOrigin, ParachainInherentData, ParachainProposal, ParachainsInherentData, ParathreadClaim, ParathreadClaimQueue, ParathreadEntry, PersistedValidationData, PvfCheckStatement, PvfExecTimeoutKind, PvfPrepTimeoutKind, QueuedParathread, RegisteredParachainInfo, RelayBlockNumber, RelayChainBlockNumber, RelayChainHash, RelayHash, Remark, ReplacementTimes, Retriable, ScheduledCore, Scheduling, ScrapedOnChainVotes, ServiceQuality, SessionInfo, SessionInfoValidatorGroup, SignedAvailabilityBitfield, SignedAvailabilityBitfields, SigningContext, SlotRange, SlotRange10, Statement, SubId, SystemInherentData, TransientValidationData, UpgradeGoAhead, UpgradeRestriction, UpwardMessage, ValidDisputeStatementKind, ValidationCode, ValidationCodeHash, ValidationData, ValidationDataType, ValidationFunctionParams, ValidatorSignature, ValidityAttestation, VecInboundHrmpMessage, WinnersData, WinnersData10, WinnersDataTuple, WinnersDataTuple10, WinningData, WinningData10, WinningDataEntry } from '@polkadot/types/interfaces/parachains';
+import type { AbridgedCandidateReceipt, AbridgedHostConfiguration, AbridgedHrmpChannel, AssignmentId, AssignmentKind, AttestedCandidate, AuctionIndex, AuthorityDiscoveryId, AvailabilityBitfield, AvailabilityBitfieldRecord, BackedCandidate, Bidder, BufferedSessionChange, CandidateCommitments, CandidateDescriptor, CandidateEvent, CandidateHash, CandidateInfo, CandidatePendingAvailability, CandidateReceipt, CollatorId, CollatorSignature, CommittedCandidateReceipt, CoreAssignment, CoreIndex, CoreOccupied, CoreState, DisputeLocation, DisputeProof, DisputeResult, DisputeState, DisputeStatement, DisputeStatementSet, DisputesTimeSlot, DoubleVoteReport, DownwardMessage, ExecutorParam, ExecutorParams, ExecutorParamsHash, ExplicitDisputeStatement, GlobalValidationData, GlobalValidationSchedule, GroupIndex, GroupRotationInfo, HeadData, HostConfiguration, HrmpChannel, HrmpChannelId, HrmpOpenChannelRequest, InboundDownwardMessage, InboundHrmpMessage, InboundHrmpMessages, IncomingParachain, IncomingParachainDeploy, IncomingParachainFixed, InvalidDisputeStatementKind, LeasePeriod, LeasePeriodOf, LocalValidationData, MessageIngestionType, MessageQueueChain, MessagingStateSnapshot, MessagingStateSnapshotEgressEntry, MultiDisputeStatementSet, NewBidder, OccupiedCore, OccupiedCoreAssumption, OldV1SessionInfo, OutboundHrmpMessage, ParaGenesisArgs, ParaId, ParaInfo, ParaLifecycle, ParaPastCodeMeta, ParaScheduling, ParaValidatorIndex, ParachainDispatchOrigin, ParachainInherentData, ParachainProposal, ParachainsInherentData, ParathreadClaim, ParathreadClaimQueue, ParathreadEntry, PendingSlashes, PersistedValidationData, PvfCheckStatement, PvfExecTimeoutKind, PvfPrepTimeoutKind, QueuedParathread, RegisteredParachainInfo, RelayBlockNumber, RelayChainBlockNumber, RelayChainHash, RelayHash, Remark, ReplacementTimes, Retriable, ScheduledCore, Scheduling, ScrapedOnChainVotes, ServiceQuality, SessionInfo, SessionInfoValidatorGroup, SignedAvailabilityBitfield, SignedAvailabilityBitfields, SigningContext, SlashingOffenceKind, SlotRange, SlotRange10, Statement, SubId, SystemInherentData, TransientValidationData, UpgradeGoAhead, UpgradeRestriction, UpwardMessage, ValidDisputeStatementKind, ValidationCode, ValidationCodeHash, ValidationData, ValidationDataType, ValidationFunctionParams, ValidatorSignature, ValidityAttestation, VecInboundHrmpMessage, WinnersData, WinnersData10, WinnersDataTuple, WinnersDataTuple10, WinningData, WinningData10, WinningDataEntry } from '@polkadot/types/interfaces/parachains';
 import type { FeeDetails, InclusionFee, RuntimeDispatchInfo, RuntimeDispatchInfoV1, RuntimeDispatchInfoV2 } from '@polkadot/types/interfaces/payment';
 import type { Approvals } from '@polkadot/types/interfaces/poll';
 import type { ProxyAnnouncement, ProxyDefinition, ProxyType } from '@polkadot/types/interfaces/proxy';
@@ -335,7 +335,11 @@
     CumulusPalletParachainSystemError: CumulusPalletParachainSystemError;
     CumulusPalletParachainSystemEvent: CumulusPalletParachainSystemEvent;
     CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot;
-    CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize: CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize;
+    CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity: CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity;
+    CumulusPalletParachainSystemUnincludedSegmentAncestor: CumulusPalletParachainSystemUnincludedSegmentAncestor;
+    CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate: CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate;
+    CumulusPalletParachainSystemUnincludedSegmentSegmentTracker: CumulusPalletParachainSystemUnincludedSegmentSegmentTracker;
+    CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth: CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth;
     CumulusPalletXcmCall: CumulusPalletXcmCall;
     CumulusPalletXcmError: CumulusPalletXcmError;
     CumulusPalletXcmEvent: CumulusPalletXcmEvent;
@@ -349,6 +353,8 @@
     CumulusPalletXcmpQueueOutboundState: CumulusPalletXcmpQueueOutboundState;
     CumulusPalletXcmpQueueQueueConfigData: CumulusPalletXcmpQueueQueueConfigData;
     CumulusPrimitivesParachainInherentParachainInherentData: CumulusPrimitivesParachainInherentParachainInherentData;
+    CustomMetadata15: CustomMetadata15;
+    CustomValueMetadata15: CustomValueMetadata15;
     Data: Data;
     DeferredOffenceOf: DeferredOffenceOf;
     DefunctVoter: DefunctVoter;
@@ -382,10 +388,12 @@
     DispatchResultOf: DispatchResultOf;
     DispatchResultTo198: DispatchResultTo198;
     DisputeLocation: DisputeLocation;
+    DisputeProof: DisputeProof;
     DisputeResult: DisputeResult;
     DisputeState: DisputeState;
     DisputeStatement: DisputeStatement;
     DisputeStatementSet: DisputeStatementSet;
+    DisputesTimeSlot: DisputesTimeSlot;
     DoubleEncodedCall: DoubleEncodedCall;
     DoubleVoteReport: DoubleVoteReport;
     DownwardMessage: DownwardMessage;
@@ -480,14 +488,17 @@
     EventRecord: EventRecord;
     EvmAccount: EvmAccount;
     EvmCallInfo: EvmCallInfo;
+    EvmCallInfoV2: EvmCallInfoV2;
     EvmCoreErrorExitError: EvmCoreErrorExitError;
     EvmCoreErrorExitFatal: EvmCoreErrorExitFatal;
     EvmCoreErrorExitReason: EvmCoreErrorExitReason;
     EvmCoreErrorExitRevert: EvmCoreErrorExitRevert;
     EvmCoreErrorExitSucceed: EvmCoreErrorExitSucceed;
     EvmCreateInfo: EvmCreateInfo;
+    EvmCreateInfoV2: EvmCreateInfoV2;
     EvmLog: EvmLog;
     EvmVicinity: EvmVicinity;
+    EvmWeightInfo: EvmWeightInfo;
     ExecReturnValue: ExecReturnValue;
     ExecutorParam: ExecutorParam;
     ExecutorParams: ExecutorParams;
@@ -507,6 +518,7 @@
     ExtrinsicMetadataV12: ExtrinsicMetadataV12;
     ExtrinsicMetadataV13: ExtrinsicMetadataV13;
     ExtrinsicMetadataV14: ExtrinsicMetadataV14;
+    ExtrinsicMetadataV15: ExtrinsicMetadataV15;
     ExtrinsicOrHash: ExtrinsicOrHash;
     ExtrinsicPayload: ExtrinsicPayload;
     ExtrinsicPayloadUnknown: ExtrinsicPayloadUnknown;
@@ -800,6 +812,7 @@
     OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls: OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls;
     OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance;
     OpalRuntimeRuntimeCommonSessionKeys: OpalRuntimeRuntimeCommonSessionKeys;
+    OpalRuntimeRuntimeHoldReason: OpalRuntimeRuntimeHoldReason;
     OpaqueCall: OpaqueCall;
     OpaqueKeyOwnershipProof: OpaqueKeyOwnershipProof;
     OpaqueMetadata: OpaqueMetadata;
@@ -837,6 +850,7 @@
     OutboundPayload: OutboundPayload;
     OutboundStatus: OutboundStatus;
     Outcome: Outcome;
+    OuterEnums15: OuterEnums15;
     OverweightIndex: OverweightIndex;
     Owner: Owner;
     PageCounter: PageCounter;
@@ -857,6 +871,7 @@
     PalletCollatorSelectionCall: PalletCollatorSelectionCall;
     PalletCollatorSelectionError: PalletCollatorSelectionError;
     PalletCollatorSelectionEvent: PalletCollatorSelectionEvent;
+    PalletCollatorSelectionHoldReason: PalletCollatorSelectionHoldReason;
     PalletCollectiveCall: PalletCollectiveCall;
     PalletCollectiveError: PalletCollectiveError;
     PalletCollectiveEvent: PalletCollectiveEvent;
@@ -905,7 +920,7 @@
     PalletEvmMigrationCall: PalletEvmMigrationCall;
     PalletEvmMigrationError: PalletEvmMigrationError;
     PalletEvmMigrationEvent: PalletEvmMigrationEvent;
-    PalletForeignAssetsAssetIds: PalletForeignAssetsAssetIds;
+    PalletForeignAssetsAssetId: PalletForeignAssetsAssetId;
     PalletForeignAssetsModuleAssetMetadata: PalletForeignAssetsModuleAssetMetadata;
     PalletForeignAssetsModuleCall: PalletForeignAssetsModuleCall;
     PalletForeignAssetsModuleError: PalletForeignAssetsModuleError;
@@ -991,6 +1006,9 @@
     PalletTreasuryProposal: PalletTreasuryProposal;
     PalletUniqueCall: PalletUniqueCall;
     PalletUniqueError: PalletUniqueError;
+    PalletUtilityCall: PalletUtilityCall;
+    PalletUtilityError: PalletUtilityError;
+    PalletUtilityEvent: PalletUtilityEvent;
     PalletVersion: PalletVersion;
     PalletXcmCall: PalletXcmCall;
     PalletXcmError: PalletXcmError;
@@ -1024,6 +1042,7 @@
     PendingChange: PendingChange;
     PendingPause: PendingPause;
     PendingResume: PendingResume;
+    PendingSlashes: PendingSlashes;
     Perbill: Perbill;
     Percent: Percent;
     PerDispatchClassU32: PerDispatchClassU32;
@@ -1046,11 +1065,13 @@
     PolkadotCorePrimitivesInboundDownwardMessage: PolkadotCorePrimitivesInboundDownwardMessage;
     PolkadotCorePrimitivesInboundHrmpMessage: PolkadotCorePrimitivesInboundHrmpMessage;
     PolkadotCorePrimitivesOutboundHrmpMessage: PolkadotCorePrimitivesOutboundHrmpMessage;
-    PolkadotParachainPrimitivesXcmpMessageFormat: PolkadotParachainPrimitivesXcmpMessageFormat;
-    PolkadotPrimitivesV4AbridgedHostConfiguration: PolkadotPrimitivesV4AbridgedHostConfiguration;
-    PolkadotPrimitivesV4AbridgedHrmpChannel: PolkadotPrimitivesV4AbridgedHrmpChannel;
-    PolkadotPrimitivesV4PersistedValidationData: PolkadotPrimitivesV4PersistedValidationData;
-    PolkadotPrimitivesV4UpgradeRestriction: PolkadotPrimitivesV4UpgradeRestriction;
+    PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat: PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat;
+    PolkadotPrimitivesV5AbridgedHostConfiguration: PolkadotPrimitivesV5AbridgedHostConfiguration;
+    PolkadotPrimitivesV5AbridgedHrmpChannel: PolkadotPrimitivesV5AbridgedHrmpChannel;
+    PolkadotPrimitivesV5PersistedValidationData: PolkadotPrimitivesV5PersistedValidationData;
+    PolkadotPrimitivesV5UpgradeGoAhead: PolkadotPrimitivesV5UpgradeGoAhead;
+    PolkadotPrimitivesV5UpgradeRestriction: PolkadotPrimitivesV5UpgradeRestriction;
+    PolkadotPrimitivesVstagingAsyncBackingParams: PolkadotPrimitivesVstagingAsyncBackingParams;
     PortableType: PortableType;
     PortableTypeV14: PortableTypeV14;
     Precommits: Precommits;
@@ -1247,6 +1268,7 @@
     SiTypeDefVariant: SiTypeDefVariant;
     SiTypeParameter: SiTypeParameter;
     SiVariant: SiVariant;
+    SlashingOffenceKind: SlashingOffenceKind;
     SlashingSpans: SlashingSpans;
     SlashingSpansTo204: SlashingSpansTo204;
     SlashJournalEntry: SlashJournalEntry;
@@ -1286,6 +1308,56 @@
     SpWeightsRuntimeDbWeight: SpWeightsRuntimeDbWeight;
     SpWeightsWeightV2Weight: SpWeightsWeightV2Weight;
     Sr25519Signature: Sr25519Signature;
+    StagingXcmDoubleEncoded: StagingXcmDoubleEncoded;
+    StagingXcmV2BodyId: StagingXcmV2BodyId;
+    StagingXcmV2BodyPart: StagingXcmV2BodyPart;
+    StagingXcmV2Instruction: StagingXcmV2Instruction;
+    StagingXcmV2Junction: StagingXcmV2Junction;
+    StagingXcmV2MultiAsset: StagingXcmV2MultiAsset;
+    StagingXcmV2MultiassetAssetId: StagingXcmV2MultiassetAssetId;
+    StagingXcmV2MultiassetAssetInstance: StagingXcmV2MultiassetAssetInstance;
+    StagingXcmV2MultiassetFungibility: StagingXcmV2MultiassetFungibility;
+    StagingXcmV2MultiassetMultiAssetFilter: StagingXcmV2MultiassetMultiAssetFilter;
+    StagingXcmV2MultiassetMultiAssets: StagingXcmV2MultiassetMultiAssets;
+    StagingXcmV2MultiassetWildFungibility: StagingXcmV2MultiassetWildFungibility;
+    StagingXcmV2MultiassetWildMultiAsset: StagingXcmV2MultiassetWildMultiAsset;
+    StagingXcmV2MultiLocation: StagingXcmV2MultiLocation;
+    StagingXcmV2MultilocationJunctions: StagingXcmV2MultilocationJunctions;
+    StagingXcmV2NetworkId: StagingXcmV2NetworkId;
+    StagingXcmV2OriginKind: StagingXcmV2OriginKind;
+    StagingXcmV2Response: StagingXcmV2Response;
+    StagingXcmV2TraitsError: StagingXcmV2TraitsError;
+    StagingXcmV2WeightLimit: StagingXcmV2WeightLimit;
+    StagingXcmV2Xcm: StagingXcmV2Xcm;
+    StagingXcmV3Instruction: StagingXcmV3Instruction;
+    StagingXcmV3Junction: StagingXcmV3Junction;
+    StagingXcmV3JunctionBodyId: StagingXcmV3JunctionBodyId;
+    StagingXcmV3JunctionBodyPart: StagingXcmV3JunctionBodyPart;
+    StagingXcmV3JunctionNetworkId: StagingXcmV3JunctionNetworkId;
+    StagingXcmV3Junctions: StagingXcmV3Junctions;
+    StagingXcmV3MaybeErrorCode: StagingXcmV3MaybeErrorCode;
+    StagingXcmV3MultiAsset: StagingXcmV3MultiAsset;
+    StagingXcmV3MultiassetAssetId: StagingXcmV3MultiassetAssetId;
+    StagingXcmV3MultiassetAssetInstance: StagingXcmV3MultiassetAssetInstance;
+    StagingXcmV3MultiassetFungibility: StagingXcmV3MultiassetFungibility;
+    StagingXcmV3MultiassetMultiAssetFilter: StagingXcmV3MultiassetMultiAssetFilter;
+    StagingXcmV3MultiassetMultiAssets: StagingXcmV3MultiassetMultiAssets;
+    StagingXcmV3MultiassetWildFungibility: StagingXcmV3MultiassetWildFungibility;
+    StagingXcmV3MultiassetWildMultiAsset: StagingXcmV3MultiassetWildMultiAsset;
+    StagingXcmV3MultiLocation: StagingXcmV3MultiLocation;
+    StagingXcmV3PalletInfo: StagingXcmV3PalletInfo;
+    StagingXcmV3QueryResponseInfo: StagingXcmV3QueryResponseInfo;
+    StagingXcmV3Response: StagingXcmV3Response;
+    StagingXcmV3TraitsError: StagingXcmV3TraitsError;
+    StagingXcmV3TraitsOutcome: StagingXcmV3TraitsOutcome;
+    StagingXcmV3WeightLimit: StagingXcmV3WeightLimit;
+    StagingXcmV3Xcm: StagingXcmV3Xcm;
+    StagingXcmVersionedAssetId: StagingXcmVersionedAssetId;
+    StagingXcmVersionedMultiAsset: StagingXcmVersionedMultiAsset;
+    StagingXcmVersionedMultiAssets: StagingXcmVersionedMultiAssets;
+    StagingXcmVersionedMultiLocation: StagingXcmVersionedMultiLocation;
+    StagingXcmVersionedResponse: StagingXcmVersionedResponse;
+    StagingXcmVersionedXcm: StagingXcmVersionedXcm;
     StakingLedger: StakingLedger;
     StakingLedgerTo223: StakingLedgerTo223;
     StakingLedgerTo240: StakingLedgerTo240;
@@ -1496,7 +1568,6 @@
     WithdrawReasons: WithdrawReasons;
     Xcm: Xcm;
     XcmAssetId: XcmAssetId;
-    XcmDoubleEncoded: XcmDoubleEncoded;
     XcmError: XcmError;
     XcmErrorV0: XcmErrorV0;
     XcmErrorV1: XcmErrorV1;
@@ -1511,55 +1582,6 @@
     XcmV0: XcmV0;
     XcmV1: XcmV1;
     XcmV2: XcmV2;
-    XcmV2BodyId: XcmV2BodyId;
-    XcmV2BodyPart: XcmV2BodyPart;
-    XcmV2Instruction: XcmV2Instruction;
-    XcmV2Junction: XcmV2Junction;
-    XcmV2MultiAsset: XcmV2MultiAsset;
-    XcmV2MultiassetAssetId: XcmV2MultiassetAssetId;
-    XcmV2MultiassetAssetInstance: XcmV2MultiassetAssetInstance;
-    XcmV2MultiassetFungibility: XcmV2MultiassetFungibility;
-    XcmV2MultiassetMultiAssetFilter: XcmV2MultiassetMultiAssetFilter;
-    XcmV2MultiassetMultiAssets: XcmV2MultiassetMultiAssets;
-    XcmV2MultiassetWildFungibility: XcmV2MultiassetWildFungibility;
-    XcmV2MultiassetWildMultiAsset: XcmV2MultiassetWildMultiAsset;
-    XcmV2MultiLocation: XcmV2MultiLocation;
-    XcmV2MultilocationJunctions: XcmV2MultilocationJunctions;
-    XcmV2NetworkId: XcmV2NetworkId;
-    XcmV2OriginKind: XcmV2OriginKind;
-    XcmV2Response: XcmV2Response;
-    XcmV2TraitsError: XcmV2TraitsError;
-    XcmV2WeightLimit: XcmV2WeightLimit;
-    XcmV2Xcm: XcmV2Xcm;
-    XcmV3Instruction: XcmV3Instruction;
-    XcmV3Junction: XcmV3Junction;
-    XcmV3JunctionBodyId: XcmV3JunctionBodyId;
-    XcmV3JunctionBodyPart: XcmV3JunctionBodyPart;
-    XcmV3JunctionNetworkId: XcmV3JunctionNetworkId;
-    XcmV3Junctions: XcmV3Junctions;
-    XcmV3MaybeErrorCode: XcmV3MaybeErrorCode;
-    XcmV3MultiAsset: XcmV3MultiAsset;
-    XcmV3MultiassetAssetId: XcmV3MultiassetAssetId;
-    XcmV3MultiassetAssetInstance: XcmV3MultiassetAssetInstance;
-    XcmV3MultiassetFungibility: XcmV3MultiassetFungibility;
-    XcmV3MultiassetMultiAssetFilter: XcmV3MultiassetMultiAssetFilter;
-    XcmV3MultiassetMultiAssets: XcmV3MultiassetMultiAssets;
-    XcmV3MultiassetWildFungibility: XcmV3MultiassetWildFungibility;
-    XcmV3MultiassetWildMultiAsset: XcmV3MultiassetWildMultiAsset;
-    XcmV3MultiLocation: XcmV3MultiLocation;
-    XcmV3PalletInfo: XcmV3PalletInfo;
-    XcmV3QueryResponseInfo: XcmV3QueryResponseInfo;
-    XcmV3Response: XcmV3Response;
-    XcmV3TraitsError: XcmV3TraitsError;
-    XcmV3TraitsOutcome: XcmV3TraitsOutcome;
-    XcmV3WeightLimit: XcmV3WeightLimit;
-    XcmV3Xcm: XcmV3Xcm;
     XcmVersion: XcmVersion;
-    XcmVersionedAssetId: XcmVersionedAssetId;
-    XcmVersionedMultiAsset: XcmVersionedMultiAsset;
-    XcmVersionedMultiAssets: XcmVersionedMultiAssets;
-    XcmVersionedMultiLocation: XcmVersionedMultiLocation;
-    XcmVersionedResponse: XcmVersionedResponse;
-    XcmVersionedXcm: XcmVersionedXcm;
   } // InterfaceTypes
 } // declare module
modifiedtests/src/interfaces/default/types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/default/types.ts
+++ b/tests/src/interfaces/default/types.ts
@@ -34,25 +34,28 @@
 export interface CumulusPalletDmpQueueEvent extends Enum {
   readonly isInvalidFormat: boolean;
   readonly asInvalidFormat: {
-    readonly messageId: U8aFixed;
+    readonly messageHash: U8aFixed;
   } & Struct;
   readonly isUnsupportedVersion: boolean;
   readonly asUnsupportedVersion: {
-    readonly messageId: U8aFixed;
+    readonly messageHash: U8aFixed;
   } & Struct;
   readonly isExecutedDownward: boolean;
   readonly asExecutedDownward: {
+    readonly messageHash: U8aFixed;
     readonly messageId: U8aFixed;
-    readonly outcome: XcmV3TraitsOutcome;
+    readonly outcome: StagingXcmV3TraitsOutcome;
   } & Struct;
   readonly isWeightExhausted: boolean;
   readonly asWeightExhausted: {
+    readonly messageHash: U8aFixed;
     readonly messageId: U8aFixed;
     readonly remainingWeight: SpWeightsWeightV2Weight;
     readonly requiredWeight: SpWeightsWeightV2Weight;
   } & Struct;
   readonly isOverweightEnqueued: boolean;
   readonly asOverweightEnqueued: {
+    readonly messageHash: U8aFixed;
     readonly messageId: U8aFixed;
     readonly overweightIndex: u64;
     readonly requiredWeight: SpWeightsWeightV2Weight;
@@ -64,7 +67,7 @@
   } & Struct;
   readonly isMaxMessagesExhausted: boolean;
   readonly asMaxMessagesExhausted: {
-    readonly messageId: U8aFixed;
+    readonly messageHash: U8aFixed;
   } & Struct;
   readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced' | 'MaxMessagesExhausted';
 }
@@ -148,17 +151,44 @@
 /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot */
 export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {
   readonly dmqMqcHead: H256;
-  readonly relayDispatchQueueSize: CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize;
-  readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV4AbridgedHrmpChannel]>>;
-  readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV4AbridgedHrmpChannel]>>;
+  readonly relayDispatchQueueRemainingCapacity: CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity;
+  readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV5AbridgedHrmpChannel]>>;
+  readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV5AbridgedHrmpChannel]>>;
 }
 
-/** @name CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize */
-export interface CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize extends Struct {
+/** @name CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity */
+export interface CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity extends Struct {
   readonly remainingCount: u32;
   readonly remainingSize: u32;
 }
 
+/** @name CumulusPalletParachainSystemUnincludedSegmentAncestor */
+export interface CumulusPalletParachainSystemUnincludedSegmentAncestor extends Struct {
+  readonly usedBandwidth: CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth;
+  readonly paraHeadHash: Option<H256>;
+  readonly consumedGoAheadSignal: Option<PolkadotPrimitivesV5UpgradeGoAhead>;
+}
+
+/** @name CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate */
+export interface CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate extends Struct {
+  readonly msgCount: u32;
+  readonly totalBytes: u32;
+}
+
+/** @name CumulusPalletParachainSystemUnincludedSegmentSegmentTracker */
+export interface CumulusPalletParachainSystemUnincludedSegmentSegmentTracker extends Struct {
+  readonly usedBandwidth: CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth;
+  readonly hrmpWatermark: Option<u32>;
+  readonly consumedGoAheadSignal: Option<PolkadotPrimitivesV5UpgradeGoAhead>;
+}
+
+/** @name CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth */
+export interface CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth extends Struct {
+  readonly umpMsgCount: u32;
+  readonly umpTotalBytes: u32;
+  readonly hrmpOutgoing: BTreeMap<u32, CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate>;
+}
+
 /** @name CumulusPalletXcmCall */
 export interface CumulusPalletXcmCall extends Null {}
 
@@ -172,7 +202,7 @@
   readonly isUnsupportedVersion: boolean;
   readonly asUnsupportedVersion: U8aFixed;
   readonly isExecutedDownward: boolean;
-  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV3TraitsOutcome]>;
+  readonly asExecutedDownward: ITuple<[U8aFixed, StagingXcmV3TraitsOutcome]>;
   readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';
 }
 
@@ -234,26 +264,28 @@
 export interface CumulusPalletXcmpQueueEvent extends Enum {
   readonly isSuccess: boolean;
   readonly asSuccess: {
-    readonly messageHash: Option<U8aFixed>;
+    readonly messageHash: U8aFixed;
+    readonly messageId: U8aFixed;
     readonly weight: SpWeightsWeightV2Weight;
   } & Struct;
   readonly isFail: boolean;
   readonly asFail: {
-    readonly messageHash: Option<U8aFixed>;
-    readonly error: XcmV3TraitsError;
+    readonly messageHash: U8aFixed;
+    readonly messageId: U8aFixed;
+    readonly error: StagingXcmV3TraitsError;
     readonly weight: SpWeightsWeightV2Weight;
   } & Struct;
   readonly isBadVersion: boolean;
   readonly asBadVersion: {
-    readonly messageHash: Option<U8aFixed>;
+    readonly messageHash: U8aFixed;
   } & Struct;
   readonly isBadFormat: boolean;
   readonly asBadFormat: {
-    readonly messageHash: Option<U8aFixed>;
+    readonly messageHash: U8aFixed;
   } & Struct;
   readonly isXcmpMessageSent: boolean;
   readonly asXcmpMessageSent: {
-    readonly messageHash: Option<U8aFixed>;
+    readonly messageHash: U8aFixed;
   } & Struct;
   readonly isOverweightEnqueued: boolean;
   readonly asOverweightEnqueued: {
@@ -274,7 +306,7 @@
 export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {
   readonly sender: u32;
   readonly state: CumulusPalletXcmpQueueInboundState;
-  readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;
+  readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat]>>;
 }
 
 /** @name CumulusPalletXcmpQueueInboundState */
@@ -312,7 +344,7 @@
 
 /** @name CumulusPrimitivesParachainInherentParachainInherentData */
 export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {
-  readonly validationData: PolkadotPrimitivesV4PersistedValidationData;
+  readonly validationData: PolkadotPrimitivesV5PersistedValidationData;
   readonly relayChainState: SpTrieStorageProof;
   readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;
   readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;
@@ -787,6 +819,13 @@
   readonly aura: SpConsensusAuraSr25519AppSr25519Public;
 }
 
+/** @name OpalRuntimeRuntimeHoldReason */
+export interface OpalRuntimeRuntimeHoldReason extends Enum {
+  readonly isCollatorSelection: boolean;
+  readonly asCollatorSelection: PalletCollatorSelectionHoldReason;
+  readonly type: 'CollatorSelection';
+}
+
 /** @name OrmlTokensAccountData */
 export interface OrmlTokensAccountData extends Struct {
   readonly free: u128;
@@ -805,32 +844,32 @@
   readonly isTransfer: boolean;
   readonly asTransfer: {
     readonly dest: MultiAddress;
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly amount: Compact<u128>;
   } & Struct;
   readonly isTransferAll: boolean;
   readonly asTransferAll: {
     readonly dest: MultiAddress;
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly keepAlive: bool;
   } & Struct;
   readonly isTransferKeepAlive: boolean;
   readonly asTransferKeepAlive: {
     readonly dest: MultiAddress;
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly amount: Compact<u128>;
   } & Struct;
   readonly isForceTransfer: boolean;
   readonly asForceTransfer: {
     readonly source: MultiAddress;
     readonly dest: MultiAddress;
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly amount: Compact<u128>;
   } & Struct;
   readonly isSetBalance: boolean;
   readonly asSetBalance: {
     readonly who: MultiAddress;
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly newFree: Compact<u128>;
     readonly newReserved: Compact<u128>;
   } & Struct;
@@ -854,38 +893,38 @@
 export interface OrmlTokensModuleEvent extends Enum {
   readonly isEndowed: boolean;
   readonly asEndowed: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isDustLost: boolean;
   readonly asDustLost: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isTransfer: boolean;
   readonly asTransfer: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly from: AccountId32;
     readonly to: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isReserved: boolean;
   readonly asReserved: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isUnreserved: boolean;
   readonly asUnreserved: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isReserveRepatriated: boolean;
   readonly asReserveRepatriated: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly from: AccountId32;
     readonly to: AccountId32;
     readonly amount: u128;
@@ -893,61 +932,71 @@
   } & Struct;
   readonly isBalanceSet: boolean;
   readonly asBalanceSet: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly free: u128;
     readonly reserved: u128;
   } & Struct;
   readonly isTotalIssuanceSet: boolean;
   readonly asTotalIssuanceSet: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly amount: u128;
   } & Struct;
   readonly isWithdrawn: boolean;
   readonly asWithdrawn: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isSlashed: boolean;
   readonly asSlashed: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly freeAmount: u128;
     readonly reservedAmount: u128;
   } & Struct;
   readonly isDeposited: boolean;
   readonly asDeposited: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isLockSet: boolean;
   readonly asLockSet: {
     readonly lockId: U8aFixed;
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isLockRemoved: boolean;
   readonly asLockRemoved: {
     readonly lockId: U8aFixed;
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
   } & Struct;
   readonly isLocked: boolean;
   readonly asLocked: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
   readonly isUnlocked: boolean;
   readonly asUnlocked: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly who: AccountId32;
     readonly amount: u128;
   } & Struct;
-  readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'BalanceSet' | 'TotalIssuanceSet' | 'Withdrawn' | 'Slashed' | 'Deposited' | 'LockSet' | 'LockRemoved' | 'Locked' | 'Unlocked';
+  readonly isIssued: boolean;
+  readonly asIssued: {
+    readonly currencyId: PalletForeignAssetsAssetId;
+    readonly amount: u128;
+  } & Struct;
+  readonly isRescinded: boolean;
+  readonly asRescinded: {
+    readonly currencyId: PalletForeignAssetsAssetId;
+    readonly amount: u128;
+  } & Struct;
+  readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'BalanceSet' | 'TotalIssuanceSet' | 'Withdrawn' | 'Slashed' | 'Deposited' | 'LockSet' | 'LockRemoved' | 'Locked' | 'Unlocked' | 'Issued' | 'Rescinded';
 }
 
 /** @name OrmlTokensReserveData */
@@ -1019,45 +1068,45 @@
 export interface OrmlXtokensModuleCall extends Enum {
   readonly isTransfer: boolean;
   readonly asTransfer: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly amount: u128;
-    readonly dest: XcmVersionedMultiLocation;
-    readonly destWeightLimit: XcmV3WeightLimit;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly destWeightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isTransferMultiasset: boolean;
   readonly asTransferMultiasset: {
-    readonly asset: XcmVersionedMultiAsset;
-    readonly dest: XcmVersionedMultiLocation;
-    readonly destWeightLimit: XcmV3WeightLimit;
+    readonly asset: StagingXcmVersionedMultiAsset;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly destWeightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isTransferWithFee: boolean;
   readonly asTransferWithFee: {
-    readonly currencyId: PalletForeignAssetsAssetIds;
+    readonly currencyId: PalletForeignAssetsAssetId;
     readonly amount: u128;
     readonly fee: u128;
-    readonly dest: XcmVersionedMultiLocation;
-    readonly destWeightLimit: XcmV3WeightLimit;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly destWeightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isTransferMultiassetWithFee: boolean;
   readonly asTransferMultiassetWithFee: {
-    readonly asset: XcmVersionedMultiAsset;
-    readonly fee: XcmVersionedMultiAsset;
-    readonly dest: XcmVersionedMultiLocation;
-    readonly destWeightLimit: XcmV3WeightLimit;
+    readonly asset: StagingXcmVersionedMultiAsset;
+    readonly fee: StagingXcmVersionedMultiAsset;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly destWeightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isTransferMulticurrencies: boolean;
   readonly asTransferMulticurrencies: {
-    readonly currencies: Vec<ITuple<[PalletForeignAssetsAssetIds, u128]>>;
+    readonly currencies: Vec<ITuple<[PalletForeignAssetsAssetId, u128]>>;
     readonly feeItem: u32;
-    readonly dest: XcmVersionedMultiLocation;
-    readonly destWeightLimit: XcmV3WeightLimit;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly destWeightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isTransferMultiassets: boolean;
   readonly asTransferMultiassets: {
-    readonly assets: XcmVersionedMultiAssets;
+    readonly assets: StagingXcmVersionedMultiAssets;
     readonly feeItem: u32;
-    readonly dest: XcmVersionedMultiLocation;
-    readonly destWeightLimit: XcmV3WeightLimit;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly destWeightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly type: 'Transfer' | 'TransferMultiasset' | 'TransferWithFee' | 'TransferMultiassetWithFee' | 'TransferMulticurrencies' | 'TransferMultiassets';
 }
@@ -1091,9 +1140,9 @@
   readonly isTransferredMultiAssets: boolean;
   readonly asTransferredMultiAssets: {
     readonly sender: AccountId32;
-    readonly assets: XcmV3MultiassetMultiAssets;
-    readonly fee: XcmV3MultiAsset;
-    readonly dest: XcmV3MultiLocation;
+    readonly assets: StagingXcmV3MultiassetMultiAssets;
+    readonly fee: StagingXcmV3MultiAsset;
+    readonly dest: StagingXcmV3MultiLocation;
   } & Struct;
   readonly type: 'TransferredMultiAssets';
 }
@@ -1446,6 +1495,12 @@
   readonly type: 'InvulnerableAdded' | 'InvulnerableRemoved' | 'LicenseObtained' | 'LicenseReleased' | 'CandidateAdded' | 'CandidateRemoved';
 }
 
+/** @name PalletCollatorSelectionHoldReason */
+export interface PalletCollatorSelectionHoldReason extends Enum {
+  readonly isLicenseBond: boolean;
+  readonly type: 'LicenseBond';
+}
+
 /** @name PalletCollectiveCall */
 export interface PalletCollectiveCall extends Enum {
   readonly isSetMembers: boolean;
@@ -1497,7 +1552,8 @@
   readonly isTooManyProposals: boolean;
   readonly isWrongProposalWeight: boolean;
   readonly isWrongProposalLength: boolean;
-  readonly type: 'NotMember' | 'DuplicateProposal' | 'ProposalMissing' | 'WrongIndex' | 'DuplicateVote' | 'AlreadyInitialized' | 'TooEarly' | 'TooManyProposals' | 'WrongProposalWeight' | 'WrongProposalLength';
+  readonly isPrimeAccountNotMember: boolean;
+  readonly type: 'NotMember' | 'DuplicateProposal' | 'ProposalMissing' | 'WrongIndex' | 'DuplicateVote' | 'AlreadyInitialized' | 'TooEarly' | 'TooManyProposals' | 'WrongProposalWeight' | 'WrongProposalLength' | 'PrimeAccountNotMember';
 }
 
 /** @name PalletCollectiveEvent */
@@ -1602,7 +1658,8 @@
   readonly isCollectionIsInternal: boolean;
   readonly isConfirmSponsorshipFail: boolean;
   readonly isUserIsNotCollectionAdmin: boolean;
-  readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsNotEthMirror' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal' | 'ConfirmSponsorshipFail' | 'UserIsNotCollectionAdmin';
+  readonly isFungibleItemsHaveNoId: boolean;
+  readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsNotEthMirror' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal' | 'ConfirmSponsorshipFail' | 'UserIsNotCollectionAdmin' | 'FungibleItemsHaveNoId';
 }
 
 /** @name PalletCommonEvent */
@@ -2236,8 +2293,8 @@
   readonly type: 'TestEvent';
 }
 
-/** @name PalletForeignAssetsAssetIds */
-export interface PalletForeignAssetsAssetIds extends Enum {
+/** @name PalletForeignAssetsAssetId */
+export interface PalletForeignAssetsAssetId extends Enum {
   readonly isForeignAssetId: boolean;
   readonly asForeignAssetId: u32;
   readonly isNativeAssetId: boolean;
@@ -2258,13 +2315,13 @@
   readonly isRegisterForeignAsset: boolean;
   readonly asRegisterForeignAsset: {
     readonly owner: AccountId32;
-    readonly location: XcmVersionedMultiLocation;
+    readonly location: StagingXcmVersionedMultiLocation;
     readonly metadata: PalletForeignAssetsModuleAssetMetadata;
   } & Struct;
   readonly isUpdateForeignAsset: boolean;
   readonly asUpdateForeignAsset: {
     readonly foreignAssetId: u32;
-    readonly location: XcmVersionedMultiLocation;
+    readonly location: StagingXcmVersionedMultiLocation;
     readonly metadata: PalletForeignAssetsModuleAssetMetadata;
   } & Struct;
   readonly type: 'RegisterForeignAsset' | 'UpdateForeignAsset';
@@ -2284,23 +2341,23 @@
   readonly isForeignAssetRegistered: boolean;
   readonly asForeignAssetRegistered: {
     readonly assetId: u32;
-    readonly assetAddress: XcmV3MultiLocation;
+    readonly assetAddress: StagingXcmV3MultiLocation;
     readonly metadata: PalletForeignAssetsModuleAssetMetadata;
   } & Struct;
   readonly isForeignAssetUpdated: boolean;
   readonly asForeignAssetUpdated: {
     readonly assetId: u32;
-    readonly assetAddress: XcmV3MultiLocation;
+    readonly assetAddress: StagingXcmV3MultiLocation;
     readonly metadata: PalletForeignAssetsModuleAssetMetadata;
   } & Struct;
   readonly isAssetRegistered: boolean;
   readonly asAssetRegistered: {
-    readonly assetId: PalletForeignAssetsAssetIds;
+    readonly assetId: PalletForeignAssetsAssetId;
     readonly metadata: PalletForeignAssetsModuleAssetMetadata;
   } & Struct;
   readonly isAssetUpdated: boolean;
   readonly asAssetUpdated: {
-    readonly assetId: PalletForeignAssetsAssetIds;
+    readonly assetId: PalletForeignAssetsAssetId;
     readonly metadata: PalletForeignAssetsModuleAssetMetadata;
   } & Struct;
   readonly type: 'ForeignAssetRegistered' | 'ForeignAssetUpdated' | 'AssetRegistered' | 'AssetUpdated';
@@ -2316,13 +2373,12 @@
 /** @name PalletFungibleError */
 export interface PalletFungibleError extends Enum {
   readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
-  readonly isFungibleItemsHaveNoId: boolean;
   readonly isFungibleItemsDontHaveData: boolean;
   readonly isFungibleDisallowsNesting: boolean;
   readonly isSettingPropertiesNotAllowed: boolean;
   readonly isSettingAllowanceForAllNotAllowed: boolean;
   readonly isFungibleTokensAreAlwaysValid: boolean;
-  readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid';
+  readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid';
 }
 
 /** @name PalletGovOriginsOrigin */
@@ -2581,12 +2637,7 @@
 export interface PalletMaintenanceCall extends Enum {
   readonly isEnable: boolean;
   readonly isDisable: boolean;
-  readonly isExecutePreimage: boolean;
-  readonly asExecutePreimage: {
-    readonly hash_: H256;
-    readonly weightBound: SpWeightsWeightV2Weight;
-  } & Struct;
-  readonly type: 'Enable' | 'Disable' | 'ExecutePreimage';
+  readonly type: 'Enable' | 'Disable';
 }
 
 /** @name PalletMaintenanceError */
@@ -3700,36 +3751,95 @@
   readonly type: 'CollectionDecimalPointLimitExceeded' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection';
 }
 
+/** @name PalletUtilityCall */
+export interface PalletUtilityCall extends Enum {
+  readonly isBatch: boolean;
+  readonly asBatch: {
+    readonly calls: Vec<Call>;
+  } & Struct;
+  readonly isAsDerivative: boolean;
+  readonly asAsDerivative: {
+    readonly index: u16;
+    readonly call: Call;
+  } & Struct;
+  readonly isBatchAll: boolean;
+  readonly asBatchAll: {
+    readonly calls: Vec<Call>;
+  } & Struct;
+  readonly isDispatchAs: boolean;
+  readonly asDispatchAs: {
+    readonly asOrigin: OpalRuntimeOriginCaller;
+    readonly call: Call;
+  } & Struct;
+  readonly isForceBatch: boolean;
+  readonly asForceBatch: {
+    readonly calls: Vec<Call>;
+  } & Struct;
+  readonly isWithWeight: boolean;
+  readonly asWithWeight: {
+    readonly call: Call;
+    readonly weight: SpWeightsWeightV2Weight;
+  } & Struct;
+  readonly type: 'Batch' | 'AsDerivative' | 'BatchAll' | 'DispatchAs' | 'ForceBatch' | 'WithWeight';
+}
+
+/** @name PalletUtilityError */
+export interface PalletUtilityError extends Enum {
+  readonly isTooManyCalls: boolean;
+  readonly type: 'TooManyCalls';
+}
+
+/** @name PalletUtilityEvent */
+export interface PalletUtilityEvent extends Enum {
+  readonly isBatchInterrupted: boolean;
+  readonly asBatchInterrupted: {
+    readonly index: u32;
+    readonly error: SpRuntimeDispatchError;
+  } & Struct;
+  readonly isBatchCompleted: boolean;
+  readonly isBatchCompletedWithErrors: boolean;
+  readonly isItemCompleted: boolean;
+  readonly isItemFailed: boolean;
+  readonly asItemFailed: {
+    readonly error: SpRuntimeDispatchError;
+  } & Struct;
+  readonly isDispatchedAs: boolean;
+  readonly asDispatchedAs: {
+    readonly result: Result<Null, SpRuntimeDispatchError>;
+  } & Struct;
+  readonly type: 'BatchInterrupted' | 'BatchCompleted' | 'BatchCompletedWithErrors' | 'ItemCompleted' | 'ItemFailed' | 'DispatchedAs';
+}
+
 /** @name PalletXcmCall */
 export interface PalletXcmCall extends Enum {
   readonly isSend: boolean;
   readonly asSend: {
-    readonly dest: XcmVersionedMultiLocation;
-    readonly message: XcmVersionedXcm;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly message: StagingXcmVersionedXcm;
   } & Struct;
   readonly isTeleportAssets: boolean;
   readonly asTeleportAssets: {
-    readonly dest: XcmVersionedMultiLocation;
-    readonly beneficiary: XcmVersionedMultiLocation;
-    readonly assets: XcmVersionedMultiAssets;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly beneficiary: StagingXcmVersionedMultiLocation;
+    readonly assets: StagingXcmVersionedMultiAssets;
     readonly feeAssetItem: u32;
   } & Struct;
   readonly isReserveTransferAssets: boolean;
   readonly asReserveTransferAssets: {
-    readonly dest: XcmVersionedMultiLocation;
-    readonly beneficiary: XcmVersionedMultiLocation;
-    readonly assets: XcmVersionedMultiAssets;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly beneficiary: StagingXcmVersionedMultiLocation;
+    readonly assets: StagingXcmVersionedMultiAssets;
     readonly feeAssetItem: u32;
   } & Struct;
   readonly isExecute: boolean;
   readonly asExecute: {
-    readonly message: XcmVersionedXcm;
+    readonly message: StagingXcmVersionedXcm;
     readonly maxWeight: SpWeightsWeightV2Weight;
   } & Struct;
   readonly isForceXcmVersion: boolean;
   readonly asForceXcmVersion: {
-    readonly location: XcmV3MultiLocation;
-    readonly xcmVersion: u32;
+    readonly location: StagingXcmV3MultiLocation;
+    readonly version: u32;
   } & Struct;
   readonly isForceDefaultXcmVersion: boolean;
   readonly asForceDefaultXcmVersion: {
@@ -3737,27 +3847,27 @@
   } & Struct;
   readonly isForceSubscribeVersionNotify: boolean;
   readonly asForceSubscribeVersionNotify: {
-    readonly location: XcmVersionedMultiLocation;
+    readonly location: StagingXcmVersionedMultiLocation;
   } & Struct;
   readonly isForceUnsubscribeVersionNotify: boolean;
   readonly asForceUnsubscribeVersionNotify: {
-    readonly location: XcmVersionedMultiLocation;
+    readonly location: StagingXcmVersionedMultiLocation;
   } & Struct;
   readonly isLimitedReserveTransferAssets: boolean;
   readonly asLimitedReserveTransferAssets: {
-    readonly dest: XcmVersionedMultiLocation;
-    readonly beneficiary: XcmVersionedMultiLocation;
-    readonly assets: XcmVersionedMultiAssets;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly beneficiary: StagingXcmVersionedMultiLocation;
+    readonly assets: StagingXcmVersionedMultiAssets;
     readonly feeAssetItem: u32;
-    readonly weightLimit: XcmV3WeightLimit;
+    readonly weightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isLimitedTeleportAssets: boolean;
   readonly asLimitedTeleportAssets: {
-    readonly dest: XcmVersionedMultiLocation;
-    readonly beneficiary: XcmVersionedMultiLocation;
-    readonly assets: XcmVersionedMultiAssets;
+    readonly dest: StagingXcmVersionedMultiLocation;
+    readonly beneficiary: StagingXcmVersionedMultiLocation;
+    readonly assets: StagingXcmVersionedMultiAssets;
     readonly feeAssetItem: u32;
-    readonly weightLimit: XcmV3WeightLimit;
+    readonly weightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isForceSuspension: boolean;
   readonly asForceSuspension: {
@@ -3794,60 +3904,146 @@
 /** @name PalletXcmEvent */
 export interface PalletXcmEvent extends Enum {
   readonly isAttempted: boolean;
-  readonly asAttempted: XcmV3TraitsOutcome;
+  readonly asAttempted: {
+    readonly outcome: StagingXcmV3TraitsOutcome;
+  } & Struct;
   readonly isSent: boolean;
-  readonly asSent: ITuple<[XcmV3MultiLocation, XcmV3MultiLocation, XcmV3Xcm]>;
+  readonly asSent: {
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly destination: StagingXcmV3MultiLocation;
+    readonly message: StagingXcmV3Xcm;
+    readonly messageId: U8aFixed;
+  } & Struct;
   readonly isUnexpectedResponse: boolean;
-  readonly asUnexpectedResponse: ITuple<[XcmV3MultiLocation, u64]>;
+  readonly asUnexpectedResponse: {
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly queryId: u64;
+  } & Struct;
   readonly isResponseReady: boolean;
-  readonly asResponseReady: ITuple<[u64, XcmV3Response]>;
+  readonly asResponseReady: {
+    readonly queryId: u64;
+    readonly response: StagingXcmV3Response;
+  } & Struct;
   readonly isNotified: boolean;
-  readonly asNotified: ITuple<[u64, u8, u8]>;
+  readonly asNotified: {
+    readonly queryId: u64;
+    readonly palletIndex: u8;
+    readonly callIndex: u8;
+  } & Struct;
   readonly isNotifyOverweight: boolean;
-  readonly asNotifyOverweight: ITuple<[u64, u8, u8, SpWeightsWeightV2Weight, SpWeightsWeightV2Weight]>;
+  readonly asNotifyOverweight: {
+    readonly queryId: u64;
+    readonly palletIndex: u8;
+    readonly callIndex: u8;
+    readonly actualWeight: SpWeightsWeightV2Weight;
+    readonly maxBudgetedWeight: SpWeightsWeightV2Weight;
+  } & Struct;
   readonly isNotifyDispatchError: boolean;
-  readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;
+  readonly asNotifyDispatchError: {
+    readonly queryId: u64;
+    readonly palletIndex: u8;
+    readonly callIndex: u8;
+  } & Struct;
   readonly isNotifyDecodeFailed: boolean;
-  readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;
+  readonly asNotifyDecodeFailed: {
+    readonly queryId: u64;
+    readonly palletIndex: u8;
+    readonly callIndex: u8;
+  } & Struct;
   readonly isInvalidResponder: boolean;
-  readonly asInvalidResponder: ITuple<[XcmV3MultiLocation, u64, Option<XcmV3MultiLocation>]>;
+  readonly asInvalidResponder: {
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly queryId: u64;
+    readonly expectedLocation: Option<StagingXcmV3MultiLocation>;
+  } & Struct;
   readonly isInvalidResponderVersion: boolean;
-  readonly asInvalidResponderVersion: ITuple<[XcmV3MultiLocation, u64]>;
+  readonly asInvalidResponderVersion: {
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly queryId: u64;
+  } & Struct;
   readonly isResponseTaken: boolean;
-  readonly asResponseTaken: u64;
+  readonly asResponseTaken: {
+    readonly queryId: u64;
+  } & Struct;
   readonly isAssetsTrapped: boolean;
-  readonly asAssetsTrapped: ITuple<[H256, XcmV3MultiLocation, XcmVersionedMultiAssets]>;
+  readonly asAssetsTrapped: {
+    readonly hash_: H256;
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly assets: StagingXcmVersionedMultiAssets;
+  } & Struct;
   readonly isVersionChangeNotified: boolean;
-  readonly asVersionChangeNotified: ITuple<[XcmV3MultiLocation, u32, XcmV3MultiassetMultiAssets]>;
+  readonly asVersionChangeNotified: {
+    readonly destination: StagingXcmV3MultiLocation;
+    readonly result: u32;
+    readonly cost: StagingXcmV3MultiassetMultiAssets;
+    readonly messageId: U8aFixed;
+  } & Struct;
   readonly isSupportedVersionChanged: boolean;
-  readonly asSupportedVersionChanged: ITuple<[XcmV3MultiLocation, u32]>;
+  readonly asSupportedVersionChanged: {
+    readonly location: StagingXcmV3MultiLocation;
+    readonly version: u32;
+  } & Struct;
   readonly isNotifyTargetSendFail: boolean;
-  readonly asNotifyTargetSendFail: ITuple<[XcmV3MultiLocation, u64, XcmV3TraitsError]>;
+  readonly asNotifyTargetSendFail: {
+    readonly location: StagingXcmV3MultiLocation;
+    readonly queryId: u64;
+    readonly error: StagingXcmV3TraitsError;
+  } & Struct;
   readonly isNotifyTargetMigrationFail: boolean;
-  readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;
+  readonly asNotifyTargetMigrationFail: {
+    readonly location: StagingXcmVersionedMultiLocation;
+    readonly queryId: u64;
+  } & Struct;
   readonly isInvalidQuerierVersion: boolean;
-  readonly asInvalidQuerierVersion: ITuple<[XcmV3MultiLocation, u64]>;
+  readonly asInvalidQuerierVersion: {
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly queryId: u64;
+  } & Struct;
   readonly isInvalidQuerier: boolean;
-  readonly asInvalidQuerier: ITuple<[XcmV3MultiLocation, u64, XcmV3MultiLocation, Option<XcmV3MultiLocation>]>;
+  readonly asInvalidQuerier: {
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly queryId: u64;
+    readonly expectedQuerier: StagingXcmV3MultiLocation;
+    readonly maybeActualQuerier: Option<StagingXcmV3MultiLocation>;
+  } & Struct;
   readonly isVersionNotifyStarted: boolean;
-  readonly asVersionNotifyStarted: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+  readonly asVersionNotifyStarted: {
+    readonly destination: StagingXcmV3MultiLocation;
+    readonly cost: StagingXcmV3MultiassetMultiAssets;
+    readonly messageId: U8aFixed;
+  } & Struct;
   readonly isVersionNotifyRequested: boolean;
-  readonly asVersionNotifyRequested: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+  readonly asVersionNotifyRequested: {
+    readonly destination: StagingXcmV3MultiLocation;
+    readonly cost: StagingXcmV3MultiassetMultiAssets;
+    readonly messageId: U8aFixed;
+  } & Struct;
   readonly isVersionNotifyUnrequested: boolean;
-  readonly asVersionNotifyUnrequested: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+  readonly asVersionNotifyUnrequested: {
+    readonly destination: StagingXcmV3MultiLocation;
+    readonly cost: StagingXcmV3MultiassetMultiAssets;
+    readonly messageId: U8aFixed;
+  } & Struct;
   readonly isFeesPaid: boolean;
-  readonly asFeesPaid: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+  readonly asFeesPaid: {
+    readonly paying: StagingXcmV3MultiLocation;
+    readonly fees: StagingXcmV3MultiassetMultiAssets;
+  } & Struct;
   readonly isAssetsClaimed: boolean;
-  readonly asAssetsClaimed: ITuple<[H256, XcmV3MultiLocation, XcmVersionedMultiAssets]>;
+  readonly asAssetsClaimed: {
+    readonly hash_: H256;
+    readonly origin: StagingXcmV3MultiLocation;
+    readonly assets: StagingXcmVersionedMultiAssets;
+  } & Struct;
   readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail' | 'InvalidQuerierVersion' | 'InvalidQuerier' | 'VersionNotifyStarted' | 'VersionNotifyRequested' | 'VersionNotifyUnrequested' | 'FeesPaid' | 'AssetsClaimed';
 }
 
 /** @name PalletXcmOrigin */
 export interface PalletXcmOrigin extends Enum {
   readonly isXcm: boolean;
-  readonly asXcm: XcmV3MultiLocation;
+  readonly asXcm: StagingXcmV3MultiLocation;
   readonly isResponse: boolean;
-  readonly asResponse: XcmV3MultiLocation;
+  readonly asResponse: StagingXcmV3MultiLocation;
   readonly type: 'Xcm' | 'Response';
 }
 
@@ -3855,19 +4051,19 @@
 export interface PalletXcmQueryStatus extends Enum {
   readonly isPending: boolean;
   readonly asPending: {
-    readonly responder: XcmVersionedMultiLocation;
-    readonly maybeMatchQuerier: Option<XcmVersionedMultiLocation>;
+    readonly responder: StagingXcmVersionedMultiLocation;
+    readonly maybeMatchQuerier: Option<StagingXcmVersionedMultiLocation>;
     readonly maybeNotify: Option<ITuple<[u8, u8]>>;
     readonly timeout: u32;
   } & Struct;
   readonly isVersionNotifier: boolean;
   readonly asVersionNotifier: {
-    readonly origin: XcmVersionedMultiLocation;
+    readonly origin: StagingXcmVersionedMultiLocation;
     readonly isActive: bool;
   } & Struct;
   readonly isReady: boolean;
   readonly asReady: {
-    readonly response: XcmVersionedResponse;
+    readonly response: StagingXcmVersionedResponse;
     readonly at: u32;
   } & Struct;
   readonly type: 'Pending' | 'VersionNotifier' | 'Ready';
@@ -3876,8 +4072,8 @@
 /** @name PalletXcmRemoteLockedFungibleRecord */
 export interface PalletXcmRemoteLockedFungibleRecord extends Struct {
   readonly amount: u128;
-  readonly owner: XcmVersionedMultiLocation;
-  readonly locker: XcmVersionedMultiLocation;
+  readonly owner: StagingXcmVersionedMultiLocation;
+  readonly locker: StagingXcmVersionedMultiLocation;
   readonly consumers: Vec<ITuple<[Null, u128]>>;
 }
 
@@ -3915,16 +4111,16 @@
   readonly data: Bytes;
 }
 
-/** @name PolkadotParachainPrimitivesXcmpMessageFormat */
-export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {
+/** @name PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat */
+export interface PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat extends Enum {
   readonly isConcatenatedVersionedXcm: boolean;
   readonly isConcatenatedEncodedBlob: boolean;
   readonly isSignals: boolean;
   readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';
 }
 
-/** @name PolkadotPrimitivesV4AbridgedHostConfiguration */
-export interface PolkadotPrimitivesV4AbridgedHostConfiguration extends Struct {
+/** @name PolkadotPrimitivesV5AbridgedHostConfiguration */
+export interface PolkadotPrimitivesV5AbridgedHostConfiguration extends Struct {
   readonly maxCodeSize: u32;
   readonly maxHeadDataSize: u32;
   readonly maxUpwardQueueCount: u32;
@@ -3934,10 +4130,11 @@
   readonly hrmpMaxMessageNumPerCandidate: u32;
   readonly validationUpgradeCooldown: u32;
   readonly validationUpgradeDelay: u32;
+  readonly asyncBackingParams: PolkadotPrimitivesVstagingAsyncBackingParams;
 }
 
-/** @name PolkadotPrimitivesV4AbridgedHrmpChannel */
-export interface PolkadotPrimitivesV4AbridgedHrmpChannel extends Struct {
+/** @name PolkadotPrimitivesV5AbridgedHrmpChannel */
+export interface PolkadotPrimitivesV5AbridgedHrmpChannel extends Struct {
   readonly maxCapacity: u32;
   readonly maxTotalSize: u32;
   readonly maxMessageSize: u32;
@@ -3946,20 +4143,33 @@
   readonly mqcHead: Option<H256>;
 }
 
-/** @name PolkadotPrimitivesV4PersistedValidationData */
-export interface PolkadotPrimitivesV4PersistedValidationData extends Struct {
+/** @name PolkadotPrimitivesV5PersistedValidationData */
+export interface PolkadotPrimitivesV5PersistedValidationData extends Struct {
   readonly parentHead: Bytes;
   readonly relayParentNumber: u32;
   readonly relayParentStorageRoot: H256;
   readonly maxPovSize: u32;
 }
 
-/** @name PolkadotPrimitivesV4UpgradeRestriction */
-export interface PolkadotPrimitivesV4UpgradeRestriction extends Enum {
+/** @name PolkadotPrimitivesV5UpgradeGoAhead */
+export interface PolkadotPrimitivesV5UpgradeGoAhead extends Enum {
+  readonly isAbort: boolean;
+  readonly isGoAhead: boolean;
+  readonly type: 'Abort' | 'GoAhead';
+}
+
+/** @name PolkadotPrimitivesV5UpgradeRestriction */
+export interface PolkadotPrimitivesV5UpgradeRestriction extends Enum {
   readonly isPresent: boolean;
   readonly type: 'Present';
 }
 
+/** @name PolkadotPrimitivesVstagingAsyncBackingParams */
+export interface PolkadotPrimitivesVstagingAsyncBackingParams extends Struct {
+  readonly maxCandidateDepth: u32;
+  readonly allowedAncestryLen: u32;
+}
+
 /** @name SpArithmeticArithmeticError */
 export interface SpArithmeticArithmeticError extends Enum {
   readonly isUnderflow: boolean;
@@ -4132,273 +4342,15 @@
 export interface SpWeightsWeightV2Weight extends Struct {
   readonly refTime: Compact<u64>;
   readonly proofSize: Compact<u64>;
-}
-
-/** @name UpDataStructsAccessMode */
-export interface UpDataStructsAccessMode extends Enum {
-  readonly isNormal: boolean;
-  readonly isAllowList: boolean;
-  readonly type: 'Normal' | 'AllowList';
-}
-
-/** @name UpDataStructsCollection */
-export interface UpDataStructsCollection extends Struct {
-  readonly owner: AccountId32;
-  readonly mode: UpDataStructsCollectionMode;
-  readonly name: Vec<u16>;
-  readonly description: Vec<u16>;
-  readonly tokenPrefix: Bytes;
-  readonly sponsorship: UpDataStructsSponsorshipStateAccountId32;
-  readonly limits: UpDataStructsCollectionLimits;
-  readonly permissions: UpDataStructsCollectionPermissions;
-  readonly flags: U8aFixed;
-}
-
-/** @name UpDataStructsCollectionLimits */
-export interface UpDataStructsCollectionLimits extends Struct {
-  readonly accountTokenOwnershipLimit: Option<u32>;
-  readonly sponsoredDataSize: Option<u32>;
-  readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;
-  readonly tokenLimit: Option<u32>;
-  readonly sponsorTransferTimeout: Option<u32>;
-  readonly sponsorApproveTimeout: Option<u32>;
-  readonly ownerCanTransfer: Option<bool>;
-  readonly ownerCanDestroy: Option<bool>;
-  readonly transfersEnabled: Option<bool>;
 }
 
-/** @name UpDataStructsCollectionMode */
-export interface UpDataStructsCollectionMode extends Enum {
-  readonly isNft: boolean;
-  readonly isFungible: boolean;
-  readonly asFungible: u8;
-  readonly isReFungible: boolean;
-  readonly type: 'Nft' | 'Fungible' | 'ReFungible';
-}
-
-/** @name UpDataStructsCollectionPermissions */
-export interface UpDataStructsCollectionPermissions extends Struct {
-  readonly access: Option<UpDataStructsAccessMode>;
-  readonly mintMode: Option<bool>;
-  readonly nesting: Option<UpDataStructsNestingPermissions>;
-}
-
-/** @name UpDataStructsCollectionStats */
-export interface UpDataStructsCollectionStats extends Struct {
-  readonly created: u32;
-  readonly destroyed: u32;
-  readonly alive: u32;
-}
-
-/** @name UpDataStructsCreateCollectionData */
-export interface UpDataStructsCreateCollectionData extends Struct {
-  readonly mode: UpDataStructsCollectionMode;
-  readonly access: Option<UpDataStructsAccessMode>;
-  readonly name: Vec<u16>;
-  readonly description: Vec<u16>;
-  readonly tokenPrefix: Bytes;
-  readonly limits: Option<UpDataStructsCollectionLimits>;
-  readonly permissions: Option<UpDataStructsCollectionPermissions>;
-  readonly tokenPropertyPermissions: Vec<UpDataStructsPropertyKeyPermission>;
-  readonly properties: Vec<UpDataStructsProperty>;
-  readonly adminList: Vec<PalletEvmAccountBasicCrossAccountIdRepr>;
-  readonly pendingSponsor: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
-  readonly flags: U8aFixed;
-}
-
-/** @name UpDataStructsCreateFungibleData */
-export interface UpDataStructsCreateFungibleData extends Struct {
-  readonly value: u128;
-}
-
-/** @name UpDataStructsCreateItemData */
-export interface UpDataStructsCreateItemData extends Enum {
-  readonly isNft: boolean;
-  readonly asNft: UpDataStructsCreateNftData;
-  readonly isFungible: boolean;
-  readonly asFungible: UpDataStructsCreateFungibleData;
-  readonly isReFungible: boolean;
-  readonly asReFungible: UpDataStructsCreateReFungibleData;
-  readonly type: 'Nft' | 'Fungible' | 'ReFungible';
-}
-
-/** @name UpDataStructsCreateItemExData */
-export interface UpDataStructsCreateItemExData extends Enum {
-  readonly isNft: boolean;
-  readonly asNft: Vec<UpDataStructsCreateNftExData>;
-  readonly isFungible: boolean;
-  readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr,u128>;
-  readonly isRefungibleMultipleItems: boolean;
-  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExSingleOwner>;
-  readonly isRefungibleMultipleOwners: boolean;
-  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExMultipleOwners;
-  readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';
-}
-
-/** @name UpDataStructsCreateNftData */
-export interface UpDataStructsCreateNftData extends Struct {
-  readonly properties: Vec<UpDataStructsProperty>;
-}
-
-/** @name UpDataStructsCreateNftExData */
-export interface UpDataStructsCreateNftExData extends Struct {
-  readonly properties: Vec<UpDataStructsProperty>;
-  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
-}
-
-/** @name UpDataStructsCreateReFungibleData */
-export interface UpDataStructsCreateReFungibleData extends Struct {
-  readonly pieces: u128;
-  readonly properties: Vec<UpDataStructsProperty>;
-}
-
-/** @name UpDataStructsCreateRefungibleExMultipleOwners */
-export interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct {
-  readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
-  readonly properties: Vec<UpDataStructsProperty>;
-}
-
-/** @name UpDataStructsCreateRefungibleExSingleOwner */
-export interface UpDataStructsCreateRefungibleExSingleOwner extends Struct {
-  readonly user: PalletEvmAccountBasicCrossAccountIdRepr;
-  readonly pieces: u128;
-  readonly properties: Vec<UpDataStructsProperty>;
-}
-
-/** @name UpDataStructsNestingPermissions */
-export interface UpDataStructsNestingPermissions extends Struct {
-  readonly tokenOwner: bool;
-  readonly collectionAdmin: bool;
-  readonly restricted: Option<UpDataStructsOwnerRestrictedSet>;
-}
-
-/** @name UpDataStructsOwnerRestrictedSet */
-export interface UpDataStructsOwnerRestrictedSet extends BTreeSet<u32> {}
-
-/** @name UpDataStructsProperties */
-export interface UpDataStructsProperties extends Struct {
-  readonly map: UpDataStructsPropertiesMapBoundedVec;
-  readonly consumedSpace: u32;
-  readonly reserved: u32;
-}
-
-/** @name UpDataStructsPropertiesMapBoundedVec */
-export interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}
-
-/** @name UpDataStructsPropertiesMapPropertyPermission */
-export interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}
-
-/** @name UpDataStructsProperty */
-export interface UpDataStructsProperty extends Struct {
-  readonly key: Bytes;
-  readonly value: Bytes;
-}
-
-/** @name UpDataStructsPropertyKeyPermission */
-export interface UpDataStructsPropertyKeyPermission extends Struct {
-  readonly key: Bytes;
-  readonly permission: UpDataStructsPropertyPermission;
-}
-
-/** @name UpDataStructsPropertyPermission */
-export interface UpDataStructsPropertyPermission extends Struct {
-  readonly mutable: bool;
-  readonly collectionAdmin: bool;
-  readonly tokenOwner: bool;
-}
-
-/** @name UpDataStructsPropertyScope */
-export interface UpDataStructsPropertyScope extends Enum {
-  readonly isNone: boolean;
-  readonly isRmrk: boolean;
-  readonly type: 'None' | 'Rmrk';
-}
-
-/** @name UpDataStructsRpcCollection */
-export interface UpDataStructsRpcCollection extends Struct {
-  readonly owner: AccountId32;
-  readonly mode: UpDataStructsCollectionMode;
-  readonly name: Vec<u16>;
-  readonly description: Vec<u16>;
-  readonly tokenPrefix: Bytes;
-  readonly sponsorship: UpDataStructsSponsorshipStateAccountId32;
-  readonly limits: UpDataStructsCollectionLimits;
-  readonly permissions: UpDataStructsCollectionPermissions;
-  readonly tokenPropertyPermissions: Vec<UpDataStructsPropertyKeyPermission>;
-  readonly properties: Vec<UpDataStructsProperty>;
-  readonly readOnly: bool;
-  readonly flags: UpDataStructsRpcCollectionFlags;
-}
-
-/** @name UpDataStructsRpcCollectionFlags */
-export interface UpDataStructsRpcCollectionFlags extends Struct {
-  readonly foreign: bool;
-  readonly erc721metadata: bool;
-}
-
-/** @name UpDataStructsSponsoringRateLimit */
-export interface UpDataStructsSponsoringRateLimit extends Enum {
-  readonly isSponsoringDisabled: boolean;
-  readonly isBlocks: boolean;
-  readonly asBlocks: u32;
-  readonly type: 'SponsoringDisabled' | 'Blocks';
-}
-
-/** @name UpDataStructsSponsorshipStateAccountId32 */
-export interface UpDataStructsSponsorshipStateAccountId32 extends Enum {
-  readonly isDisabled: boolean;
-  readonly isUnconfirmed: boolean;
-  readonly asUnconfirmed: AccountId32;
-  readonly isConfirmed: boolean;
-  readonly asConfirmed: AccountId32;
-  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
-}
-
-/** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr */
-export interface UpDataStructsSponsorshipStateBasicCrossAccountIdRepr extends Enum {
-  readonly isDisabled: boolean;
-  readonly isUnconfirmed: boolean;
-  readonly asUnconfirmed: PalletEvmAccountBasicCrossAccountIdRepr;
-  readonly isConfirmed: boolean;
-  readonly asConfirmed: PalletEvmAccountBasicCrossAccountIdRepr;
-  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
-}
-
-/** @name UpDataStructsTokenChild */
-export interface UpDataStructsTokenChild extends Struct {
-  readonly token: u32;
-  readonly collection: u32;
-}
-
-/** @name UpDataStructsTokenData */
-export interface UpDataStructsTokenData extends Struct {
-  readonly properties: Vec<UpDataStructsProperty>;
-  readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
-  readonly pieces: u128;
-}
-
-/** @name UpPovEstimateRpcPovInfo */
-export interface UpPovEstimateRpcPovInfo extends Struct {
-  readonly proofSize: u64;
-  readonly compactProofSize: u64;
-  readonly compressedProofSize: u64;
-  readonly results: Vec<Result<Result<Null, SpRuntimeDispatchError>, SpRuntimeTransactionValidityTransactionValidityError>>;
-  readonly keyValues: Vec<UpPovEstimateRpcTrieKeyValue>;
-}
-
-/** @name UpPovEstimateRpcTrieKeyValue */
-export interface UpPovEstimateRpcTrieKeyValue extends Struct {
-  readonly key: Bytes;
-  readonly value: Bytes;
-}
-
-/** @name XcmDoubleEncoded */
-export interface XcmDoubleEncoded extends Struct {
+/** @name StagingXcmDoubleEncoded */
+export interface StagingXcmDoubleEncoded extends Struct {
   readonly encoded: Bytes;
 }
 
-/** @name XcmV2BodyId */
-export interface XcmV2BodyId extends Enum {
+/** @name StagingXcmV2BodyId */
+export interface StagingXcmV2BodyId extends Enum {
   readonly isUnit: boolean;
   readonly isNamed: boolean;
   readonly asNamed: Bytes;
@@ -4414,8 +4366,8 @@
   readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury';
 }
 
-/** @name XcmV2BodyPart */
-export interface XcmV2BodyPart extends Enum {
+/** @name StagingXcmV2BodyPart */
+export interface StagingXcmV2BodyPart extends Enum {
   readonly isVoice: boolean;
   readonly isMembers: boolean;
   readonly asMembers: {
@@ -4439,36 +4391,36 @@
   readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';
 }
 
-/** @name XcmV2Instruction */
-export interface XcmV2Instruction extends Enum {
+/** @name StagingXcmV2Instruction */
+export interface StagingXcmV2Instruction extends Enum {
   readonly isWithdrawAsset: boolean;
-  readonly asWithdrawAsset: XcmV2MultiassetMultiAssets;
+  readonly asWithdrawAsset: StagingXcmV2MultiassetMultiAssets;
   readonly isReserveAssetDeposited: boolean;
-  readonly asReserveAssetDeposited: XcmV2MultiassetMultiAssets;
+  readonly asReserveAssetDeposited: StagingXcmV2MultiassetMultiAssets;
   readonly isReceiveTeleportedAsset: boolean;
-  readonly asReceiveTeleportedAsset: XcmV2MultiassetMultiAssets;
+  readonly asReceiveTeleportedAsset: StagingXcmV2MultiassetMultiAssets;
   readonly isQueryResponse: boolean;
   readonly asQueryResponse: {
     readonly queryId: Compact<u64>;
-    readonly response: XcmV2Response;
+    readonly response: StagingXcmV2Response;
     readonly maxWeight: Compact<u64>;
   } & Struct;
   readonly isTransferAsset: boolean;
   readonly asTransferAsset: {
-    readonly assets: XcmV2MultiassetMultiAssets;
-    readonly beneficiary: XcmV2MultiLocation;
+    readonly assets: StagingXcmV2MultiassetMultiAssets;
+    readonly beneficiary: StagingXcmV2MultiLocation;
   } & Struct;
   readonly isTransferReserveAsset: boolean;
   readonly asTransferReserveAsset: {
-    readonly assets: XcmV2MultiassetMultiAssets;
-    readonly dest: XcmV2MultiLocation;
-    readonly xcm: XcmV2Xcm;
+    readonly assets: StagingXcmV2MultiassetMultiAssets;
+    readonly dest: StagingXcmV2MultiLocation;
+    readonly xcm: StagingXcmV2Xcm;
   } & Struct;
   readonly isTransact: boolean;
   readonly asTransact: {
-    readonly originType: XcmV2OriginKind;
+    readonly originType: StagingXcmV2OriginKind;
     readonly requireWeightAtMost: Compact<u64>;
-    readonly call: XcmDoubleEncoded;
+    readonly call: StagingXcmDoubleEncoded;
   } & Struct;
   readonly isHrmpNewChannelOpenRequest: boolean;
   readonly asHrmpNewChannelOpenRequest: {
@@ -4488,65 +4440,65 @@
   } & Struct;
   readonly isClearOrigin: boolean;
   readonly isDescendOrigin: boolean;
-  readonly asDescendOrigin: XcmV2MultilocationJunctions;
+  readonly asDescendOrigin: StagingXcmV2MultilocationJunctions;
   readonly isReportError: boolean;
   readonly asReportError: {
     readonly queryId: Compact<u64>;
-    readonly dest: XcmV2MultiLocation;
+    readonly dest: StagingXcmV2MultiLocation;
     readonly maxResponseWeight: Compact<u64>;
   } & Struct;
   readonly isDepositAsset: boolean;
   readonly asDepositAsset: {
-    readonly assets: XcmV2MultiassetMultiAssetFilter;
+    readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
     readonly maxAssets: Compact<u32>;
-    readonly beneficiary: XcmV2MultiLocation;
+    readonly beneficiary: StagingXcmV2MultiLocation;
   } & Struct;
   readonly isDepositReserveAsset: boolean;
   readonly asDepositReserveAsset: {
-    readonly assets: XcmV2MultiassetMultiAssetFilter;
+    readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
     readonly maxAssets: Compact<u32>;
-    readonly dest: XcmV2MultiLocation;
-    readonly xcm: XcmV2Xcm;
+    readonly dest: StagingXcmV2MultiLocation;
+    readonly xcm: StagingXcmV2Xcm;
   } & Struct;
   readonly isExchangeAsset: boolean;
   readonly asExchangeAsset: {
-    readonly give: XcmV2MultiassetMultiAssetFilter;
-    readonly receive: XcmV2MultiassetMultiAssets;
+    readonly give: StagingXcmV2MultiassetMultiAssetFilter;
+    readonly receive: StagingXcmV2MultiassetMultiAssets;
   } & Struct;
   readonly isInitiateReserveWithdraw: boolean;
   readonly asInitiateReserveWithdraw: {
-    readonly assets: XcmV2MultiassetMultiAssetFilter;
-    readonly reserve: XcmV2MultiLocation;
-    readonly xcm: XcmV2Xcm;
+    readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
+    readonly reserve: StagingXcmV2MultiLocation;
+    readonly xcm: StagingXcmV2Xcm;
   } & Struct;
   readonly isInitiateTeleport: boolean;
   readonly asInitiateTeleport: {
-    readonly assets: XcmV2MultiassetMultiAssetFilter;
-    readonly dest: XcmV2MultiLocation;
-    readonly xcm: XcmV2Xcm;
+    readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
+    readonly dest: StagingXcmV2MultiLocation;
+    readonly xcm: StagingXcmV2Xcm;
   } & Struct;
   readonly isQueryHolding: boolean;
   readonly asQueryHolding: {
     readonly queryId: Compact<u64>;
-    readonly dest: XcmV2MultiLocation;
-    readonly assets: XcmV2MultiassetMultiAssetFilter;
+    readonly dest: StagingXcmV2MultiLocation;
+    readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
     readonly maxResponseWeight: Compact<u64>;
   } & Struct;
   readonly isBuyExecution: boolean;
   readonly asBuyExecution: {
-    readonly fees: XcmV2MultiAsset;
-    readonly weightLimit: XcmV2WeightLimit;
+    readonly fees: StagingXcmV2MultiAsset;
+    readonly weightLimit: StagingXcmV2WeightLimit;
   } & Struct;
   readonly isRefundSurplus: boolean;
   readonly isSetErrorHandler: boolean;
-  readonly asSetErrorHandler: XcmV2Xcm;
+  readonly asSetErrorHandler: StagingXcmV2Xcm;
   readonly isSetAppendix: boolean;
-  readonly asSetAppendix: XcmV2Xcm;
+  readonly asSetAppendix: StagingXcmV2Xcm;
   readonly isClearError: boolean;
   readonly isClaimAsset: boolean;
   readonly asClaimAsset: {
-    readonly assets: XcmV2MultiassetMultiAssets;
-    readonly ticket: XcmV2MultiLocation;
+    readonly assets: StagingXcmV2MultiassetMultiAssets;
+    readonly ticket: StagingXcmV2MultiLocation;
   } & Struct;
   readonly isTrap: boolean;
   readonly asTrap: Compact<u64>;
@@ -4559,23 +4511,23 @@
   readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';
 }
 
-/** @name XcmV2Junction */
-export interface XcmV2Junction extends Enum {
+/** @name StagingXcmV2Junction */
+export interface StagingXcmV2Junction extends Enum {
   readonly isParachain: boolean;
   readonly asParachain: Compact<u32>;
   readonly isAccountId32: boolean;
   readonly asAccountId32: {
-    readonly network: XcmV2NetworkId;
+    readonly network: StagingXcmV2NetworkId;
     readonly id: U8aFixed;
   } & Struct;
   readonly isAccountIndex64: boolean;
   readonly asAccountIndex64: {
-    readonly network: XcmV2NetworkId;
+    readonly network: StagingXcmV2NetworkId;
     readonly index: Compact<u64>;
   } & Struct;
   readonly isAccountKey20: boolean;
   readonly asAccountKey20: {
-    readonly network: XcmV2NetworkId;
+    readonly network: StagingXcmV2NetworkId;
     readonly key: U8aFixed;
   } & Struct;
   readonly isPalletInstance: boolean;
@@ -4587,29 +4539,29 @@
   readonly isOnlyChild: boolean;
   readonly isPlurality: boolean;
   readonly asPlurality: {
-    readonly id: XcmV2BodyId;
-    readonly part: XcmV2BodyPart;
+    readonly id: StagingXcmV2BodyId;
+    readonly part: StagingXcmV2BodyPart;
   } & Struct;
   readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';
 }
 
-/** @name XcmV2MultiAsset */
-export interface XcmV2MultiAsset extends Struct {
-  readonly id: XcmV2MultiassetAssetId;
-  readonly fun: XcmV2MultiassetFungibility;
+/** @name StagingXcmV2MultiAsset */
+export interface StagingXcmV2MultiAsset extends Struct {
+  readonly id: StagingXcmV2MultiassetAssetId;
+  readonly fun: StagingXcmV2MultiassetFungibility;
 }
 
-/** @name XcmV2MultiassetAssetId */
-export interface XcmV2MultiassetAssetId extends Enum {
+/** @name StagingXcmV2MultiassetAssetId */
+export interface StagingXcmV2MultiassetAssetId extends Enum {
   readonly isConcrete: boolean;
-  readonly asConcrete: XcmV2MultiLocation;
+  readonly asConcrete: StagingXcmV2MultiLocation;
   readonly isAbstract: boolean;
   readonly asAbstract: Bytes;
   readonly type: 'Concrete' | 'Abstract';
 }
 
-/** @name XcmV2MultiassetAssetInstance */
-export interface XcmV2MultiassetAssetInstance extends Enum {
+/** @name StagingXcmV2MultiassetAssetInstance */
+export interface StagingXcmV2MultiassetAssetInstance extends Enum {
   readonly isUndefined: boolean;
   readonly isIndex: boolean;
   readonly asIndex: Compact<u128>;
@@ -4626,75 +4578,75 @@
   readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';
 }
 
-/** @name XcmV2MultiassetFungibility */
-export interface XcmV2MultiassetFungibility extends Enum {
+/** @name StagingXcmV2MultiassetFungibility */
+export interface StagingXcmV2MultiassetFungibility extends Enum {
   readonly isFungible: boolean;
   readonly asFungible: Compact<u128>;
   readonly isNonFungible: boolean;
-  readonly asNonFungible: XcmV2MultiassetAssetInstance;
+  readonly asNonFungible: StagingXcmV2MultiassetAssetInstance;
   readonly type: 'Fungible' | 'NonFungible';
 }
 
-/** @name XcmV2MultiassetMultiAssetFilter */
-export interface XcmV2MultiassetMultiAssetFilter extends Enum {
+/** @name StagingXcmV2MultiassetMultiAssetFilter */
+export interface StagingXcmV2MultiassetMultiAssetFilter extends Enum {
   readonly isDefinite: boolean;
-  readonly asDefinite: XcmV2MultiassetMultiAssets;
+  readonly asDefinite: StagingXcmV2MultiassetMultiAssets;
   readonly isWild: boolean;
-  readonly asWild: XcmV2MultiassetWildMultiAsset;
+  readonly asWild: StagingXcmV2MultiassetWildMultiAsset;
   readonly type: 'Definite' | 'Wild';
 }
 
-/** @name XcmV2MultiassetMultiAssets */
-export interface XcmV2MultiassetMultiAssets extends Vec<XcmV2MultiAsset> {}
+/** @name StagingXcmV2MultiassetMultiAssets */
+export interface StagingXcmV2MultiassetMultiAssets extends Vec<StagingXcmV2MultiAsset> {}
 
-/** @name XcmV2MultiassetWildFungibility */
-export interface XcmV2MultiassetWildFungibility extends Enum {
+/** @name StagingXcmV2MultiassetWildFungibility */
+export interface StagingXcmV2MultiassetWildFungibility extends Enum {
   readonly isFungible: boolean;
   readonly isNonFungible: boolean;
   readonly type: 'Fungible' | 'NonFungible';
 }
 
-/** @name XcmV2MultiassetWildMultiAsset */
-export interface XcmV2MultiassetWildMultiAsset extends Enum {
+/** @name StagingXcmV2MultiassetWildMultiAsset */
+export interface StagingXcmV2MultiassetWildMultiAsset extends Enum {
   readonly isAll: boolean;
   readonly isAllOf: boolean;
   readonly asAllOf: {
-    readonly id: XcmV2MultiassetAssetId;
-    readonly fun: XcmV2MultiassetWildFungibility;
+    readonly id: StagingXcmV2MultiassetAssetId;
+    readonly fun: StagingXcmV2MultiassetWildFungibility;
   } & Struct;
   readonly type: 'All' | 'AllOf';
 }
 
-/** @name XcmV2MultiLocation */
-export interface XcmV2MultiLocation extends Struct {
+/** @name StagingXcmV2MultiLocation */
+export interface StagingXcmV2MultiLocation extends Struct {
   readonly parents: u8;
-  readonly interior: XcmV2MultilocationJunctions;
+  readonly interior: StagingXcmV2MultilocationJunctions;
 }
 
-/** @name XcmV2MultilocationJunctions */
-export interface XcmV2MultilocationJunctions extends Enum {
+/** @name StagingXcmV2MultilocationJunctions */
+export interface StagingXcmV2MultilocationJunctions extends Enum {
   readonly isHere: boolean;
   readonly isX1: boolean;
-  readonly asX1: XcmV2Junction;
+  readonly asX1: StagingXcmV2Junction;
   readonly isX2: boolean;
-  readonly asX2: ITuple<[XcmV2Junction, XcmV2Junction]>;
+  readonly asX2: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction]>;
   readonly isX3: boolean;
-  readonly asX3: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+  readonly asX3: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
   readonly isX4: boolean;
-  readonly asX4: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+  readonly asX4: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
   readonly isX5: boolean;
-  readonly asX5: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+  readonly asX5: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
   readonly isX6: boolean;
-  readonly asX6: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+  readonly asX6: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
   readonly isX7: boolean;
-  readonly asX7: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+  readonly asX7: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
   readonly isX8: boolean;
-  readonly asX8: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+  readonly asX8: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
   readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';
 }
 
-/** @name XcmV2NetworkId */
-export interface XcmV2NetworkId extends Enum {
+/** @name StagingXcmV2NetworkId */
+export interface StagingXcmV2NetworkId extends Enum {
   readonly isAny: boolean;
   readonly isNamed: boolean;
   readonly asNamed: Bytes;
@@ -4703,8 +4655,8 @@
   readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';
 }
 
-/** @name XcmV2OriginKind */
-export interface XcmV2OriginKind extends Enum {
+/** @name StagingXcmV2OriginKind */
+export interface StagingXcmV2OriginKind extends Enum {
   readonly isNative: boolean;
   readonly isSovereignAccount: boolean;
   readonly isSuperuser: boolean;
@@ -4712,20 +4664,20 @@
   readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';
 }
 
-/** @name XcmV2Response */
-export interface XcmV2Response extends Enum {
+/** @name StagingXcmV2Response */
+export interface StagingXcmV2Response extends Enum {
   readonly isNull: boolean;
   readonly isAssets: boolean;
-  readonly asAssets: XcmV2MultiassetMultiAssets;
+  readonly asAssets: StagingXcmV2MultiassetMultiAssets;
   readonly isExecutionResult: boolean;
-  readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;
+  readonly asExecutionResult: Option<ITuple<[u32, StagingXcmV2TraitsError]>>;
   readonly isVersion: boolean;
   readonly asVersion: u32;
   readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';
 }
 
-/** @name XcmV2TraitsError */
-export interface XcmV2TraitsError extends Enum {
+/** @name StagingXcmV2TraitsError */
+export interface StagingXcmV2TraitsError extends Enum {
   readonly isOverflow: boolean;
   readonly isUnimplemented: boolean;
   readonly isUntrustedReserveLocation: boolean;
@@ -4757,48 +4709,48 @@
   readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';
 }
 
-/** @name XcmV2WeightLimit */
-export interface XcmV2WeightLimit extends Enum {
+/** @name StagingXcmV2WeightLimit */
+export interface StagingXcmV2WeightLimit extends Enum {
   readonly isUnlimited: boolean;
   readonly isLimited: boolean;
   readonly asLimited: Compact<u64>;
   readonly type: 'Unlimited' | 'Limited';
 }
 
-/** @name XcmV2Xcm */
-export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}
+/** @name StagingXcmV2Xcm */
+export interface StagingXcmV2Xcm extends Vec<StagingXcmV2Instruction> {}
 
-/** @name XcmV3Instruction */
-export interface XcmV3Instruction extends Enum {
+/** @name StagingXcmV3Instruction */
+export interface StagingXcmV3Instruction extends Enum {
   readonly isWithdrawAsset: boolean;
-  readonly asWithdrawAsset: XcmV3MultiassetMultiAssets;
+  readonly asWithdrawAsset: StagingXcmV3MultiassetMultiAssets;
   readonly isReserveAssetDeposited: boolean;
-  readonly asReserveAssetDeposited: XcmV3MultiassetMultiAssets;
+  readonly asReserveAssetDeposited: StagingXcmV3MultiassetMultiAssets;
   readonly isReceiveTeleportedAsset: boolean;
-  readonly asReceiveTeleportedAsset: XcmV3MultiassetMultiAssets;
+  readonly asReceiveTeleportedAsset: StagingXcmV3MultiassetMultiAssets;
   readonly isQueryResponse: boolean;
   readonly asQueryResponse: {
     readonly queryId: Compact<u64>;
-    readonly response: XcmV3Response;
+    readonly response: StagingXcmV3Response;
     readonly maxWeight: SpWeightsWeightV2Weight;
-    readonly querier: Option<XcmV3MultiLocation>;
+    readonly querier: Option<StagingXcmV3MultiLocation>;
   } & Struct;
   readonly isTransferAsset: boolean;
   readonly asTransferAsset: {
-    readonly assets: XcmV3MultiassetMultiAssets;
-    readonly beneficiary: XcmV3MultiLocation;
+    readonly assets: StagingXcmV3MultiassetMultiAssets;
+    readonly beneficiary: StagingXcmV3MultiLocation;
   } & Struct;
   readonly isTransferReserveAsset: boolean;
   readonly asTransferReserveAsset: {
-    readonly assets: XcmV3MultiassetMultiAssets;
-    readonly dest: XcmV3MultiLocation;
-    readonly xcm: XcmV3Xcm;
+    readonly assets: StagingXcmV3MultiassetMultiAssets;
+    readonly dest: StagingXcmV3MultiLocation;
+    readonly xcm: StagingXcmV3Xcm;
   } & Struct;
   readonly isTransact: boolean;
   readonly asTransact: {
-    readonly originKind: XcmV2OriginKind;
+    readonly originKind: StagingXcmV2OriginKind;
     readonly requireWeightAtMost: SpWeightsWeightV2Weight;
-    readonly call: XcmDoubleEncoded;
+    readonly call: StagingXcmDoubleEncoded;
   } & Struct;
   readonly isHrmpNewChannelOpenRequest: boolean;
   readonly asHrmpNewChannelOpenRequest: {
@@ -4818,58 +4770,58 @@
   } & Struct;
   readonly isClearOrigin: boolean;
   readonly isDescendOrigin: boolean;
-  readonly asDescendOrigin: XcmV3Junctions;
+  readonly asDescendOrigin: StagingXcmV3Junctions;
   readonly isReportError: boolean;
-  readonly asReportError: XcmV3QueryResponseInfo;
+  readonly asReportError: StagingXcmV3QueryResponseInfo;
   readonly isDepositAsset: boolean;
   readonly asDepositAsset: {
-    readonly assets: XcmV3MultiassetMultiAssetFilter;
-    readonly beneficiary: XcmV3MultiLocation;
+    readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+    readonly beneficiary: StagingXcmV3MultiLocation;
   } & Struct;
   readonly isDepositReserveAsset: boolean;
   readonly asDepositReserveAsset: {
-    readonly assets: XcmV3MultiassetMultiAssetFilter;
-    readonly dest: XcmV3MultiLocation;
-    readonly xcm: XcmV3Xcm;
+    readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+    readonly dest: StagingXcmV3MultiLocation;
+    readonly xcm: StagingXcmV3Xcm;
   } & Struct;
   readonly isExchangeAsset: boolean;
   readonly asExchangeAsset: {
-    readonly give: XcmV3MultiassetMultiAssetFilter;
-    readonly want: XcmV3MultiassetMultiAssets;
+    readonly give: StagingXcmV3MultiassetMultiAssetFilter;
+    readonly want: StagingXcmV3MultiassetMultiAssets;
     readonly maximal: bool;
   } & Struct;
   readonly isInitiateReserveWithdraw: boolean;
   readonly asInitiateReserveWithdraw: {
-    readonly assets: XcmV3MultiassetMultiAssetFilter;
-    readonly reserve: XcmV3MultiLocation;
-    readonly xcm: XcmV3Xcm;
+    readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+    readonly reserve: StagingXcmV3MultiLocation;
+    readonly xcm: StagingXcmV3Xcm;
   } & Struct;
   readonly isInitiateTeleport: boolean;
   readonly asInitiateTeleport: {
-    readonly assets: XcmV3MultiassetMultiAssetFilter;
-    readonly dest: XcmV3MultiLocation;
-    readonly xcm: XcmV3Xcm;
+    readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+    readonly dest: StagingXcmV3MultiLocation;
+    readonly xcm: StagingXcmV3Xcm;
   } & Struct;
   readonly isReportHolding: boolean;
   readonly asReportHolding: {
-    readonly responseInfo: XcmV3QueryResponseInfo;
-    readonly assets: XcmV3MultiassetMultiAssetFilter;
+    readonly responseInfo: StagingXcmV3QueryResponseInfo;
+    readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
   } & Struct;
   readonly isBuyExecution: boolean;
   readonly asBuyExecution: {
-    readonly fees: XcmV3MultiAsset;
-    readonly weightLimit: XcmV3WeightLimit;
+    readonly fees: StagingXcmV3MultiAsset;
+    readonly weightLimit: StagingXcmV3WeightLimit;
   } & Struct;
   readonly isRefundSurplus: boolean;
   readonly isSetErrorHandler: boolean;
-  readonly asSetErrorHandler: XcmV3Xcm;
+  readonly asSetErrorHandler: StagingXcmV3Xcm;
   readonly isSetAppendix: boolean;
-  readonly asSetAppendix: XcmV3Xcm;
+  readonly asSetAppendix: StagingXcmV3Xcm;
   readonly isClearError: boolean;
   readonly isClaimAsset: boolean;
   readonly asClaimAsset: {
-    readonly assets: XcmV3MultiassetMultiAssets;
-    readonly ticket: XcmV3MultiLocation;
+    readonly assets: StagingXcmV3MultiassetMultiAssets;
+    readonly ticket: StagingXcmV3MultiLocation;
   } & Struct;
   readonly isTrap: boolean;
   readonly asTrap: Compact<u64>;
@@ -4880,19 +4832,19 @@
   } & Struct;
   readonly isUnsubscribeVersion: boolean;
   readonly isBurnAsset: boolean;
-  readonly asBurnAsset: XcmV3MultiassetMultiAssets;
+  readonly asBurnAsset: StagingXcmV3MultiassetMultiAssets;
   readonly isExpectAsset: boolean;
-  readonly asExpectAsset: XcmV3MultiassetMultiAssets;
+  readonly asExpectAsset: StagingXcmV3MultiassetMultiAssets;
   readonly isExpectOrigin: boolean;
-  readonly asExpectOrigin: Option<XcmV3MultiLocation>;
+  readonly asExpectOrigin: Option<StagingXcmV3MultiLocation>;
   readonly isExpectError: boolean;
-  readonly asExpectError: Option<ITuple<[u32, XcmV3TraitsError]>>;
+  readonly asExpectError: Option<ITuple<[u32, StagingXcmV3TraitsError]>>;
   readonly isExpectTransactStatus: boolean;
-  readonly asExpectTransactStatus: XcmV3MaybeErrorCode;
+  readonly asExpectTransactStatus: StagingXcmV3MaybeErrorCode;
   readonly isQueryPallet: boolean;
   readonly asQueryPallet: {
     readonly moduleName: Bytes;
-    readonly responseInfo: XcmV3QueryResponseInfo;
+    readonly responseInfo: StagingXcmV3QueryResponseInfo;
   } & Struct;
   readonly isExpectPallet: boolean;
   readonly asExpectPallet: {
@@ -4903,35 +4855,35 @@
     readonly minCrateMinor: Compact<u32>;
   } & Struct;
   readonly isReportTransactStatus: boolean;
-  readonly asReportTransactStatus: XcmV3QueryResponseInfo;
+  readonly asReportTransactStatus: StagingXcmV3QueryResponseInfo;
   readonly isClearTransactStatus: boolean;
   readonly isUniversalOrigin: boolean;
-  readonly asUniversalOrigin: XcmV3Junction;
+  readonly asUniversalOrigin: StagingXcmV3Junction;
   readonly isExportMessage: boolean;
   readonly asExportMessage: {
-    readonly network: XcmV3JunctionNetworkId;
-    readonly destination: XcmV3Junctions;
-    readonly xcm: XcmV3Xcm;
+    readonly network: StagingXcmV3JunctionNetworkId;
+    readonly destination: StagingXcmV3Junctions;
+    readonly xcm: StagingXcmV3Xcm;
   } & Struct;
   readonly isLockAsset: boolean;
   readonly asLockAsset: {
-    readonly asset: XcmV3MultiAsset;
-    readonly unlocker: XcmV3MultiLocation;
+    readonly asset: StagingXcmV3MultiAsset;
+    readonly unlocker: StagingXcmV3MultiLocation;
   } & Struct;
   readonly isUnlockAsset: boolean;
   readonly asUnlockAsset: {
-    readonly asset: XcmV3MultiAsset;
-    readonly target: XcmV3MultiLocation;
+    readonly asset: StagingXcmV3MultiAsset;
+    readonly target: StagingXcmV3MultiLocation;
   } & Struct;
   readonly isNoteUnlockable: boolean;
   readonly asNoteUnlockable: {
-    readonly asset: XcmV3MultiAsset;
-    readonly owner: XcmV3MultiLocation;
+    readonly asset: StagingXcmV3MultiAsset;
+    readonly owner: StagingXcmV3MultiLocation;
   } & Struct;
   readonly isRequestUnlock: boolean;
   readonly asRequestUnlock: {
-    readonly asset: XcmV3MultiAsset;
-    readonly locker: XcmV3MultiLocation;
+    readonly asset: StagingXcmV3MultiAsset;
+    readonly locker: StagingXcmV3MultiLocation;
   } & Struct;
   readonly isSetFeesMode: boolean;
   readonly asSetFeesMode: {
@@ -4941,32 +4893,32 @@
   readonly asSetTopic: U8aFixed;
   readonly isClearTopic: boolean;
   readonly isAliasOrigin: boolean;
-  readonly asAliasOrigin: XcmV3MultiLocation;
+  readonly asAliasOrigin: StagingXcmV3MultiLocation;
   readonly isUnpaidExecution: boolean;
   readonly asUnpaidExecution: {
-    readonly weightLimit: XcmV3WeightLimit;
-    readonly checkOrigin: Option<XcmV3MultiLocation>;
+    readonly weightLimit: StagingXcmV3WeightLimit;
+    readonly checkOrigin: Option<StagingXcmV3MultiLocation>;
   } & Struct;
   readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'ReportHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion' | 'BurnAsset' | 'ExpectAsset' | 'ExpectOrigin' | 'ExpectError' | 'ExpectTransactStatus' | 'QueryPallet' | 'ExpectPallet' | 'ReportTransactStatus' | 'ClearTransactStatus' | 'UniversalOrigin' | 'ExportMessage' | 'LockAsset' | 'UnlockAsset' | 'NoteUnlockable' | 'RequestUnlock' | 'SetFeesMode' | 'SetTopic' | 'ClearTopic' | 'AliasOrigin' | 'UnpaidExecution';
 }
 
-/** @name XcmV3Junction */
-export interface XcmV3Junction extends Enum {
+/** @name StagingXcmV3Junction */
+export interface StagingXcmV3Junction extends Enum {
   readonly isParachain: boolean;
   readonly asParachain: Compact<u32>;
   readonly isAccountId32: boolean;
   readonly asAccountId32: {
-    readonly network: Option<XcmV3JunctionNetworkId>;
+    readonly network: Option<StagingXcmV3JunctionNetworkId>;
     readonly id: U8aFixed;
   } & Struct;
   readonly isAccountIndex64: boolean;
   readonly asAccountIndex64: {
-    readonly network: Option<XcmV3JunctionNetworkId>;
+    readonly network: Option<StagingXcmV3JunctionNetworkId>;
     readonly index: Compact<u64>;
   } & Struct;
   readonly isAccountKey20: boolean;
   readonly asAccountKey20: {
-    readonly network: Option<XcmV3JunctionNetworkId>;
+    readonly network: Option<StagingXcmV3JunctionNetworkId>;
     readonly key: U8aFixed;
   } & Struct;
   readonly isPalletInstance: boolean;
@@ -4981,16 +4933,16 @@
   readonly isOnlyChild: boolean;
   readonly isPlurality: boolean;
   readonly asPlurality: {
-    readonly id: XcmV3JunctionBodyId;
-    readonly part: XcmV3JunctionBodyPart;
+    readonly id: StagingXcmV3JunctionBodyId;
+    readonly part: StagingXcmV3JunctionBodyPart;
   } & Struct;
   readonly isGlobalConsensus: boolean;
-  readonly asGlobalConsensus: XcmV3JunctionNetworkId;
+  readonly asGlobalConsensus: StagingXcmV3JunctionNetworkId;
   readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality' | 'GlobalConsensus';
 }
 
-/** @name XcmV3JunctionBodyId */
-export interface XcmV3JunctionBodyId extends Enum {
+/** @name StagingXcmV3JunctionBodyId */
+export interface StagingXcmV3JunctionBodyId extends Enum {
   readonly isUnit: boolean;
   readonly isMoniker: boolean;
   readonly asMoniker: U8aFixed;
@@ -5006,8 +4958,8 @@
   readonly type: 'Unit' | 'Moniker' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury';
 }
 
-/** @name XcmV3JunctionBodyPart */
-export interface XcmV3JunctionBodyPart extends Enum {
+/** @name StagingXcmV3JunctionBodyPart */
+export interface StagingXcmV3JunctionBodyPart extends Enum {
   readonly isVoice: boolean;
   readonly isMembers: boolean;
   readonly asMembers: {
@@ -5031,8 +4983,8 @@
   readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';
 }
 
-/** @name XcmV3JunctionNetworkId */
-export interface XcmV3JunctionNetworkId extends Enum {
+/** @name StagingXcmV3JunctionNetworkId */
+export interface StagingXcmV3JunctionNetworkId extends Enum {
   readonly isByGenesis: boolean;
   readonly asByGenesis: U8aFixed;
   readonly isByFork: boolean;
@@ -5054,30 +5006,30 @@
   readonly type: 'ByGenesis' | 'ByFork' | 'Polkadot' | 'Kusama' | 'Westend' | 'Rococo' | 'Wococo' | 'Ethereum' | 'BitcoinCore' | 'BitcoinCash';
 }
 
-/** @name XcmV3Junctions */
-export interface XcmV3Junctions extends Enum {
+/** @name StagingXcmV3Junctions */
+export interface StagingXcmV3Junctions extends Enum {
   readonly isHere: boolean;
   readonly isX1: boolean;
-  readonly asX1: XcmV3Junction;
+  readonly asX1: StagingXcmV3Junction;
   readonly isX2: boolean;
-  readonly asX2: ITuple<[XcmV3Junction, XcmV3Junction]>;
+  readonly asX2: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction]>;
   readonly isX3: boolean;
-  readonly asX3: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+  readonly asX3: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
   readonly isX4: boolean;
-  readonly asX4: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+  readonly asX4: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
   readonly isX5: boolean;
-  readonly asX5: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+  readonly asX5: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
   readonly isX6: boolean;
-  readonly asX6: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+  readonly asX6: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
   readonly isX7: boolean;
-  readonly asX7: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+  readonly asX7: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
   readonly isX8: boolean;
-  readonly asX8: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+  readonly asX8: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
   readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';
 }
 
-/** @name XcmV3MaybeErrorCode */
-export interface XcmV3MaybeErrorCode extends Enum {
+/** @name StagingXcmV3MaybeErrorCode */
+export interface StagingXcmV3MaybeErrorCode extends Enum {
   readonly isSuccess: boolean;
   readonly isError: boolean;
   readonly asError: Bytes;
@@ -5086,23 +5038,23 @@
   readonly type: 'Success' | 'Error' | 'TruncatedError';
 }
 
-/** @name XcmV3MultiAsset */
-export interface XcmV3MultiAsset extends Struct {
-  readonly id: XcmV3MultiassetAssetId;
-  readonly fun: XcmV3MultiassetFungibility;
+/** @name StagingXcmV3MultiAsset */
+export interface StagingXcmV3MultiAsset extends Struct {
+  readonly id: StagingXcmV3MultiassetAssetId;
+  readonly fun: StagingXcmV3MultiassetFungibility;
 }
 
-/** @name XcmV3MultiassetAssetId */
-export interface XcmV3MultiassetAssetId extends Enum {
+/** @name StagingXcmV3MultiassetAssetId */
+export interface StagingXcmV3MultiassetAssetId extends Enum {
   readonly isConcrete: boolean;
-  readonly asConcrete: XcmV3MultiLocation;
+  readonly asConcrete: StagingXcmV3MultiLocation;
   readonly isAbstract: boolean;
   readonly asAbstract: U8aFixed;
   readonly type: 'Concrete' | 'Abstract';
 }
 
-/** @name XcmV3MultiassetAssetInstance */
-export interface XcmV3MultiassetAssetInstance extends Enum {
+/** @name StagingXcmV3MultiassetAssetInstance */
+export interface StagingXcmV3MultiassetAssetInstance extends Enum {
   readonly isUndefined: boolean;
   readonly isIndex: boolean;
   readonly asIndex: Compact<u128>;
@@ -5117,61 +5069,61 @@
   readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32';
 }
 
-/** @name XcmV3MultiassetFungibility */
-export interface XcmV3MultiassetFungibility extends Enum {
+/** @name StagingXcmV3MultiassetFungibility */
+export interface StagingXcmV3MultiassetFungibility extends Enum {
   readonly isFungible: boolean;
   readonly asFungible: Compact<u128>;
   readonly isNonFungible: boolean;
-  readonly asNonFungible: XcmV3MultiassetAssetInstance;
+  readonly asNonFungible: StagingXcmV3MultiassetAssetInstance;
   readonly type: 'Fungible' | 'NonFungible';
 }
 
-/** @name XcmV3MultiassetMultiAssetFilter */
-export interface XcmV3MultiassetMultiAssetFilter extends Enum {
+/** @name StagingXcmV3MultiassetMultiAssetFilter */
+export interface StagingXcmV3MultiassetMultiAssetFilter extends Enum {
   readonly isDefinite: boolean;
-  readonly asDefinite: XcmV3MultiassetMultiAssets;
+  readonly asDefinite: StagingXcmV3MultiassetMultiAssets;
   readonly isWild: boolean;
-  readonly asWild: XcmV3MultiassetWildMultiAsset;
+  readonly asWild: StagingXcmV3MultiassetWildMultiAsset;
   readonly type: 'Definite' | 'Wild';
 }
 
-/** @name XcmV3MultiassetMultiAssets */
-export interface XcmV3MultiassetMultiAssets extends Vec<XcmV3MultiAsset> {}
+/** @name StagingXcmV3MultiassetMultiAssets */
+export interface StagingXcmV3MultiassetMultiAssets extends Vec<StagingXcmV3MultiAsset> {}
 
-/** @name XcmV3MultiassetWildFungibility */
-export interface XcmV3MultiassetWildFungibility extends Enum {
+/** @name StagingXcmV3MultiassetWildFungibility */
+export interface StagingXcmV3MultiassetWildFungibility extends Enum {
   readonly isFungible: boolean;
   readonly isNonFungible: boolean;
   readonly type: 'Fungible' | 'NonFungible';
 }
 
-/** @name XcmV3MultiassetWildMultiAsset */
-export interface XcmV3MultiassetWildMultiAsset extends Enum {
+/** @name StagingXcmV3MultiassetWildMultiAsset */
+export interface StagingXcmV3MultiassetWildMultiAsset extends Enum {
   readonly isAll: boolean;
   readonly isAllOf: boolean;
   readonly asAllOf: {
-    readonly id: XcmV3MultiassetAssetId;
-    readonly fun: XcmV3MultiassetWildFungibility;
+    readonly id: StagingXcmV3MultiassetAssetId;
+    readonly fun: StagingXcmV3MultiassetWildFungibility;
   } & Struct;
   readonly isAllCounted: boolean;
   readonly asAllCounted: Compact<u32>;
   readonly isAllOfCounted: boolean;
   readonly asAllOfCounted: {
-    readonly id: XcmV3MultiassetAssetId;
-    readonly fun: XcmV3MultiassetWildFungibility;
+    readonly id: StagingXcmV3MultiassetAssetId;
+    readonly fun: StagingXcmV3MultiassetWildFungibility;
     readonly count: Compact<u32>;
   } & Struct;
   readonly type: 'All' | 'AllOf' | 'AllCounted' | 'AllOfCounted';
 }
 
-/** @name XcmV3MultiLocation */
-export interface XcmV3MultiLocation extends Struct {
+/** @name StagingXcmV3MultiLocation */
+export interface StagingXcmV3MultiLocation extends Struct {
   readonly parents: u8;
-  readonly interior: XcmV3Junctions;
+  readonly interior: StagingXcmV3Junctions;
 }
 
-/** @name XcmV3PalletInfo */
-export interface XcmV3PalletInfo extends Struct {
+/** @name StagingXcmV3PalletInfo */
+export interface StagingXcmV3PalletInfo extends Struct {
   readonly index: Compact<u32>;
   readonly name: Bytes;
   readonly moduleName: Bytes;
@@ -5180,31 +5132,31 @@
   readonly patch: Compact<u32>;
 }
 
-/** @name XcmV3QueryResponseInfo */
-export interface XcmV3QueryResponseInfo extends Struct {
-  readonly destination: XcmV3MultiLocation;
+/** @name StagingXcmV3QueryResponseInfo */
+export interface StagingXcmV3QueryResponseInfo extends Struct {
+  readonly destination: StagingXcmV3MultiLocation;
   readonly queryId: Compact<u64>;
   readonly maxWeight: SpWeightsWeightV2Weight;
 }
 
-/** @name XcmV3Response */
-export interface XcmV3Response extends Enum {
+/** @name StagingXcmV3Response */
+export interface StagingXcmV3Response extends Enum {
   readonly isNull: boolean;
   readonly isAssets: boolean;
-  readonly asAssets: XcmV3MultiassetMultiAssets;
+  readonly asAssets: StagingXcmV3MultiassetMultiAssets;
   readonly isExecutionResult: boolean;
-  readonly asExecutionResult: Option<ITuple<[u32, XcmV3TraitsError]>>;
+  readonly asExecutionResult: Option<ITuple<[u32, StagingXcmV3TraitsError]>>;
   readonly isVersion: boolean;
   readonly asVersion: u32;
   readonly isPalletsInfo: boolean;
-  readonly asPalletsInfo: Vec<XcmV3PalletInfo>;
+  readonly asPalletsInfo: Vec<StagingXcmV3PalletInfo>;
   readonly isDispatchResult: boolean;
-  readonly asDispatchResult: XcmV3MaybeErrorCode;
+  readonly asDispatchResult: StagingXcmV3MaybeErrorCode;
   readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version' | 'PalletsInfo' | 'DispatchResult';
 }
 
-/** @name XcmV3TraitsError */
-export interface XcmV3TraitsError extends Enum {
+/** @name StagingXcmV3TraitsError */
+export interface StagingXcmV3TraitsError extends Enum {
   readonly isOverflow: boolean;
   readonly isUnimplemented: boolean;
   readonly isUntrustedReserveLocation: boolean;
@@ -5250,78 +5202,336 @@
   readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'LocationFull' | 'LocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'ExpectationFalse' | 'PalletNotFound' | 'NameMismatch' | 'VersionIncompatible' | 'HoldingWouldOverflow' | 'ExportError' | 'ReanchorFailed' | 'NoDeal' | 'FeesNotMet' | 'LockError' | 'NoPermission' | 'Unanchored' | 'NotDepositable' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable' | 'ExceedsStackLimit';
 }
 
-/** @name XcmV3TraitsOutcome */
-export interface XcmV3TraitsOutcome extends Enum {
+/** @name StagingXcmV3TraitsOutcome */
+export interface StagingXcmV3TraitsOutcome extends Enum {
   readonly isComplete: boolean;
   readonly asComplete: SpWeightsWeightV2Weight;
   readonly isIncomplete: boolean;
-  readonly asIncomplete: ITuple<[SpWeightsWeightV2Weight, XcmV3TraitsError]>;
+  readonly asIncomplete: ITuple<[SpWeightsWeightV2Weight, StagingXcmV3TraitsError]>;
   readonly isError: boolean;
-  readonly asError: XcmV3TraitsError;
+  readonly asError: StagingXcmV3TraitsError;
   readonly type: 'Complete' | 'Incomplete' | 'Error';
 }
 
-/** @name XcmV3WeightLimit */
-export interface XcmV3WeightLimit extends Enum {
+/** @name StagingXcmV3WeightLimit */
+export interface StagingXcmV3WeightLimit extends Enum {
   readonly isUnlimited: boolean;
   readonly isLimited: boolean;
   readonly asLimited: SpWeightsWeightV2Weight;
   readonly type: 'Unlimited' | 'Limited';
 }
 
-/** @name XcmV3Xcm */
-export interface XcmV3Xcm extends Vec<XcmV3Instruction> {}
+/** @name StagingXcmV3Xcm */
+export interface StagingXcmV3Xcm extends Vec<StagingXcmV3Instruction> {}
 
-/** @name XcmVersionedAssetId */
-export interface XcmVersionedAssetId extends Enum {
+/** @name StagingXcmVersionedAssetId */
+export interface StagingXcmVersionedAssetId extends Enum {
   readonly isV3: boolean;
-  readonly asV3: XcmV3MultiassetAssetId;
+  readonly asV3: StagingXcmV3MultiassetAssetId;
   readonly type: 'V3';
 }
 
-/** @name XcmVersionedMultiAsset */
-export interface XcmVersionedMultiAsset extends Enum {
+/** @name StagingXcmVersionedMultiAsset */
+export interface StagingXcmVersionedMultiAsset extends Enum {
   readonly isV2: boolean;
-  readonly asV2: XcmV2MultiAsset;
+  readonly asV2: StagingXcmV2MultiAsset;
   readonly isV3: boolean;
-  readonly asV3: XcmV3MultiAsset;
+  readonly asV3: StagingXcmV3MultiAsset;
   readonly type: 'V2' | 'V3';
 }
 
-/** @name XcmVersionedMultiAssets */
-export interface XcmVersionedMultiAssets extends Enum {
+/** @name StagingXcmVersionedMultiAssets */
+export interface StagingXcmVersionedMultiAssets extends Enum {
   readonly isV2: boolean;
-  readonly asV2: XcmV2MultiassetMultiAssets;
+  readonly asV2: StagingXcmV2MultiassetMultiAssets;
   readonly isV3: boolean;
-  readonly asV3: XcmV3MultiassetMultiAssets;
+  readonly asV3: StagingXcmV3MultiassetMultiAssets;
   readonly type: 'V2' | 'V3';
 }
 
-/** @name XcmVersionedMultiLocation */
-export interface XcmVersionedMultiLocation extends Enum {
+/** @name StagingXcmVersionedMultiLocation */
+export interface StagingXcmVersionedMultiLocation extends Enum {
   readonly isV2: boolean;
-  readonly asV2: XcmV2MultiLocation;
+  readonly asV2: StagingXcmV2MultiLocation;
   readonly isV3: boolean;
-  readonly asV3: XcmV3MultiLocation;
+  readonly asV3: StagingXcmV3MultiLocation;
   readonly type: 'V2' | 'V3';
 }
 
-/** @name XcmVersionedResponse */
-export interface XcmVersionedResponse extends Enum {
+/** @name StagingXcmVersionedResponse */
+export interface StagingXcmVersionedResponse extends Enum {
   readonly isV2: boolean;
-  readonly asV2: XcmV2Response;
+  readonly asV2: StagingXcmV2Response;
   readonly isV3: boolean;
-  readonly asV3: XcmV3Response;
+  readonly asV3: StagingXcmV3Response;
   readonly type: 'V2' | 'V3';
 }
 
-/** @name XcmVersionedXcm */
-export interface XcmVersionedXcm extends Enum {
+/** @name StagingXcmVersionedXcm */
+export interface StagingXcmVersionedXcm extends Enum {
   readonly isV2: boolean;
-  readonly asV2: XcmV2Xcm;
+  readonly asV2: StagingXcmV2Xcm;
   readonly isV3: boolean;
-  readonly asV3: XcmV3Xcm;
+  readonly asV3: StagingXcmV3Xcm;
   readonly type: 'V2' | 'V3';
 }
 
+/** @name UpDataStructsAccessMode */
+export interface UpDataStructsAccessMode extends Enum {
+  readonly isNormal: boolean;
+  readonly isAllowList: boolean;
+  readonly type: 'Normal' | 'AllowList';
+}
+
+/** @name UpDataStructsCollection */
+export interface UpDataStructsCollection extends Struct {
+  readonly owner: AccountId32;
+  readonly mode: UpDataStructsCollectionMode;
+  readonly name: Vec<u16>;
+  readonly description: Vec<u16>;
+  readonly tokenPrefix: Bytes;
+  readonly sponsorship: UpDataStructsSponsorshipStateAccountId32;
+  readonly limits: UpDataStructsCollectionLimits;
+  readonly permissions: UpDataStructsCollectionPermissions;
+  readonly flags: U8aFixed;
+}
+
+/** @name UpDataStructsCollectionLimits */
+export interface UpDataStructsCollectionLimits extends Struct {
+  readonly accountTokenOwnershipLimit: Option<u32>;
+  readonly sponsoredDataSize: Option<u32>;
+  readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;
+  readonly tokenLimit: Option<u32>;
+  readonly sponsorTransferTimeout: Option<u32>;
+  readonly sponsorApproveTimeout: Option<u32>;
+  readonly ownerCanTransfer: Option<bool>;
+  readonly ownerCanDestroy: Option<bool>;
+  readonly transfersEnabled: Option<bool>;
+}
+
+/** @name UpDataStructsCollectionMode */
+export interface UpDataStructsCollectionMode extends Enum {
+  readonly isNft: boolean;
+  readonly isFungible: boolean;
+  readonly asFungible: u8;
+  readonly isReFungible: boolean;
+  readonly type: 'Nft' | 'Fungible' | 'ReFungible';
+}
+
+/** @name UpDataStructsCollectionPermissions */
+export interface UpDataStructsCollectionPermissions extends Struct {
+  readonly access: Option<UpDataStructsAccessMode>;
+  readonly mintMode: Option<bool>;
+  readonly nesting: Option<UpDataStructsNestingPermissions>;
+}
+
+/** @name UpDataStructsCollectionStats */
+export interface UpDataStructsCollectionStats extends Struct {
+  readonly created: u32;
+  readonly destroyed: u32;
+  readonly alive: u32;
+}
+
+/** @name UpDataStructsCreateCollectionData */
+export interface UpDataStructsCreateCollectionData extends Struct {
+  readonly mode: UpDataStructsCollectionMode;
+  readonly access: Option<UpDataStructsAccessMode>;
+  readonly name: Vec<u16>;
+  readonly description: Vec<u16>;
+  readonly tokenPrefix: Bytes;
+  readonly limits: Option<UpDataStructsCollectionLimits>;
+  readonly permissions: Option<UpDataStructsCollectionPermissions>;
+  readonly tokenPropertyPermissions: Vec<UpDataStructsPropertyKeyPermission>;
+  readonly properties: Vec<UpDataStructsProperty>;
+  readonly adminList: Vec<PalletEvmAccountBasicCrossAccountIdRepr>;
+  readonly pendingSponsor: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
+  readonly flags: U8aFixed;
+}
+
+/** @name UpDataStructsCreateFungibleData */
+export interface UpDataStructsCreateFungibleData extends Struct {
+  readonly value: u128;
+}
+
+/** @name UpDataStructsCreateItemData */
+export interface UpDataStructsCreateItemData extends Enum {
+  readonly isNft: boolean;
+  readonly asNft: UpDataStructsCreateNftData;
+  readonly isFungible: boolean;
+  readonly asFungible: UpDataStructsCreateFungibleData;
+  readonly isReFungible: boolean;
+  readonly asReFungible: UpDataStructsCreateReFungibleData;
+  readonly type: 'Nft' | 'Fungible' | 'ReFungible';
+}
+
+/** @name UpDataStructsCreateItemExData */
+export interface UpDataStructsCreateItemExData extends Enum {
+  readonly isNft: boolean;
+  readonly asNft: Vec<UpDataStructsCreateNftExData>;
+  readonly isFungible: boolean;
+  readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr,u128>;
+  readonly isRefungibleMultipleItems: boolean;
+  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExSingleOwner>;
+  readonly isRefungibleMultipleOwners: boolean;
+  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExMultipleOwners;
+  readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';
+}
+
+/** @name UpDataStructsCreateNftData */
+export interface UpDataStructsCreateNftData extends Struct {
+  readonly properties: Vec<UpDataStructsProperty>;
+}
+
+/** @name UpDataStructsCreateNftExData */
+export interface UpDataStructsCreateNftExData extends Struct {
+  readonly properties: Vec<UpDataStructsProperty>;
+  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
+}
+
+/** @name UpDataStructsCreateReFungibleData */
+export interface UpDataStructsCreateReFungibleData extends Struct {
+  readonly pieces: u128;
+  readonly properties: Vec<UpDataStructsProperty>;
+}
+
+/** @name UpDataStructsCreateRefungibleExMultipleOwners */
+export interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct {
+  readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
+  readonly properties: Vec<UpDataStructsProperty>;
+}
+
+/** @name UpDataStructsCreateRefungibleExSingleOwner */
+export interface UpDataStructsCreateRefungibleExSingleOwner extends Struct {
+  readonly user: PalletEvmAccountBasicCrossAccountIdRepr;
+  readonly pieces: u128;
+  readonly properties: Vec<UpDataStructsProperty>;
+}
+
+/** @name UpDataStructsNestingPermissions */
+export interface UpDataStructsNestingPermissions extends Struct {
+  readonly tokenOwner: bool;
+  readonly collectionAdmin: bool;
+  readonly restricted: Option<UpDataStructsOwnerRestrictedSet>;
+}
+
+/** @name UpDataStructsOwnerRestrictedSet */
+export interface UpDataStructsOwnerRestrictedSet extends BTreeSet<u32> {}
+
+/** @name UpDataStructsProperties */
+export interface UpDataStructsProperties extends Struct {
+  readonly map: UpDataStructsPropertiesMapBoundedVec;
+  readonly consumedSpace: u32;
+  readonly reserved: u32;
+}
+
+/** @name UpDataStructsPropertiesMapBoundedVec */
+export interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}
+
+/** @name UpDataStructsPropertiesMapPropertyPermission */
+export interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}
+
+/** @name UpDataStructsProperty */
+export interface UpDataStructsProperty extends Struct {
+  readonly key: Bytes;
+  readonly value: Bytes;
+}
+
+/** @name UpDataStructsPropertyKeyPermission */
+export interface UpDataStructsPropertyKeyPermission extends Struct {
+  readonly key: Bytes;
+  readonly permission: UpDataStructsPropertyPermission;
+}
+
+/** @name UpDataStructsPropertyPermission */
+export interface UpDataStructsPropertyPermission extends Struct {
+  readonly mutable: bool;
+  readonly collectionAdmin: bool;
+  readonly tokenOwner: bool;
+}
+
+/** @name UpDataStructsPropertyScope */
+export interface UpDataStructsPropertyScope extends Enum {
+  readonly isNone: boolean;
+  readonly isRmrk: boolean;
+  readonly type: 'None' | 'Rmrk';
+}
+
+/** @name UpDataStructsRpcCollection */
+export interface UpDataStructsRpcCollection extends Struct {
+  readonly owner: AccountId32;
+  readonly mode: UpDataStructsCollectionMode;
+  readonly name: Vec<u16>;
+  readonly description: Vec<u16>;
+  readonly tokenPrefix: Bytes;
+  readonly sponsorship: UpDataStructsSponsorshipStateAccountId32;
+  readonly limits: UpDataStructsCollectionLimits;
+  readonly permissions: UpDataStructsCollectionPermissions;
+  readonly tokenPropertyPermissions: Vec<UpDataStructsPropertyKeyPermission>;
+  readonly properties: Vec<UpDataStructsProperty>;
+  readonly readOnly: bool;
+  readonly flags: UpDataStructsRpcCollectionFlags;
+}
+
+/** @name UpDataStructsRpcCollectionFlags */
+export interface UpDataStructsRpcCollectionFlags extends Struct {
+  readonly foreign: bool;
+  readonly erc721metadata: bool;
+}
+
+/** @name UpDataStructsSponsoringRateLimit */
+export interface UpDataStructsSponsoringRateLimit extends Enum {
+  readonly isSponsoringDisabled: boolean;
+  readonly isBlocks: boolean;
+  readonly asBlocks: u32;
+  readonly type: 'SponsoringDisabled' | 'Blocks';
+}
+
+/** @name UpDataStructsSponsorshipStateAccountId32 */
+export interface UpDataStructsSponsorshipStateAccountId32 extends Enum {
+  readonly isDisabled: boolean;
+  readonly isUnconfirmed: boolean;
+  readonly asUnconfirmed: AccountId32;
+  readonly isConfirmed: boolean;
+  readonly asConfirmed: AccountId32;
+  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
+}
+
+/** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr */
+export interface UpDataStructsSponsorshipStateBasicCrossAccountIdRepr extends Enum {
+  readonly isDisabled: boolean;
+  readonly isUnconfirmed: boolean;
+  readonly asUnconfirmed: PalletEvmAccountBasicCrossAccountIdRepr;
+  readonly isConfirmed: boolean;
+  readonly asConfirmed: PalletEvmAccountBasicCrossAccountIdRepr;
+  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
+}
+
+/** @name UpDataStructsTokenChild */
+export interface UpDataStructsTokenChild extends Struct {
+  readonly token: u32;
+  readonly collection: u32;
+}
+
+/** @name UpDataStructsTokenData */
+export interface UpDataStructsTokenData extends Struct {
+  readonly properties: Vec<UpDataStructsProperty>;
+  readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
+  readonly pieces: u128;
+}
+
+/** @name UpPovEstimateRpcPovInfo */
+export interface UpPovEstimateRpcPovInfo extends Struct {
+  readonly proofSize: u64;
+  readonly compactProofSize: u64;
+  readonly compressedProofSize: u64;
+  readonly results: Vec<Result<Result<Null, SpRuntimeDispatchError>, SpRuntimeTransactionValidityTransactionValidityError>>;
+  readonly keyValues: Vec<UpPovEstimateRpcTrieKeyValue>;
+}
+
+/** @name UpPovEstimateRpcTrieKeyValue */
+export interface UpPovEstimateRpcTrieKeyValue extends Struct {
+  readonly key: Bytes;
+  readonly value: Bytes;
+}
+
 export type PHANTOM_DEFAULT = 'default';
modifiedtests/src/interfaces/lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/lookup.ts
+++ b/tests/src/interfaces/lookup.ts
@@ -5,7 +5,7 @@
 
 export default {
   /**
-   * Lookup3: frame_system::AccountInfo<Index, pallet_balances::types::AccountData<Balance>>
+   * Lookup3: frame_system::AccountInfo<Nonce, pallet_balances::types::AccountData<Balance>>
    **/
   FrameSystemAccountInfo: {
     nonce: 'u32',
@@ -456,71 +456,71 @@
     _enum: {
       TransferredMultiAssets: {
         sender: 'AccountId32',
-        assets: 'XcmV3MultiassetMultiAssets',
-        fee: 'XcmV3MultiAsset',
-        dest: 'XcmV3MultiLocation'
+        assets: 'StagingXcmV3MultiassetMultiAssets',
+        fee: 'StagingXcmV3MultiAsset',
+        dest: 'StagingXcmV3MultiLocation'
       }
     }
   },
   /**
-   * Lookup49: xcm::v3::multiasset::MultiAssets
+   * Lookup49: staging_xcm::v3::multiasset::MultiAssets
    **/
-  XcmV3MultiassetMultiAssets: 'Vec<XcmV3MultiAsset>',
+  StagingXcmV3MultiassetMultiAssets: 'Vec<StagingXcmV3MultiAsset>',
   /**
-   * Lookup51: xcm::v3::multiasset::MultiAsset
+   * Lookup51: staging_xcm::v3::multiasset::MultiAsset
    **/
-  XcmV3MultiAsset: {
-    id: 'XcmV3MultiassetAssetId',
-    fun: 'XcmV3MultiassetFungibility'
+  StagingXcmV3MultiAsset: {
+    id: 'StagingXcmV3MultiassetAssetId',
+    fun: 'StagingXcmV3MultiassetFungibility'
   },
   /**
-   * Lookup52: xcm::v3::multiasset::AssetId
+   * Lookup52: staging_xcm::v3::multiasset::AssetId
    **/
-  XcmV3MultiassetAssetId: {
+  StagingXcmV3MultiassetAssetId: {
     _enum: {
-      Concrete: 'XcmV3MultiLocation',
+      Concrete: 'StagingXcmV3MultiLocation',
       Abstract: '[u8;32]'
     }
   },
   /**
-   * Lookup53: xcm::v3::multilocation::MultiLocation
+   * Lookup53: staging_xcm::v3::multilocation::MultiLocation
    **/
-  XcmV3MultiLocation: {
+  StagingXcmV3MultiLocation: {
     parents: 'u8',
-    interior: 'XcmV3Junctions'
+    interior: 'StagingXcmV3Junctions'
   },
   /**
-   * Lookup54: xcm::v3::junctions::Junctions
+   * Lookup54: staging_xcm::v3::junctions::Junctions
    **/
-  XcmV3Junctions: {
+  StagingXcmV3Junctions: {
     _enum: {
       Here: 'Null',
-      X1: 'XcmV3Junction',
-      X2: '(XcmV3Junction,XcmV3Junction)',
-      X3: '(XcmV3Junction,XcmV3Junction,XcmV3Junction)',
-      X4: '(XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction)',
-      X5: '(XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction)',
-      X6: '(XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction)',
-      X7: '(XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction)',
-      X8: '(XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction,XcmV3Junction)'
+      X1: 'StagingXcmV3Junction',
+      X2: '(StagingXcmV3Junction,StagingXcmV3Junction)',
+      X3: '(StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction)',
+      X4: '(StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction)',
+      X5: '(StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction)',
+      X6: '(StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction)',
+      X7: '(StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction)',
+      X8: '(StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction,StagingXcmV3Junction)'
     }
   },
   /**
-   * Lookup55: xcm::v3::junction::Junction
+   * Lookup55: staging_xcm::v3::junction::Junction
    **/
-  XcmV3Junction: {
+  StagingXcmV3Junction: {
     _enum: {
       Parachain: 'Compact<u32>',
       AccountId32: {
-        network: 'Option<XcmV3JunctionNetworkId>',
+        network: 'Option<StagingXcmV3JunctionNetworkId>',
         id: '[u8;32]',
       },
       AccountIndex64: {
-        network: 'Option<XcmV3JunctionNetworkId>',
+        network: 'Option<StagingXcmV3JunctionNetworkId>',
         index: 'Compact<u64>',
       },
       AccountKey20: {
-        network: 'Option<XcmV3JunctionNetworkId>',
+        network: 'Option<StagingXcmV3JunctionNetworkId>',
         key: '[u8;20]',
       },
       PalletInstance: 'u8',
@@ -531,16 +531,16 @@
       },
       OnlyChild: 'Null',
       Plurality: {
-        id: 'XcmV3JunctionBodyId',
-        part: 'XcmV3JunctionBodyPart',
+        id: 'StagingXcmV3JunctionBodyId',
+        part: 'StagingXcmV3JunctionBodyPart',
       },
-      GlobalConsensus: 'XcmV3JunctionNetworkId'
+      GlobalConsensus: 'StagingXcmV3JunctionNetworkId'
     }
   },
   /**
-   * Lookup58: xcm::v3::junction::NetworkId
+   * Lookup58: staging_xcm::v3::junction::NetworkId
    **/
-  XcmV3JunctionNetworkId: {
+  StagingXcmV3JunctionNetworkId: {
     _enum: {
       ByGenesis: '[u8;32]',
       ByFork: {
@@ -560,9 +560,9 @@
     }
   },
   /**
-   * Lookup60: xcm::v3::junction::BodyId
+   * Lookup60: staging_xcm::v3::junction::BodyId
    **/
-  XcmV3JunctionBodyId: {
+  StagingXcmV3JunctionBodyId: {
     _enum: {
       Unit: 'Null',
       Moniker: '[u8;4]',
@@ -577,9 +577,9 @@
     }
   },
   /**
-   * Lookup61: xcm::v3::junction::BodyPart
+   * Lookup61: staging_xcm::v3::junction::BodyPart
    **/
-  XcmV3JunctionBodyPart: {
+  StagingXcmV3JunctionBodyPart: {
     _enum: {
       Voice: 'Null',
       Members: {
@@ -600,18 +600,18 @@
     }
   },
   /**
-   * Lookup62: xcm::v3::multiasset::Fungibility
+   * Lookup62: staging_xcm::v3::multiasset::Fungibility
    **/
-  XcmV3MultiassetFungibility: {
+  StagingXcmV3MultiassetFungibility: {
     _enum: {
       Fungible: 'Compact<u128>',
-      NonFungible: 'XcmV3MultiassetAssetInstance'
+      NonFungible: 'StagingXcmV3MultiassetAssetInstance'
     }
   },
   /**
-   * Lookup63: xcm::v3::multiasset::AssetInstance
+   * Lookup63: staging_xcm::v3::multiasset::AssetInstance
    **/
-  XcmV3MultiassetAssetInstance: {
+  StagingXcmV3MultiassetAssetInstance: {
     _enum: {
       Undefined: 'Null',
       Index: 'Compact<u128>',
@@ -627,91 +627,99 @@
   OrmlTokensModuleEvent: {
     _enum: {
       Endowed: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       DustLost: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       Transfer: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         from: 'AccountId32',
         to: 'AccountId32',
         amount: 'u128',
       },
       Reserved: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       Unreserved: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       ReserveRepatriated: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         from: 'AccountId32',
         to: 'AccountId32',
         amount: 'u128',
         status: 'FrameSupportTokensMiscBalanceStatus',
       },
       BalanceSet: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         free: 'u128',
         reserved: 'u128',
       },
       TotalIssuanceSet: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         amount: 'u128',
       },
       Withdrawn: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       Slashed: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         freeAmount: 'u128',
         reservedAmount: 'u128',
       },
       Deposited: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       LockSet: {
         lockId: '[u8;8]',
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       LockRemoved: {
         lockId: '[u8;8]',
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
       },
       Locked: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
         amount: 'u128',
       },
       Unlocked: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         who: 'AccountId32',
+        amount: 'u128',
+      },
+      Issued: {
+        currencyId: 'PalletForeignAssetsAssetId',
+        amount: 'u128',
+      },
+      Rescinded: {
+        currencyId: 'PalletForeignAssetsAssetId',
         amount: 'u128'
       }
     }
   },
   /**
-   * Lookup67: pallet_foreign_assets::AssetIds
+   * Lookup67: pallet_foreign_assets::AssetId
    **/
-  PalletForeignAssetsAssetIds: {
+  PalletForeignAssetsAssetId: {
     _enum: {
       ForeignAssetId: 'u32',
       NativeAssetId: 'PalletForeignAssetsNativeCurrency'
@@ -1227,15 +1235,15 @@
    * Lookup99: cumulus_primitives_parachain_inherent::ParachainInherentData
    **/
   CumulusPrimitivesParachainInherentParachainInherentData: {
-    validationData: 'PolkadotPrimitivesV4PersistedValidationData',
+    validationData: 'PolkadotPrimitivesV5PersistedValidationData',
     relayChainState: 'SpTrieStorageProof',
     downwardMessages: 'Vec<PolkadotCorePrimitivesInboundDownwardMessage>',
     horizontalMessages: 'BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>'
   },
   /**
-   * Lookup100: polkadot_primitives::v4::PersistedValidationData<primitive_types::H256, N>
+   * Lookup100: polkadot_primitives::v5::PersistedValidationData<primitive_types::H256, N>
    **/
-  PolkadotPrimitivesV4PersistedValidationData: {
+  PolkadotPrimitivesV5PersistedValidationData: {
     parentHead: 'Bytes',
     relayParentNumber: 'u32',
     relayParentStorageRoot: 'H256',
@@ -1444,93 +1452,93 @@
   OrmlXtokensModuleCall: {
     _enum: {
       transfer: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         amount: 'u128',
-        dest: 'XcmVersionedMultiLocation',
-        destWeightLimit: 'XcmV3WeightLimit',
+        dest: 'StagingXcmVersionedMultiLocation',
+        destWeightLimit: 'StagingXcmV3WeightLimit',
       },
       transfer_multiasset: {
-        asset: 'XcmVersionedMultiAsset',
-        dest: 'XcmVersionedMultiLocation',
-        destWeightLimit: 'XcmV3WeightLimit',
+        asset: 'StagingXcmVersionedMultiAsset',
+        dest: 'StagingXcmVersionedMultiLocation',
+        destWeightLimit: 'StagingXcmV3WeightLimit',
       },
       transfer_with_fee: {
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         amount: 'u128',
         fee: 'u128',
-        dest: 'XcmVersionedMultiLocation',
-        destWeightLimit: 'XcmV3WeightLimit',
+        dest: 'StagingXcmVersionedMultiLocation',
+        destWeightLimit: 'StagingXcmV3WeightLimit',
       },
       transfer_multiasset_with_fee: {
-        asset: 'XcmVersionedMultiAsset',
-        fee: 'XcmVersionedMultiAsset',
-        dest: 'XcmVersionedMultiLocation',
-        destWeightLimit: 'XcmV3WeightLimit',
+        asset: 'StagingXcmVersionedMultiAsset',
+        fee: 'StagingXcmVersionedMultiAsset',
+        dest: 'StagingXcmVersionedMultiLocation',
+        destWeightLimit: 'StagingXcmV3WeightLimit',
       },
       transfer_multicurrencies: {
-        currencies: 'Vec<(PalletForeignAssetsAssetIds,u128)>',
+        currencies: 'Vec<(PalletForeignAssetsAssetId,u128)>',
         feeItem: 'u32',
-        dest: 'XcmVersionedMultiLocation',
-        destWeightLimit: 'XcmV3WeightLimit',
+        dest: 'StagingXcmVersionedMultiLocation',
+        destWeightLimit: 'StagingXcmV3WeightLimit',
       },
       transfer_multiassets: {
-        assets: 'XcmVersionedMultiAssets',
+        assets: 'StagingXcmVersionedMultiAssets',
         feeItem: 'u32',
-        dest: 'XcmVersionedMultiLocation',
-        destWeightLimit: 'XcmV3WeightLimit'
+        dest: 'StagingXcmVersionedMultiLocation',
+        destWeightLimit: 'StagingXcmV3WeightLimit'
       }
     }
   },
   /**
-   * Lookup128: xcm::VersionedMultiLocation
+   * Lookup128: staging_xcm::VersionedMultiLocation
    **/
-  XcmVersionedMultiLocation: {
+  StagingXcmVersionedMultiLocation: {
     _enum: {
       __Unused0: 'Null',
-      V2: 'XcmV2MultiLocation',
+      V2: 'StagingXcmV2MultiLocation',
       __Unused2: 'Null',
-      V3: 'XcmV3MultiLocation'
+      V3: 'StagingXcmV3MultiLocation'
     }
   },
   /**
-   * Lookup129: xcm::v2::multilocation::MultiLocation
+   * Lookup129: staging_xcm::v2::multilocation::MultiLocation
    **/
-  XcmV2MultiLocation: {
+  StagingXcmV2MultiLocation: {
     parents: 'u8',
-    interior: 'XcmV2MultilocationJunctions'
+    interior: 'StagingXcmV2MultilocationJunctions'
   },
   /**
-   * Lookup130: xcm::v2::multilocation::Junctions
+   * Lookup130: staging_xcm::v2::multilocation::Junctions
    **/
-  XcmV2MultilocationJunctions: {
+  StagingXcmV2MultilocationJunctions: {
     _enum: {
       Here: 'Null',
-      X1: 'XcmV2Junction',
-      X2: '(XcmV2Junction,XcmV2Junction)',
-      X3: '(XcmV2Junction,XcmV2Junction,XcmV2Junction)',
-      X4: '(XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction)',
-      X5: '(XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction)',
-      X6: '(XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction)',
-      X7: '(XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction)',
-      X8: '(XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction,XcmV2Junction)'
+      X1: 'StagingXcmV2Junction',
+      X2: '(StagingXcmV2Junction,StagingXcmV2Junction)',
+      X3: '(StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction)',
+      X4: '(StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction)',
+      X5: '(StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction)',
+      X6: '(StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction)',
+      X7: '(StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction)',
+      X8: '(StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction,StagingXcmV2Junction)'
     }
   },
   /**
-   * Lookup131: xcm::v2::junction::Junction
+   * Lookup131: staging_xcm::v2::junction::Junction
    **/
-  XcmV2Junction: {
+  StagingXcmV2Junction: {
     _enum: {
       Parachain: 'Compact<u32>',
       AccountId32: {
-        network: 'XcmV2NetworkId',
+        network: 'StagingXcmV2NetworkId',
         id: '[u8;32]',
       },
       AccountIndex64: {
-        network: 'XcmV2NetworkId',
+        network: 'StagingXcmV2NetworkId',
         index: 'Compact<u64>',
       },
       AccountKey20: {
-        network: 'XcmV2NetworkId',
+        network: 'StagingXcmV2NetworkId',
         key: '[u8;20]',
       },
       PalletInstance: 'u8',
@@ -1538,15 +1546,15 @@
       GeneralKey: 'Bytes',
       OnlyChild: 'Null',
       Plurality: {
-        id: 'XcmV2BodyId',
-        part: 'XcmV2BodyPart'
+        id: 'StagingXcmV2BodyId',
+        part: 'StagingXcmV2BodyPart'
       }
     }
   },
   /**
-   * Lookup132: xcm::v2::NetworkId
+   * Lookup132: staging_xcm::v2::NetworkId
    **/
-  XcmV2NetworkId: {
+  StagingXcmV2NetworkId: {
     _enum: {
       Any: 'Null',
       Named: 'Bytes',
@@ -1555,9 +1563,9 @@
     }
   },
   /**
-   * Lookup134: xcm::v2::BodyId
+   * Lookup134: staging_xcm::v2::BodyId
    **/
-  XcmV2BodyId: {
+  StagingXcmV2BodyId: {
     _enum: {
       Unit: 'Null',
       Named: 'Bytes',
@@ -1572,9 +1580,9 @@
     }
   },
   /**
-   * Lookup135: xcm::v2::BodyPart
+   * Lookup135: staging_xcm::v2::BodyPart
    **/
-  XcmV2BodyPart: {
+  StagingXcmV2BodyPart: {
     _enum: {
       Voice: 'Null',
       Members: {
@@ -1595,54 +1603,54 @@
     }
   },
   /**
-   * Lookup136: xcm::v3::WeightLimit
+   * Lookup136: staging_xcm::v3::WeightLimit
    **/
-  XcmV3WeightLimit: {
+  StagingXcmV3WeightLimit: {
     _enum: {
       Unlimited: 'Null',
       Limited: 'SpWeightsWeightV2Weight'
     }
   },
   /**
-   * Lookup137: xcm::VersionedMultiAsset
+   * Lookup137: staging_xcm::VersionedMultiAsset
    **/
-  XcmVersionedMultiAsset: {
+  StagingXcmVersionedMultiAsset: {
     _enum: {
       __Unused0: 'Null',
-      V2: 'XcmV2MultiAsset',
+      V2: 'StagingXcmV2MultiAsset',
       __Unused2: 'Null',
-      V3: 'XcmV3MultiAsset'
+      V3: 'StagingXcmV3MultiAsset'
     }
   },
   /**
-   * Lookup138: xcm::v2::multiasset::MultiAsset
+   * Lookup138: staging_xcm::v2::multiasset::MultiAsset
    **/
-  XcmV2MultiAsset: {
-    id: 'XcmV2MultiassetAssetId',
-    fun: 'XcmV2MultiassetFungibility'
+  StagingXcmV2MultiAsset: {
+    id: 'StagingXcmV2MultiassetAssetId',
+    fun: 'StagingXcmV2MultiassetFungibility'
   },
   /**
-   * Lookup139: xcm::v2::multiasset::AssetId
+   * Lookup139: staging_xcm::v2::multiasset::AssetId
    **/
-  XcmV2MultiassetAssetId: {
+  StagingXcmV2MultiassetAssetId: {
     _enum: {
-      Concrete: 'XcmV2MultiLocation',
+      Concrete: 'StagingXcmV2MultiLocation',
       Abstract: 'Bytes'
     }
   },
   /**
-   * Lookup140: xcm::v2::multiasset::Fungibility
+   * Lookup140: staging_xcm::v2::multiasset::Fungibility
    **/
-  XcmV2MultiassetFungibility: {
+  StagingXcmV2MultiassetFungibility: {
     _enum: {
       Fungible: 'Compact<u128>',
-      NonFungible: 'XcmV2MultiassetAssetInstance'
+      NonFungible: 'StagingXcmV2MultiassetAssetInstance'
     }
   },
   /**
-   * Lookup141: xcm::v2::multiasset::AssetInstance
+   * Lookup141: staging_xcm::v2::multiasset::AssetInstance
    **/
-  XcmV2MultiassetAssetInstance: {
+  StagingXcmV2MultiassetAssetInstance: {
     _enum: {
       Undefined: 'Null',
       Index: 'Compact<u128>',
@@ -1654,20 +1662,20 @@
     }
   },
   /**
-   * Lookup144: xcm::VersionedMultiAssets
+   * Lookup144: staging_xcm::VersionedMultiAssets
    **/
-  XcmVersionedMultiAssets: {
+  StagingXcmVersionedMultiAssets: {
     _enum: {
       __Unused0: 'Null',
-      V2: 'XcmV2MultiassetMultiAssets',
+      V2: 'StagingXcmV2MultiassetMultiAssets',
       __Unused2: 'Null',
-      V3: 'XcmV3MultiassetMultiAssets'
+      V3: 'StagingXcmV3MultiassetMultiAssets'
     }
   },
   /**
-   * Lookup145: xcm::v2::multiasset::MultiAssets
+   * Lookup145: staging_xcm::v2::multiasset::MultiAssets
    **/
-  XcmV2MultiassetMultiAssets: 'Vec<XcmV2MultiAsset>',
+  StagingXcmV2MultiassetMultiAssets: 'Vec<StagingXcmV2MultiAsset>',
   /**
    * Lookup147: orml_tokens::module::Call<T>
    **/
@@ -1675,28 +1683,28 @@
     _enum: {
       transfer: {
         dest: 'MultiAddress',
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         amount: 'Compact<u128>',
       },
       transfer_all: {
         dest: 'MultiAddress',
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         keepAlive: 'bool',
       },
       transfer_keep_alive: {
         dest: 'MultiAddress',
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         amount: 'Compact<u128>',
       },
       force_transfer: {
         source: 'MultiAddress',
         dest: 'MultiAddress',
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         amount: 'Compact<u128>',
       },
       set_balance: {
         who: 'MultiAddress',
-        currencyId: 'PalletForeignAssetsAssetIds',
+        currencyId: 'PalletForeignAssetsAssetId',
         newFree: 'Compact<u128>',
         newReserved: 'Compact<u128>'
       }
@@ -2201,8 +2209,8 @@
    **/
   PalletXcmOrigin: {
     _enum: {
-      Xcm: 'XcmV3MultiLocation',
-      Response: 'XcmV3MultiLocation'
+      Xcm: 'StagingXcmV3MultiLocation',
+      Response: 'StagingXcmV3MultiLocation'
     }
   },
   /**
@@ -2330,51 +2338,51 @@
   PalletXcmCall: {
     _enum: {
       send: {
-        dest: 'XcmVersionedMultiLocation',
-        message: 'XcmVersionedXcm',
+        dest: 'StagingXcmVersionedMultiLocation',
+        message: 'StagingXcmVersionedXcm',
       },
       teleport_assets: {
-        dest: 'XcmVersionedMultiLocation',
-        beneficiary: 'XcmVersionedMultiLocation',
-        assets: 'XcmVersionedMultiAssets',
+        dest: 'StagingXcmVersionedMultiLocation',
+        beneficiary: 'StagingXcmVersionedMultiLocation',
+        assets: 'StagingXcmVersionedMultiAssets',
         feeAssetItem: 'u32',
       },
       reserve_transfer_assets: {
-        dest: 'XcmVersionedMultiLocation',
-        beneficiary: 'XcmVersionedMultiLocation',
-        assets: 'XcmVersionedMultiAssets',
+        dest: 'StagingXcmVersionedMultiLocation',
+        beneficiary: 'StagingXcmVersionedMultiLocation',
+        assets: 'StagingXcmVersionedMultiAssets',
         feeAssetItem: 'u32',
       },
       execute: {
-        message: 'XcmVersionedXcm',
+        message: 'StagingXcmVersionedXcm',
         maxWeight: 'SpWeightsWeightV2Weight',
       },
       force_xcm_version: {
-        location: 'XcmV3MultiLocation',
-        xcmVersion: 'u32',
+        location: 'StagingXcmV3MultiLocation',
+        version: 'u32',
       },
       force_default_xcm_version: {
         maybeXcmVersion: 'Option<u32>',
       },
       force_subscribe_version_notify: {
-        location: 'XcmVersionedMultiLocation',
+        location: 'StagingXcmVersionedMultiLocation',
       },
       force_unsubscribe_version_notify: {
-        location: 'XcmVersionedMultiLocation',
+        location: 'StagingXcmVersionedMultiLocation',
       },
       limited_reserve_transfer_assets: {
-        dest: 'XcmVersionedMultiLocation',
-        beneficiary: 'XcmVersionedMultiLocation',
-        assets: 'XcmVersionedMultiAssets',
+        dest: 'StagingXcmVersionedMultiLocation',
+        beneficiary: 'StagingXcmVersionedMultiLocation',
+        assets: 'StagingXcmVersionedMultiAssets',
         feeAssetItem: 'u32',
-        weightLimit: 'XcmV3WeightLimit',
+        weightLimit: 'StagingXcmV3WeightLimit',
       },
       limited_teleport_assets: {
-        dest: 'XcmVersionedMultiLocation',
-        beneficiary: 'XcmVersionedMultiLocation',
-        assets: 'XcmVersionedMultiAssets',
+        dest: 'StagingXcmVersionedMultiLocation',
+        beneficiary: 'StagingXcmVersionedMultiLocation',
+        assets: 'StagingXcmVersionedMultiAssets',
         feeAssetItem: 'u32',
-        weightLimit: 'XcmV3WeightLimit',
+        weightLimit: 'StagingXcmV3WeightLimit',
       },
       force_suspension: {
         suspended: 'bool'
@@ -2382,46 +2390,46 @@
     }
   },
   /**
-   * Lookup225: xcm::VersionedXcm<RuntimeCall>
+   * Lookup225: staging_xcm::VersionedXcm<RuntimeCall>
    **/
-  XcmVersionedXcm: {
+  StagingXcmVersionedXcm: {
     _enum: {
       __Unused0: 'Null',
       __Unused1: 'Null',
-      V2: 'XcmV2Xcm',
-      V3: 'XcmV3Xcm'
+      V2: 'StagingXcmV2Xcm',
+      V3: 'StagingXcmV3Xcm'
     }
   },
   /**
-   * Lookup226: xcm::v2::Xcm<RuntimeCall>
+   * Lookup226: staging_xcm::v2::Xcm<RuntimeCall>
    **/
-  XcmV2Xcm: 'Vec<XcmV2Instruction>',
+  StagingXcmV2Xcm: 'Vec<StagingXcmV2Instruction>',
   /**
-   * Lookup228: xcm::v2::Instruction<RuntimeCall>
+   * Lookup228: staging_xcm::v2::Instruction<RuntimeCall>
    **/
-  XcmV2Instruction: {
+  StagingXcmV2Instruction: {
     _enum: {
-      WithdrawAsset: 'XcmV2MultiassetMultiAssets',
-      ReserveAssetDeposited: 'XcmV2MultiassetMultiAssets',
-      ReceiveTeleportedAsset: 'XcmV2MultiassetMultiAssets',
+      WithdrawAsset: 'StagingXcmV2MultiassetMultiAssets',
+      ReserveAssetDeposited: 'StagingXcmV2MultiassetMultiAssets',
+      ReceiveTeleportedAsset: 'StagingXcmV2MultiassetMultiAssets',
       QueryResponse: {
         queryId: 'Compact<u64>',
-        response: 'XcmV2Response',
+        response: 'StagingXcmV2Response',
         maxWeight: 'Compact<u64>',
       },
       TransferAsset: {
-        assets: 'XcmV2MultiassetMultiAssets',
-        beneficiary: 'XcmV2MultiLocation',
+        assets: 'StagingXcmV2MultiassetMultiAssets',
+        beneficiary: 'StagingXcmV2MultiLocation',
       },
       TransferReserveAsset: {
-        assets: 'XcmV2MultiassetMultiAssets',
-        dest: 'XcmV2MultiLocation',
-        xcm: 'XcmV2Xcm',
+        assets: 'StagingXcmV2MultiassetMultiAssets',
+        dest: 'StagingXcmV2MultiLocation',
+        xcm: 'StagingXcmV2Xcm',
       },
       Transact: {
-        originType: 'XcmV2OriginKind',
+        originType: 'StagingXcmV2OriginKind',
         requireWeightAtMost: 'Compact<u64>',
-        call: 'XcmDoubleEncoded',
+        call: 'StagingXcmDoubleEncoded',
       },
       HrmpNewChannelOpenRequest: {
         sender: 'Compact<u32>',
@@ -2437,54 +2445,54 @@
         recipient: 'Compact<u32>',
       },
       ClearOrigin: 'Null',
-      DescendOrigin: 'XcmV2MultilocationJunctions',
+      DescendOrigin: 'StagingXcmV2MultilocationJunctions',
       ReportError: {
         queryId: 'Compact<u64>',
-        dest: 'XcmV2MultiLocation',
+        dest: 'StagingXcmV2MultiLocation',
         maxResponseWeight: 'Compact<u64>',
       },
       DepositAsset: {
-        assets: 'XcmV2MultiassetMultiAssetFilter',
+        assets: 'StagingXcmV2MultiassetMultiAssetFilter',
         maxAssets: 'Compact<u32>',
-        beneficiary: 'XcmV2MultiLocation',
+        beneficiary: 'StagingXcmV2MultiLocation',
       },
       DepositReserveAsset: {
-        assets: 'XcmV2MultiassetMultiAssetFilter',
+        assets: 'StagingXcmV2MultiassetMultiAssetFilter',
         maxAssets: 'Compact<u32>',
-        dest: 'XcmV2MultiLocation',
-        xcm: 'XcmV2Xcm',
+        dest: 'StagingXcmV2MultiLocation',
+        xcm: 'StagingXcmV2Xcm',
       },
       ExchangeAsset: {
-        give: 'XcmV2MultiassetMultiAssetFilter',
-        receive: 'XcmV2MultiassetMultiAssets',
+        give: 'StagingXcmV2MultiassetMultiAssetFilter',
+        receive: 'StagingXcmV2MultiassetMultiAssets',
       },
       InitiateReserveWithdraw: {
-        assets: 'XcmV2MultiassetMultiAssetFilter',
-        reserve: 'XcmV2MultiLocation',
-        xcm: 'XcmV2Xcm',
+        assets: 'StagingXcmV2MultiassetMultiAssetFilter',
+        reserve: 'StagingXcmV2MultiLocation',
+        xcm: 'StagingXcmV2Xcm',
       },
       InitiateTeleport: {
-        assets: 'XcmV2MultiassetMultiAssetFilter',
-        dest: 'XcmV2MultiLocation',
-        xcm: 'XcmV2Xcm',
+        assets: 'StagingXcmV2MultiassetMultiAssetFilter',
+        dest: 'StagingXcmV2MultiLocation',
+        xcm: 'StagingXcmV2Xcm',
       },
       QueryHolding: {
         queryId: 'Compact<u64>',
-        dest: 'XcmV2MultiLocation',
-        assets: 'XcmV2MultiassetMultiAssetFilter',
+        dest: 'StagingXcmV2MultiLocation',
+        assets: 'StagingXcmV2MultiassetMultiAssetFilter',
         maxResponseWeight: 'Compact<u64>',
       },
       BuyExecution: {
-        fees: 'XcmV2MultiAsset',
-        weightLimit: 'XcmV2WeightLimit',
+        fees: 'StagingXcmV2MultiAsset',
+        weightLimit: 'StagingXcmV2WeightLimit',
       },
       RefundSurplus: 'Null',
-      SetErrorHandler: 'XcmV2Xcm',
-      SetAppendix: 'XcmV2Xcm',
+      SetErrorHandler: 'StagingXcmV2Xcm',
+      SetAppendix: 'StagingXcmV2Xcm',
       ClearError: 'Null',
       ClaimAsset: {
-        assets: 'XcmV2MultiassetMultiAssets',
-        ticket: 'XcmV2MultiLocation',
+        assets: 'StagingXcmV2MultiassetMultiAssets',
+        ticket: 'StagingXcmV2MultiLocation',
       },
       Trap: 'Compact<u64>',
       SubscribeVersion: {
@@ -2495,20 +2503,20 @@
     }
   },
   /**
-   * Lookup229: xcm::v2::Response
+   * Lookup229: staging_xcm::v2::Response
    **/
-  XcmV2Response: {
+  StagingXcmV2Response: {
     _enum: {
       Null: 'Null',
-      Assets: 'XcmV2MultiassetMultiAssets',
-      ExecutionResult: 'Option<(u32,XcmV2TraitsError)>',
+      Assets: 'StagingXcmV2MultiassetMultiAssets',
+      ExecutionResult: 'Option<(u32,StagingXcmV2TraitsError)>',
       Version: 'u32'
     }
   },
   /**
-   * Lookup232: xcm::v2::traits::Error
+   * Lookup232: staging_xcm::v2::traits::Error
    **/
-  XcmV2TraitsError: {
+  StagingXcmV2TraitsError: {
     _enum: {
       Overflow: 'Null',
       Unimplemented: 'Null',
@@ -2539,84 +2547,84 @@
     }
   },
   /**
-   * Lookup233: xcm::v2::OriginKind
+   * Lookup233: staging_xcm::v2::OriginKind
    **/
-  XcmV2OriginKind: {
+  StagingXcmV2OriginKind: {
     _enum: ['Native', 'SovereignAccount', 'Superuser', 'Xcm']
   },
   /**
-   * Lookup234: xcm::double_encoded::DoubleEncoded<T>
+   * Lookup234: staging_xcm::double_encoded::DoubleEncoded<T>
    **/
-  XcmDoubleEncoded: {
+  StagingXcmDoubleEncoded: {
     encoded: 'Bytes'
   },
   /**
-   * Lookup235: xcm::v2::multiasset::MultiAssetFilter
+   * Lookup235: staging_xcm::v2::multiasset::MultiAssetFilter
    **/
-  XcmV2MultiassetMultiAssetFilter: {
+  StagingXcmV2MultiassetMultiAssetFilter: {
     _enum: {
-      Definite: 'XcmV2MultiassetMultiAssets',
-      Wild: 'XcmV2MultiassetWildMultiAsset'
+      Definite: 'StagingXcmV2MultiassetMultiAssets',
+      Wild: 'StagingXcmV2MultiassetWildMultiAsset'
     }
   },
   /**
-   * Lookup236: xcm::v2::multiasset::WildMultiAsset
+   * Lookup236: staging_xcm::v2::multiasset::WildMultiAsset
    **/
-  XcmV2MultiassetWildMultiAsset: {
+  StagingXcmV2MultiassetWildMultiAsset: {
     _enum: {
       All: 'Null',
       AllOf: {
-        id: 'XcmV2MultiassetAssetId',
-        fun: 'XcmV2MultiassetWildFungibility'
+        id: 'StagingXcmV2MultiassetAssetId',
+        fun: 'StagingXcmV2MultiassetWildFungibility'
       }
     }
   },
   /**
-   * Lookup237: xcm::v2::multiasset::WildFungibility
+   * Lookup237: staging_xcm::v2::multiasset::WildFungibility
    **/
-  XcmV2MultiassetWildFungibility: {
+  StagingXcmV2MultiassetWildFungibility: {
     _enum: ['Fungible', 'NonFungible']
   },
   /**
-   * Lookup238: xcm::v2::WeightLimit
+   * Lookup238: staging_xcm::v2::WeightLimit
    **/
-  XcmV2WeightLimit: {
+  StagingXcmV2WeightLimit: {
     _enum: {
       Unlimited: 'Null',
       Limited: 'Compact<u64>'
     }
   },
   /**
-   * Lookup239: xcm::v3::Xcm<Call>
+   * Lookup239: staging_xcm::v3::Xcm<Call>
    **/
-  XcmV3Xcm: 'Vec<XcmV3Instruction>',
+  StagingXcmV3Xcm: 'Vec<StagingXcmV3Instruction>',
   /**
-   * Lookup241: xcm::v3::Instruction<Call>
+   * Lookup241: staging_xcm::v3::Instruction<Call>
    **/
-  XcmV3Instruction: {
+  StagingXcmV3Instruction: {
     _enum: {
-      WithdrawAsset: 'XcmV3MultiassetMultiAssets',
-      ReserveAssetDeposited: 'XcmV3MultiassetMultiAssets',
-      ReceiveTeleportedAsset: 'XcmV3MultiassetMultiAssets',
+      WithdrawAsset: 'StagingXcmV3MultiassetMultiAssets',
+      ReserveAssetDeposited: 'StagingXcmV3MultiassetMultiAssets',
+      ReceiveTeleportedAsset: 'StagingXcmV3MultiassetMultiAssets',
       QueryResponse: {
         queryId: 'Compact<u64>',
-        response: 'XcmV3Response',
+        response: 'StagingXcmV3Response',
         maxWeight: 'SpWeightsWeightV2Weight',
-        querier: 'Option<XcmV3MultiLocation>',
+        querier: 'Option<StagingXcmV3MultiLocation>',
       },
       TransferAsset: {
-        assets: 'XcmV3MultiassetMultiAssets',
-        beneficiary: 'XcmV3MultiLocation',
+        assets: 'StagingXcmV3MultiassetMultiAssets',
+        beneficiary: 'StagingXcmV3MultiLocation',
       },
       TransferReserveAsset: {
-        assets: 'XcmV3MultiassetMultiAssets',
-        dest: 'XcmV3MultiLocation',
-        xcm: 'XcmV3Xcm',
+        assets: 'StagingXcmV3MultiassetMultiAssets',
+        dest: 'StagingXcmV3MultiLocation',
+        xcm: 'StagingXcmV3Xcm',
       },
       Transact: {
-        originKind: 'XcmV2OriginKind',
+        originKind: 'StagingXcmV2OriginKind',
         requireWeightAtMost: 'SpWeightsWeightV2Weight',
-        call: 'XcmDoubleEncoded',
+        call: 'StagingXcmDoubleEncoded',
       },
       HrmpNewChannelOpenRequest: {
         sender: 'Compact<u32>',
@@ -2632,47 +2640,47 @@
         recipient: 'Compact<u32>',
       },
       ClearOrigin: 'Null',
-      DescendOrigin: 'XcmV3Junctions',
-      ReportError: 'XcmV3QueryResponseInfo',
+      DescendOrigin: 'StagingXcmV3Junctions',
+      ReportError: 'StagingXcmV3QueryResponseInfo',
       DepositAsset: {
-        assets: 'XcmV3MultiassetMultiAssetFilter',
-        beneficiary: 'XcmV3MultiLocation',
+        assets: 'StagingXcmV3MultiassetMultiAssetFilter',
+        beneficiary: 'StagingXcmV3MultiLocation',
       },
       DepositReserveAsset: {
-        assets: 'XcmV3MultiassetMultiAssetFilter',
-        dest: 'XcmV3MultiLocation',
-        xcm: 'XcmV3Xcm',
+        assets: 'StagingXcmV3MultiassetMultiAssetFilter',
+        dest: 'StagingXcmV3MultiLocation',
+        xcm: 'StagingXcmV3Xcm',
       },
       ExchangeAsset: {
-        give: 'XcmV3MultiassetMultiAssetFilter',
-        want: 'XcmV3MultiassetMultiAssets',
+        give: 'StagingXcmV3MultiassetMultiAssetFilter',
+        want: 'StagingXcmV3MultiassetMultiAssets',
         maximal: 'bool',
       },
       InitiateReserveWithdraw: {
-        assets: 'XcmV3MultiassetMultiAssetFilter',
-        reserve: 'XcmV3MultiLocation',
-        xcm: 'XcmV3Xcm',
+        assets: 'StagingXcmV3MultiassetMultiAssetFilter',
+        reserve: 'StagingXcmV3MultiLocation',
+        xcm: 'StagingXcmV3Xcm',
       },
       InitiateTeleport: {
-        assets: 'XcmV3MultiassetMultiAssetFilter',
-        dest: 'XcmV3MultiLocation',
-        xcm: 'XcmV3Xcm',
+        assets: 'StagingXcmV3MultiassetMultiAssetFilter',
+        dest: 'StagingXcmV3MultiLocation',
+        xcm: 'StagingXcmV3Xcm',
       },
       ReportHolding: {
-        responseInfo: 'XcmV3QueryResponseInfo',
-        assets: 'XcmV3MultiassetMultiAssetFilter',
+        responseInfo: 'StagingXcmV3QueryResponseInfo',
+        assets: 'StagingXcmV3MultiassetMultiAssetFilter',
       },
       BuyExecution: {
-        fees: 'XcmV3MultiAsset',
-        weightLimit: 'XcmV3WeightLimit',
+        fees: 'StagingXcmV3MultiAsset',
+        weightLimit: 'StagingXcmV3WeightLimit',
       },
       RefundSurplus: 'Null',
-      SetErrorHandler: 'XcmV3Xcm',
-      SetAppendix: 'XcmV3Xcm',
+      SetErrorHandler: 'StagingXcmV3Xcm',
+      SetAppendix: 'StagingXcmV3Xcm',
       ClearError: 'Null',
       ClaimAsset: {
-        assets: 'XcmV3MultiassetMultiAssets',
-        ticket: 'XcmV3MultiLocation',
+        assets: 'StagingXcmV3MultiassetMultiAssets',
+        ticket: 'StagingXcmV3MultiLocation',
       },
       Trap: 'Compact<u64>',
       SubscribeVersion: {
@@ -2680,14 +2688,14 @@
         maxResponseWeight: 'SpWeightsWeightV2Weight',
       },
       UnsubscribeVersion: 'Null',
-      BurnAsset: 'XcmV3MultiassetMultiAssets',
-      ExpectAsset: 'XcmV3MultiassetMultiAssets',
-      ExpectOrigin: 'Option<XcmV3MultiLocation>',
-      ExpectError: 'Option<(u32,XcmV3TraitsError)>',
-      ExpectTransactStatus: 'XcmV3MaybeErrorCode',
+      BurnAsset: 'StagingXcmV3MultiassetMultiAssets',
+      ExpectAsset: 'StagingXcmV3MultiassetMultiAssets',
+      ExpectOrigin: 'Option<StagingXcmV3MultiLocation>',
+      ExpectError: 'Option<(u32,StagingXcmV3TraitsError)>',
+      ExpectTransactStatus: 'StagingXcmV3MaybeErrorCode',
       QueryPallet: {
         moduleName: 'Bytes',
-        responseInfo: 'XcmV3QueryResponseInfo',
+        responseInfo: 'StagingXcmV3QueryResponseInfo',
       },
       ExpectPallet: {
         index: 'Compact<u32>',
@@ -2696,59 +2704,59 @@
         crateMajor: 'Compact<u32>',
         minCrateMinor: 'Compact<u32>',
       },
-      ReportTransactStatus: 'XcmV3QueryResponseInfo',
+      ReportTransactStatus: 'StagingXcmV3QueryResponseInfo',
       ClearTransactStatus: 'Null',
-      UniversalOrigin: 'XcmV3Junction',
+      UniversalOrigin: 'StagingXcmV3Junction',
       ExportMessage: {
-        network: 'XcmV3JunctionNetworkId',
-        destination: 'XcmV3Junctions',
-        xcm: 'XcmV3Xcm',
+        network: 'StagingXcmV3JunctionNetworkId',
+        destination: 'StagingXcmV3Junctions',
+        xcm: 'StagingXcmV3Xcm',
       },
       LockAsset: {
-        asset: 'XcmV3MultiAsset',
-        unlocker: 'XcmV3MultiLocation',
+        asset: 'StagingXcmV3MultiAsset',
+        unlocker: 'StagingXcmV3MultiLocation',
       },
       UnlockAsset: {
-        asset: 'XcmV3MultiAsset',
-        target: 'XcmV3MultiLocation',
+        asset: 'StagingXcmV3MultiAsset',
+        target: 'StagingXcmV3MultiLocation',
       },
       NoteUnlockable: {
-        asset: 'XcmV3MultiAsset',
-        owner: 'XcmV3MultiLocation',
+        asset: 'StagingXcmV3MultiAsset',
+        owner: 'StagingXcmV3MultiLocation',
       },
       RequestUnlock: {
-        asset: 'XcmV3MultiAsset',
-        locker: 'XcmV3MultiLocation',
+        asset: 'StagingXcmV3MultiAsset',
+        locker: 'StagingXcmV3MultiLocation',
       },
       SetFeesMode: {
         jitWithdraw: 'bool',
       },
       SetTopic: '[u8;32]',
       ClearTopic: 'Null',
-      AliasOrigin: 'XcmV3MultiLocation',
+      AliasOrigin: 'StagingXcmV3MultiLocation',
       UnpaidExecution: {
-        weightLimit: 'XcmV3WeightLimit',
-        checkOrigin: 'Option<XcmV3MultiLocation>'
+        weightLimit: 'StagingXcmV3WeightLimit',
+        checkOrigin: 'Option<StagingXcmV3MultiLocation>'
       }
     }
   },
   /**
-   * Lookup242: xcm::v3::Response
+   * Lookup242: staging_xcm::v3::Response
    **/
-  XcmV3Response: {
+  StagingXcmV3Response: {
     _enum: {
       Null: 'Null',
-      Assets: 'XcmV3MultiassetMultiAssets',
-      ExecutionResult: 'Option<(u32,XcmV3TraitsError)>',
+      Assets: 'StagingXcmV3MultiassetMultiAssets',
+      ExecutionResult: 'Option<(u32,StagingXcmV3TraitsError)>',
       Version: 'u32',
-      PalletsInfo: 'Vec<XcmV3PalletInfo>',
-      DispatchResult: 'XcmV3MaybeErrorCode'
+      PalletsInfo: 'Vec<StagingXcmV3PalletInfo>',
+      DispatchResult: 'StagingXcmV3MaybeErrorCode'
     }
   },
   /**
-   * Lookup245: xcm::v3::traits::Error
+   * Lookup245: staging_xcm::v3::traits::Error
    **/
-  XcmV3TraitsError: {
+  StagingXcmV3TraitsError: {
     _enum: {
       Overflow: 'Null',
       Unimplemented: 'Null',
@@ -2793,9 +2801,9 @@
     }
   },
   /**
-   * Lookup247: xcm::v3::PalletInfo
+   * Lookup247: staging_xcm::v3::PalletInfo
    **/
-  XcmV3PalletInfo: {
+  StagingXcmV3PalletInfo: {
     index: 'Compact<u32>',
     name: 'Bytes',
     moduleName: 'Bytes',
@@ -2804,9 +2812,9 @@
     patch: 'Compact<u32>'
   },
   /**
-   * Lookup250: xcm::v3::MaybeErrorCode
+   * Lookup250: staging_xcm::v3::MaybeErrorCode
    **/
-  XcmV3MaybeErrorCode: {
+  StagingXcmV3MaybeErrorCode: {
     _enum: {
       Success: 'Null',
       Error: 'Bytes',
@@ -2814,44 +2822,44 @@
     }
   },
   /**
-   * Lookup253: xcm::v3::QueryResponseInfo
+   * Lookup253: staging_xcm::v3::QueryResponseInfo
    **/
-  XcmV3QueryResponseInfo: {
-    destination: 'XcmV3MultiLocation',
+  StagingXcmV3QueryResponseInfo: {
+    destination: 'StagingXcmV3MultiLocation',
     queryId: 'Compact<u64>',
     maxWeight: 'SpWeightsWeightV2Weight'
   },
   /**
-   * Lookup254: xcm::v3::multiasset::MultiAssetFilter
+   * Lookup254: staging_xcm::v3::multiasset::MultiAssetFilter
    **/
-  XcmV3MultiassetMultiAssetFilter: {
+  StagingXcmV3MultiassetMultiAssetFilter: {
     _enum: {
-      Definite: 'XcmV3MultiassetMultiAssets',
-      Wild: 'XcmV3MultiassetWildMultiAsset'
+      Definite: 'StagingXcmV3MultiassetMultiAssets',
+      Wild: 'StagingXcmV3MultiassetWildMultiAsset'
     }
   },
   /**
-   * Lookup255: xcm::v3::multiasset::WildMultiAsset
+   * Lookup255: staging_xcm::v3::multiasset::WildMultiAsset
    **/
-  XcmV3MultiassetWildMultiAsset: {
+  StagingXcmV3MultiassetWildMultiAsset: {
     _enum: {
       All: 'Null',
       AllOf: {
-        id: 'XcmV3MultiassetAssetId',
-        fun: 'XcmV3MultiassetWildFungibility',
+        id: 'StagingXcmV3MultiassetAssetId',
+        fun: 'StagingXcmV3MultiassetWildFungibility',
       },
       AllCounted: 'Compact<u32>',
       AllOfCounted: {
-        id: 'XcmV3MultiassetAssetId',
-        fun: 'XcmV3MultiassetWildFungibility',
+        id: 'StagingXcmV3MultiassetAssetId',
+        fun: 'StagingXcmV3MultiassetWildFungibility',
         count: 'Compact<u32>'
       }
     }
   },
   /**
-   * Lookup256: xcm::v3::multiasset::WildFungibility
+   * Lookup256: staging_xcm::v3::multiasset::WildFungibility
    **/
-  XcmV3MultiassetWildFungibility: {
+  StagingXcmV3MultiassetWildFungibility: {
     _enum: ['Fungible', 'NonFungible']
   },
   /**
@@ -3280,12 +3288,12 @@
     _enum: {
       register_foreign_asset: {
         owner: 'AccountId32',
-        location: 'XcmVersionedMultiLocation',
+        location: 'StagingXcmVersionedMultiLocation',
         metadata: 'PalletForeignAssetsModuleAssetMetadata',
       },
       update_foreign_asset: {
         foreignAssetId: 'u32',
-        location: 'XcmVersionedMultiLocation',
+        location: 'StagingXcmVersionedMultiLocation',
         metadata: 'PalletForeignAssetsModuleAssetMetadata'
       }
     }
@@ -3478,20 +3486,38 @@
    * Lookup361: pallet_maintenance::pallet::Call<T>
    **/
   PalletMaintenanceCall: {
+    _enum: ['enable', 'disable']
+  },
+  /**
+   * Lookup362: pallet_utility::pallet::Call<T>
+   **/
+  PalletUtilityCall: {
     _enum: {
-      enable: 'Null',
-      disable: 'Null',
-      execute_preimage: {
-        _alias: {
-          hash_: 'hash',
-        },
-        hash_: 'H256',
-        weightBound: 'SpWeightsWeightV2Weight'
+      batch: {
+        calls: 'Vec<Call>',
+      },
+      as_derivative: {
+        index: 'u16',
+        call: 'Call',
+      },
+      batch_all: {
+        calls: 'Vec<Call>',
+      },
+      dispatch_as: {
+        asOrigin: 'OpalRuntimeOriginCaller',
+        call: 'Call',
+      },
+      force_batch: {
+        calls: 'Vec<Call>',
+      },
+      with_weight: {
+        call: 'Call',
+        weight: 'SpWeightsWeightV2Weight'
       }
     }
   },
   /**
-   * Lookup362: pallet_test_utils::pallet::Call<T>
+   * Lookup364: pallet_test_utils::pallet::Call<T>
    **/
   PalletTestUtilsCall: {
     _enum: {
@@ -3510,7 +3536,7 @@
     }
   },
   /**
-   * Lookup365: pallet_scheduler::pallet::Event<T>
+   * Lookup366: pallet_scheduler::pallet::Event<T>
    **/
   PalletSchedulerEvent: {
     _enum: {
@@ -3542,27 +3568,29 @@
     }
   },
   /**
-   * Lookup366: cumulus_pallet_xcmp_queue::pallet::Event<T>
+   * Lookup367: cumulus_pallet_xcmp_queue::pallet::Event<T>
    **/
   CumulusPalletXcmpQueueEvent: {
     _enum: {
       Success: {
-        messageHash: 'Option<[u8;32]>',
+        messageHash: '[u8;32]',
+        messageId: '[u8;32]',
         weight: 'SpWeightsWeightV2Weight',
       },
       Fail: {
-        messageHash: 'Option<[u8;32]>',
-        error: 'XcmV3TraitsError',
+        messageHash: '[u8;32]',
+        messageId: '[u8;32]',
+        error: 'StagingXcmV3TraitsError',
         weight: 'SpWeightsWeightV2Weight',
       },
       BadVersion: {
-        messageHash: 'Option<[u8;32]>',
+        messageHash: '[u8;32]',
       },
       BadFormat: {
-        messageHash: 'Option<[u8;32]>',
+        messageHash: '[u8;32]',
       },
       XcmpMessageSent: {
-        messageHash: 'Option<[u8;32]>',
+        messageHash: '[u8;32]',
       },
       OverweightEnqueued: {
         sender: 'u32',
@@ -3577,76 +3605,171 @@
     }
   },
   /**
-   * Lookup367: pallet_xcm::pallet::Event<T>
+   * Lookup368: pallet_xcm::pallet::Event<T>
    **/
   PalletXcmEvent: {
     _enum: {
-      Attempted: 'XcmV3TraitsOutcome',
-      Sent: '(XcmV3MultiLocation,XcmV3MultiLocation,XcmV3Xcm)',
-      UnexpectedResponse: '(XcmV3MultiLocation,u64)',
-      ResponseReady: '(u64,XcmV3Response)',
-      Notified: '(u64,u8,u8)',
-      NotifyOverweight: '(u64,u8,u8,SpWeightsWeightV2Weight,SpWeightsWeightV2Weight)',
-      NotifyDispatchError: '(u64,u8,u8)',
-      NotifyDecodeFailed: '(u64,u8,u8)',
-      InvalidResponder: '(XcmV3MultiLocation,u64,Option<XcmV3MultiLocation>)',
-      InvalidResponderVersion: '(XcmV3MultiLocation,u64)',
-      ResponseTaken: 'u64',
-      AssetsTrapped: '(H256,XcmV3MultiLocation,XcmVersionedMultiAssets)',
-      VersionChangeNotified: '(XcmV3MultiLocation,u32,XcmV3MultiassetMultiAssets)',
-      SupportedVersionChanged: '(XcmV3MultiLocation,u32)',
-      NotifyTargetSendFail: '(XcmV3MultiLocation,u64,XcmV3TraitsError)',
-      NotifyTargetMigrationFail: '(XcmVersionedMultiLocation,u64)',
-      InvalidQuerierVersion: '(XcmV3MultiLocation,u64)',
-      InvalidQuerier: '(XcmV3MultiLocation,u64,XcmV3MultiLocation,Option<XcmV3MultiLocation>)',
-      VersionNotifyStarted: '(XcmV3MultiLocation,XcmV3MultiassetMultiAssets)',
-      VersionNotifyRequested: '(XcmV3MultiLocation,XcmV3MultiassetMultiAssets)',
-      VersionNotifyUnrequested: '(XcmV3MultiLocation,XcmV3MultiassetMultiAssets)',
-      FeesPaid: '(XcmV3MultiLocation,XcmV3MultiassetMultiAssets)',
-      AssetsClaimed: '(H256,XcmV3MultiLocation,XcmVersionedMultiAssets)'
+      Attempted: {
+        outcome: 'StagingXcmV3TraitsOutcome',
+      },
+      Sent: {
+        origin: 'StagingXcmV3MultiLocation',
+        destination: 'StagingXcmV3MultiLocation',
+        message: 'StagingXcmV3Xcm',
+        messageId: '[u8;32]',
+      },
+      UnexpectedResponse: {
+        origin: 'StagingXcmV3MultiLocation',
+        queryId: 'u64',
+      },
+      ResponseReady: {
+        queryId: 'u64',
+        response: 'StagingXcmV3Response',
+      },
+      Notified: {
+        queryId: 'u64',
+        palletIndex: 'u8',
+        callIndex: 'u8',
+      },
+      NotifyOverweight: {
+        queryId: 'u64',
+        palletIndex: 'u8',
+        callIndex: 'u8',
+        actualWeight: 'SpWeightsWeightV2Weight',
+        maxBudgetedWeight: 'SpWeightsWeightV2Weight',
+      },
+      NotifyDispatchError: {
+        queryId: 'u64',
+        palletIndex: 'u8',
+        callIndex: 'u8',
+      },
+      NotifyDecodeFailed: {
+        queryId: 'u64',
+        palletIndex: 'u8',
+        callIndex: 'u8',
+      },
+      InvalidResponder: {
+        origin: 'StagingXcmV3MultiLocation',
+        queryId: 'u64',
+        expectedLocation: 'Option<StagingXcmV3MultiLocation>',
+      },
+      InvalidResponderVersion: {
+        origin: 'StagingXcmV3MultiLocation',
+        queryId: 'u64',
+      },
+      ResponseTaken: {
+        queryId: 'u64',
+      },
+      AssetsTrapped: {
+        _alias: {
+          hash_: 'hash',
+        },
+        hash_: 'H256',
+        origin: 'StagingXcmV3MultiLocation',
+        assets: 'StagingXcmVersionedMultiAssets',
+      },
+      VersionChangeNotified: {
+        destination: 'StagingXcmV3MultiLocation',
+        result: 'u32',
+        cost: 'StagingXcmV3MultiassetMultiAssets',
+        messageId: '[u8;32]',
+      },
+      SupportedVersionChanged: {
+        location: 'StagingXcmV3MultiLocation',
+        version: 'u32',
+      },
+      NotifyTargetSendFail: {
+        location: 'StagingXcmV3MultiLocation',
+        queryId: 'u64',
+        error: 'StagingXcmV3TraitsError',
+      },
+      NotifyTargetMigrationFail: {
+        location: 'StagingXcmVersionedMultiLocation',
+        queryId: 'u64',
+      },
+      InvalidQuerierVersion: {
+        origin: 'StagingXcmV3MultiLocation',
+        queryId: 'u64',
+      },
+      InvalidQuerier: {
+        origin: 'StagingXcmV3MultiLocation',
+        queryId: 'u64',
+        expectedQuerier: 'StagingXcmV3MultiLocation',
+        maybeActualQuerier: 'Option<StagingXcmV3MultiLocation>',
+      },
+      VersionNotifyStarted: {
+        destination: 'StagingXcmV3MultiLocation',
+        cost: 'StagingXcmV3MultiassetMultiAssets',
+        messageId: '[u8;32]',
+      },
+      VersionNotifyRequested: {
+        destination: 'StagingXcmV3MultiLocation',
+        cost: 'StagingXcmV3MultiassetMultiAssets',
+        messageId: '[u8;32]',
+      },
+      VersionNotifyUnrequested: {
+        destination: 'StagingXcmV3MultiLocation',
+        cost: 'StagingXcmV3MultiassetMultiAssets',
+        messageId: '[u8;32]',
+      },
+      FeesPaid: {
+        paying: 'StagingXcmV3MultiLocation',
+        fees: 'StagingXcmV3MultiassetMultiAssets',
+      },
+      AssetsClaimed: {
+        _alias: {
+          hash_: 'hash',
+        },
+        hash_: 'H256',
+        origin: 'StagingXcmV3MultiLocation',
+        assets: 'StagingXcmVersionedMultiAssets'
+      }
     }
   },
   /**
-   * Lookup368: xcm::v3::traits::Outcome
+   * Lookup369: staging_xcm::v3::traits::Outcome
    **/
-  XcmV3TraitsOutcome: {
+  StagingXcmV3TraitsOutcome: {
     _enum: {
       Complete: 'SpWeightsWeightV2Weight',
-      Incomplete: '(SpWeightsWeightV2Weight,XcmV3TraitsError)',
-      Error: 'XcmV3TraitsError'
+      Incomplete: '(SpWeightsWeightV2Weight,StagingXcmV3TraitsError)',
+      Error: 'StagingXcmV3TraitsError'
     }
   },
   /**
-   * Lookup369: cumulus_pallet_xcm::pallet::Event<T>
+   * Lookup370: cumulus_pallet_xcm::pallet::Event<T>
    **/
   CumulusPalletXcmEvent: {
     _enum: {
       InvalidFormat: '[u8;32]',
       UnsupportedVersion: '[u8;32]',
-      ExecutedDownward: '([u8;32],XcmV3TraitsOutcome)'
+      ExecutedDownward: '([u8;32],StagingXcmV3TraitsOutcome)'
     }
   },
   /**
-   * Lookup370: cumulus_pallet_dmp_queue::pallet::Event<T>
+   * Lookup371: cumulus_pallet_dmp_queue::pallet::Event<T>
    **/
   CumulusPalletDmpQueueEvent: {
     _enum: {
       InvalidFormat: {
-        messageId: '[u8;32]',
+        messageHash: '[u8;32]',
       },
       UnsupportedVersion: {
-        messageId: '[u8;32]',
+        messageHash: '[u8;32]',
       },
       ExecutedDownward: {
+        messageHash: '[u8;32]',
         messageId: '[u8;32]',
-        outcome: 'XcmV3TraitsOutcome',
+        outcome: 'StagingXcmV3TraitsOutcome',
       },
       WeightExhausted: {
+        messageHash: '[u8;32]',
         messageId: '[u8;32]',
         remainingWeight: 'SpWeightsWeightV2Weight',
         requiredWeight: 'SpWeightsWeightV2Weight',
       },
       OverweightEnqueued: {
+        messageHash: '[u8;32]',
         messageId: '[u8;32]',
         overweightIndex: 'u64',
         requiredWeight: 'SpWeightsWeightV2Weight',
@@ -3656,12 +3779,12 @@
         weightUsed: 'SpWeightsWeightV2Weight',
       },
       MaxMessagesExhausted: {
-        messageId: '[u8;32]'
+        messageHash: '[u8;32]'
       }
     }
   },
   /**
-   * Lookup371: pallet_configuration::pallet::Event<T>
+   * Lookup372: pallet_configuration::pallet::Event<T>
    **/
   PalletConfigurationEvent: {
     _enum: {
@@ -3677,7 +3800,7 @@
     }
   },
   /**
-   * Lookup372: pallet_common::pallet::Event<T>
+   * Lookup373: pallet_common::pallet::Event<T>
    **/
   PalletCommonEvent: {
     _enum: {
@@ -3706,7 +3829,7 @@
     }
   },
   /**
-   * Lookup373: pallet_structure::pallet::Event<T>
+   * Lookup374: pallet_structure::pallet::Event<T>
    **/
   PalletStructureEvent: {
     _enum: {
@@ -3714,7 +3837,7 @@
     }
   },
   /**
-   * Lookup374: pallet_app_promotion::pallet::Event<T>
+   * Lookup375: pallet_app_promotion::pallet::Event<T>
    **/
   PalletAppPromotionEvent: {
     _enum: {
@@ -3725,32 +3848,32 @@
     }
   },
   /**
-   * Lookup375: pallet_foreign_assets::module::Event<T>
+   * Lookup376: pallet_foreign_assets::module::Event<T>
    **/
   PalletForeignAssetsModuleEvent: {
     _enum: {
       ForeignAssetRegistered: {
         assetId: 'u32',
-        assetAddress: 'XcmV3MultiLocation',
+        assetAddress: 'StagingXcmV3MultiLocation',
         metadata: 'PalletForeignAssetsModuleAssetMetadata',
       },
       ForeignAssetUpdated: {
         assetId: 'u32',
-        assetAddress: 'XcmV3MultiLocation',
+        assetAddress: 'StagingXcmV3MultiLocation',
         metadata: 'PalletForeignAssetsModuleAssetMetadata',
       },
       AssetRegistered: {
-        assetId: 'PalletForeignAssetsAssetIds',
+        assetId: 'PalletForeignAssetsAssetId',
         metadata: 'PalletForeignAssetsModuleAssetMetadata',
       },
       AssetUpdated: {
-        assetId: 'PalletForeignAssetsAssetIds',
+        assetId: 'PalletForeignAssetsAssetId',
         metadata: 'PalletForeignAssetsModuleAssetMetadata'
       }
     }
   },
   /**
-   * Lookup376: pallet_evm::pallet::Event<T>
+   * Lookup377: pallet_evm::pallet::Event<T>
    **/
   PalletEvmEvent: {
     _enum: {
@@ -3772,7 +3895,7 @@
     }
   },
   /**
-   * Lookup377: pallet_ethereum::pallet::Event
+   * Lookup378: pallet_ethereum::pallet::Event
    **/
   PalletEthereumEvent: {
     _enum: {
@@ -3786,7 +3909,7 @@
     }
   },
   /**
-   * Lookup378: evm_core::error::ExitReason
+   * Lookup379: evm_core::error::ExitReason
    **/
   EvmCoreErrorExitReason: {
     _enum: {
@@ -3797,13 +3920,13 @@
     }
   },
   /**
-   * Lookup379: evm_core::error::ExitSucceed
+   * Lookup380: evm_core::error::ExitSucceed
    **/
   EvmCoreErrorExitSucceed: {
     _enum: ['Stopped', 'Returned', 'Suicided']
   },
   /**
-   * Lookup380: evm_core::error::ExitError
+   * Lookup381: evm_core::error::ExitError
    **/
   EvmCoreErrorExitError: {
     _enum: {
@@ -3826,13 +3949,13 @@
     }
   },
   /**
-   * Lookup384: evm_core::error::ExitRevert
+   * Lookup385: evm_core::error::ExitRevert
    **/
   EvmCoreErrorExitRevert: {
     _enum: ['Reverted']
   },
   /**
-   * Lookup385: evm_core::error::ExitFatal
+   * Lookup386: evm_core::error::ExitFatal
    **/
   EvmCoreErrorExitFatal: {
     _enum: {
@@ -3843,7 +3966,7 @@
     }
   },
   /**
-   * Lookup386: pallet_evm_contract_helpers::pallet::Event<T>
+   * Lookup387: pallet_evm_contract_helpers::pallet::Event<T>
    **/
   PalletEvmContractHelpersEvent: {
     _enum: {
@@ -3853,25 +3976,45 @@
     }
   },
   /**
-   * Lookup387: pallet_evm_migration::pallet::Event<T>
+   * Lookup388: pallet_evm_migration::pallet::Event<T>
    **/
   PalletEvmMigrationEvent: {
     _enum: ['TestEvent']
   },
   /**
-   * Lookup388: pallet_maintenance::pallet::Event<T>
+   * Lookup389: pallet_maintenance::pallet::Event<T>
    **/
   PalletMaintenanceEvent: {
     _enum: ['MaintenanceEnabled', 'MaintenanceDisabled']
   },
   /**
-   * Lookup389: pallet_test_utils::pallet::Event<T>
+   * Lookup390: pallet_utility::pallet::Event
    **/
+  PalletUtilityEvent: {
+    _enum: {
+      BatchInterrupted: {
+        index: 'u32',
+        error: 'SpRuntimeDispatchError',
+      },
+      BatchCompleted: 'Null',
+      BatchCompletedWithErrors: 'Null',
+      ItemCompleted: 'Null',
+      ItemFailed: {
+        error: 'SpRuntimeDispatchError',
+      },
+      DispatchedAs: {
+        result: 'Result<Null, SpRuntimeDispatchError>'
+      }
+    }
+  },
+  /**
+   * Lookup391: pallet_test_utils::pallet::Event<T>
+   **/
   PalletTestUtilsEvent: {
     _enum: ['ValueIsSet', 'ShouldRollback', 'BatchCompleted']
   },
   /**
-   * Lookup390: frame_system::Phase
+   * Lookup392: frame_system::Phase
    **/
   FrameSystemPhase: {
     _enum: {
@@ -3881,14 +4024,14 @@
     }
   },
   /**
-   * Lookup392: frame_system::LastRuntimeUpgradeInfo
+   * Lookup394: frame_system::LastRuntimeUpgradeInfo
    **/
   FrameSystemLastRuntimeUpgradeInfo: {
     specVersion: 'Compact<u32>',
     specName: 'Text'
   },
   /**
-   * Lookup393: frame_system::limits::BlockWeights
+   * Lookup395: frame_system::limits::BlockWeights
    **/
   FrameSystemLimitsBlockWeights: {
     baseBlock: 'SpWeightsWeightV2Weight',
@@ -3896,7 +4039,7 @@
     perClass: 'FrameSupportDispatchPerDispatchClassWeightsPerClass'
   },
   /**
-   * Lookup394: frame_support::dispatch::PerDispatchClass<frame_system::limits::WeightsPerClass>
+   * Lookup396: frame_support::dispatch::PerDispatchClass<frame_system::limits::WeightsPerClass>
    **/
   FrameSupportDispatchPerDispatchClassWeightsPerClass: {
     normal: 'FrameSystemLimitsWeightsPerClass',
@@ -3904,7 +4047,7 @@
     mandatory: 'FrameSystemLimitsWeightsPerClass'
   },
   /**
-   * Lookup395: frame_system::limits::WeightsPerClass
+   * Lookup397: frame_system::limits::WeightsPerClass
    **/
   FrameSystemLimitsWeightsPerClass: {
     baseExtrinsic: 'SpWeightsWeightV2Weight',
@@ -3913,13 +4056,13 @@
     reserved: 'Option<SpWeightsWeightV2Weight>'
   },
   /**
-   * Lookup397: frame_system::limits::BlockLength
+   * Lookup399: frame_system::limits::BlockLength
    **/
   FrameSystemLimitsBlockLength: {
     max: 'FrameSupportDispatchPerDispatchClassU32'
   },
   /**
-   * Lookup398: frame_support::dispatch::PerDispatchClass<T>
+   * Lookup400: frame_support::dispatch::PerDispatchClass<T>
    **/
   FrameSupportDispatchPerDispatchClassU32: {
     normal: 'u32',
@@ -3927,14 +4070,14 @@
     mandatory: 'u32'
   },
   /**
-   * Lookup399: sp_weights::RuntimeDbWeight
+   * Lookup401: sp_weights::RuntimeDbWeight
    **/
   SpWeightsRuntimeDbWeight: {
     read: 'u64',
     write: 'u64'
   },
   /**
-   * Lookup400: sp_version::RuntimeVersion
+   * Lookup402: sp_version::RuntimeVersion
    **/
   SpVersionRuntimeVersion: {
     specName: 'Text',
@@ -3947,37 +4090,74 @@
     stateVersion: 'u8'
   },
   /**
-   * Lookup404: frame_system::pallet::Error<T>
+   * Lookup406: frame_system::pallet::Error<T>
    **/
   FrameSystemError: {
     _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']
   },
   /**
-   * Lookup406: polkadot_primitives::v4::UpgradeRestriction
+   * Lookup408: cumulus_pallet_parachain_system::unincluded_segment::Ancestor<primitive_types::H256>
    **/
-  PolkadotPrimitivesV4UpgradeRestriction: {
+  CumulusPalletParachainSystemUnincludedSegmentAncestor: {
+    usedBandwidth: 'CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth',
+    paraHeadHash: 'Option<H256>',
+    consumedGoAheadSignal: 'Option<PolkadotPrimitivesV5UpgradeGoAhead>'
+  },
+  /**
+   * Lookup409: cumulus_pallet_parachain_system::unincluded_segment::UsedBandwidth
+   **/
+  CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth: {
+    umpMsgCount: 'u32',
+    umpTotalBytes: 'u32',
+    hrmpOutgoing: 'BTreeMap<u32, CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate>'
+  },
+  /**
+   * Lookup411: cumulus_pallet_parachain_system::unincluded_segment::HrmpChannelUpdate
+   **/
+  CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate: {
+    msgCount: 'u32',
+    totalBytes: 'u32'
+  },
+  /**
+   * Lookup415: polkadot_primitives::v5::UpgradeGoAhead
+   **/
+  PolkadotPrimitivesV5UpgradeGoAhead: {
+    _enum: ['Abort', 'GoAhead']
+  },
+  /**
+   * Lookup416: cumulus_pallet_parachain_system::unincluded_segment::SegmentTracker<primitive_types::H256>
+   **/
+  CumulusPalletParachainSystemUnincludedSegmentSegmentTracker: {
+    usedBandwidth: 'CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth',
+    hrmpWatermark: 'Option<u32>',
+    consumedGoAheadSignal: 'Option<PolkadotPrimitivesV5UpgradeGoAhead>'
+  },
+  /**
+   * Lookup418: polkadot_primitives::v5::UpgradeRestriction
+   **/
+  PolkadotPrimitivesV5UpgradeRestriction: {
     _enum: ['Present']
   },
   /**
-   * Lookup407: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot
+   * Lookup419: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot
    **/
   CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: {
     dmqMqcHead: 'H256',
-    relayDispatchQueueSize: 'CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize',
-    ingressChannels: 'Vec<(u32,PolkadotPrimitivesV4AbridgedHrmpChannel)>',
-    egressChannels: 'Vec<(u32,PolkadotPrimitivesV4AbridgedHrmpChannel)>'
+    relayDispatchQueueRemainingCapacity: 'CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity',
+    ingressChannels: 'Vec<(u32,PolkadotPrimitivesV5AbridgedHrmpChannel)>',
+    egressChannels: 'Vec<(u32,PolkadotPrimitivesV5AbridgedHrmpChannel)>'
   },
   /**
-   * Lookup408: cumulus_pallet_parachain_system::relay_state_snapshot::RelayDispachQueueSize
+   * Lookup420: cumulus_pallet_parachain_system::relay_state_snapshot::RelayDispatchQueueRemainingCapacity
    **/
-  CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize: {
+  CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity: {
     remainingCount: 'u32',
     remainingSize: 'u32'
   },
   /**
-   * Lookup411: polkadot_primitives::v4::AbridgedHrmpChannel
+   * Lookup423: polkadot_primitives::v5::AbridgedHrmpChannel
    **/
-  PolkadotPrimitivesV4AbridgedHrmpChannel: {
+  PolkadotPrimitivesV5AbridgedHrmpChannel: {
     maxCapacity: 'u32',
     maxTotalSize: 'u32',
     maxMessageSize: 'u32',
@@ -3986,9 +4166,9 @@
     mqcHead: 'Option<H256>'
   },
   /**
-   * Lookup412: polkadot_primitives::v4::AbridgedHostConfiguration
+   * Lookup424: polkadot_primitives::v5::AbridgedHostConfiguration
    **/
-  PolkadotPrimitivesV4AbridgedHostConfiguration: {
+  PolkadotPrimitivesV5AbridgedHostConfiguration: {
     maxCodeSize: 'u32',
     maxHeadDataSize: 'u32',
     maxUpwardQueueCount: 'u32',
@@ -3997,46 +4177,54 @@
     maxUpwardMessageNumPerCandidate: 'u32',
     hrmpMaxMessageNumPerCandidate: 'u32',
     validationUpgradeCooldown: 'u32',
-    validationUpgradeDelay: 'u32'
+    validationUpgradeDelay: 'u32',
+    asyncBackingParams: 'PolkadotPrimitivesVstagingAsyncBackingParams'
   },
   /**
-   * Lookup418: polkadot_core_primitives::OutboundHrmpMessage<polkadot_parachain::primitives::Id>
+   * Lookup425: polkadot_primitives::vstaging::AsyncBackingParams
    **/
+  PolkadotPrimitivesVstagingAsyncBackingParams: {
+    maxCandidateDepth: 'u32',
+    allowedAncestryLen: 'u32'
+  },
+  /**
+   * Lookup431: polkadot_core_primitives::OutboundHrmpMessage<polkadot_parachain_primitives::primitives::Id>
+   **/
   PolkadotCorePrimitivesOutboundHrmpMessage: {
     recipient: 'u32',
     data: 'Bytes'
   },
   /**
-   * Lookup419: cumulus_pallet_parachain_system::CodeUpgradeAuthorization<T>
+   * Lookup432: cumulus_pallet_parachain_system::CodeUpgradeAuthorization<T>
    **/
   CumulusPalletParachainSystemCodeUpgradeAuthorization: {
     codeHash: 'H256',
     checkVersion: 'bool'
   },
   /**
-   * Lookup420: cumulus_pallet_parachain_system::pallet::Error<T>
+   * Lookup433: cumulus_pallet_parachain_system::pallet::Error<T>
    **/
   CumulusPalletParachainSystemError: {
     _enum: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled', 'NothingAuthorized', 'Unauthorized']
   },
   /**
-   * Lookup422: pallet_collator_selection::pallet::Error<T>
+   * Lookup435: pallet_collator_selection::pallet::Error<T>
    **/
   PalletCollatorSelectionError: {
     _enum: ['TooManyCandidates', 'Unknown', 'Permission', 'AlreadyHoldingLicense', 'NoLicense', 'AlreadyCandidate', 'NotCandidate', 'TooManyInvulnerables', 'TooFewInvulnerables', 'AlreadyInvulnerable', 'NotInvulnerable', 'NoAssociatedValidatorId', 'ValidatorNotRegistered']
   },
   /**
-   * Lookup426: sp_core::crypto::KeyTypeId
+   * Lookup439: sp_core::crypto::KeyTypeId
    **/
   SpCoreCryptoKeyTypeId: '[u8;4]',
   /**
-   * Lookup427: pallet_session::pallet::Error<T>
+   * Lookup440: pallet_session::pallet::Error<T>
    **/
   PalletSessionError: {
     _enum: ['InvalidProof', 'NoAssociatedValidatorId', 'DuplicatedKey', 'NoKeys', 'NoAccount']
   },
   /**
-   * Lookup432: pallet_balances::types::BalanceLock<Balance>
+   * Lookup446: pallet_balances::types::BalanceLock<Balance>
    **/
   PalletBalancesBalanceLock: {
     id: '[u8;8]',
@@ -4044,39 +4232,76 @@
     reasons: 'PalletBalancesReasons'
   },
   /**
-   * Lookup433: pallet_balances::types::Reasons
+   * Lookup447: pallet_balances::types::Reasons
    **/
   PalletBalancesReasons: {
     _enum: ['Fee', 'Misc', 'All']
   },
   /**
-   * Lookup436: pallet_balances::types::ReserveData<ReserveIdentifier, Balance>
+   * Lookup450: pallet_balances::types::ReserveData<ReserveIdentifier, Balance>
    **/
   PalletBalancesReserveData: {
     id: '[u8;16]',
     amount: 'u128'
   },
   /**
-   * Lookup439: pallet_balances::types::IdAmount<Id, Balance>
+   * Lookup454: opal_runtime::RuntimeHoldReason
+   **/
+  OpalRuntimeRuntimeHoldReason: {
+    _enum: {
+      __Unused0: 'Null',
+      __Unused1: 'Null',
+      __Unused2: 'Null',
+      __Unused3: 'Null',
+      __Unused4: 'Null',
+      __Unused5: 'Null',
+      __Unused6: 'Null',
+      __Unused7: 'Null',
+      __Unused8: 'Null',
+      __Unused9: 'Null',
+      __Unused10: 'Null',
+      __Unused11: 'Null',
+      __Unused12: 'Null',
+      __Unused13: 'Null',
+      __Unused14: 'Null',
+      __Unused15: 'Null',
+      __Unused16: 'Null',
+      __Unused17: 'Null',
+      __Unused18: 'Null',
+      __Unused19: 'Null',
+      __Unused20: 'Null',
+      __Unused21: 'Null',
+      __Unused22: 'Null',
+      CollatorSelection: 'PalletCollatorSelectionHoldReason'
+    }
+  },
+  /**
+   * Lookup455: pallet_collator_selection::pallet::HoldReason
    **/
+  PalletCollatorSelectionHoldReason: {
+    _enum: ['LicenseBond']
+  },
+  /**
+   * Lookup458: pallet_balances::types::IdAmount<Id, Balance>
+   **/
   PalletBalancesIdAmount: {
     id: '[u8;16]',
     amount: 'u128'
   },
   /**
-   * Lookup442: pallet_balances::pallet::Error<T, I>
+   * Lookup460: pallet_balances::pallet::Error<T, I>
    **/
   PalletBalancesError: {
     _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'Expendability', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves', 'TooManyHolds', 'TooManyFreezes']
   },
   /**
-   * Lookup444: pallet_transaction_payment::Releases
+   * Lookup462: pallet_transaction_payment::Releases
    **/
   PalletTransactionPaymentReleases: {
     _enum: ['V1Ancient', 'V2']
   },
   /**
-   * Lookup445: pallet_treasury::Proposal<sp_core::crypto::AccountId32, Balance>
+   * Lookup463: pallet_treasury::Proposal<sp_core::crypto::AccountId32, Balance>
    **/
   PalletTreasuryProposal: {
     proposer: 'AccountId32',
@@ -4085,42 +4310,42 @@
     bond: 'u128'
   },
   /**
-   * Lookup448: frame_support::PalletId
+   * Lookup466: frame_support::PalletId
    **/
   FrameSupportPalletId: '[u8;8]',
   /**
-   * Lookup449: pallet_treasury::pallet::Error<T, I>
+   * Lookup467: pallet_treasury::pallet::Error<T, I>
    **/
   PalletTreasuryError: {
     _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals', 'InsufficientPermission', 'ProposalNotApproved']
   },
   /**
-   * Lookup450: pallet_sudo::pallet::Error<T>
+   * Lookup468: pallet_sudo::pallet::Error<T>
    **/
   PalletSudoError: {
     _enum: ['RequireSudo']
   },
   /**
-   * Lookup452: orml_vesting::module::Error<T>
+   * Lookup470: orml_vesting::module::Error<T>
    **/
   OrmlVestingModuleError: {
     _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']
   },
   /**
-   * Lookup453: orml_xtokens::module::Error<T>
+   * Lookup471: orml_xtokens::module::Error<T>
    **/
   OrmlXtokensModuleError: {
     _enum: ['AssetHasNoReserve', 'NotCrossChainTransfer', 'InvalidDest', 'NotCrossChainTransferableCurrency', 'UnweighableMessage', 'XcmExecutionFailed', 'CannotReanchor', 'InvalidAncestry', 'InvalidAsset', 'DestinationNotInvertible', 'BadVersion', 'DistinctReserveForAssetAndFee', 'ZeroFee', 'ZeroAmount', 'TooManyAssetsBeingSent', 'AssetIndexNonExistent', 'FeeNotEnough', 'NotSupportedMultiLocation', 'MinXcmFeeNotDefined']
   },
   /**
-   * Lookup456: orml_tokens::BalanceLock<Balance>
+   * Lookup474: orml_tokens::BalanceLock<Balance>
    **/
   OrmlTokensBalanceLock: {
     id: '[u8;8]',
     amount: 'u128'
   },
   /**
-   * Lookup458: orml_tokens::AccountData<Balance>
+   * Lookup476: orml_tokens::AccountData<Balance>
    **/
   OrmlTokensAccountData: {
     free: 'u128',
@@ -4128,20 +4353,20 @@
     frozen: 'u128'
   },
   /**
-   * Lookup460: orml_tokens::ReserveData<ReserveIdentifier, Balance>
+   * Lookup478: orml_tokens::ReserveData<ReserveIdentifier, Balance>
    **/
   OrmlTokensReserveData: {
     id: 'Null',
     amount: 'u128'
   },
   /**
-   * Lookup462: orml_tokens::module::Error<T>
+   * Lookup480: orml_tokens::module::Error<T>
    **/
   OrmlTokensModuleError: {
     _enum: ['BalanceTooLow', 'AmountIntoBalanceFailed', 'LiquidityRestrictions', 'MaxLocksExceeded', 'KeepAlive', 'ExistentialDeposit', 'DeadAccount', 'TooManyReserves']
   },
   /**
-   * Lookup467: pallet_identity::types::RegistrarInfo<Balance, sp_core::crypto::AccountId32>
+   * Lookup485: pallet_identity::types::RegistrarInfo<Balance, sp_core::crypto::AccountId32>
    **/
   PalletIdentityRegistrarInfo: {
     account: 'AccountId32',
@@ -4149,13 +4374,13 @@
     fields: 'PalletIdentityBitFlags'
   },
   /**
-   * Lookup469: pallet_identity::pallet::Error<T>
+   * Lookup487: pallet_identity::pallet::Error<T>
    **/
   PalletIdentityError: {
     _enum: ['TooManySubAccounts', 'NotFound', 'NotNamed', 'EmptyIndex', 'FeeChanged', 'NoIdentity', 'StickyJudgement', 'JudgementGiven', 'InvalidJudgement', 'InvalidIndex', 'InvalidTarget', 'TooManyFields', 'TooManyRegistrars', 'AlreadyClaimed', 'NotSub', 'NotOwned', 'JudgementForDifferentIdentity', 'JudgementPaymentFailed']
   },
   /**
-   * Lookup470: pallet_preimage::RequestStatus<sp_core::crypto::AccountId32, Balance>
+   * Lookup488: pallet_preimage::RequestStatus<sp_core::crypto::AccountId32, Balance>
    **/
   PalletPreimageRequestStatus: {
     _enum: {
@@ -4171,13 +4396,13 @@
     }
   },
   /**
-   * Lookup475: pallet_preimage::pallet::Error<T>
+   * Lookup493: pallet_preimage::pallet::Error<T>
    **/
   PalletPreimageError: {
     _enum: ['TooBig', 'AlreadyNoted', 'NotAuthorized', 'NotNoted', 'Requested', 'NotRequested']
   },
   /**
-   * Lookup481: pallet_democracy::types::ReferendumInfo<BlockNumber, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance>
+   * Lookup499: pallet_democracy::types::ReferendumInfo<BlockNumber, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance>
    **/
   PalletDemocracyReferendumInfo: {
     _enum: {
@@ -4189,7 +4414,7 @@
     }
   },
   /**
-   * Lookup482: pallet_democracy::types::ReferendumStatus<BlockNumber, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance>
+   * Lookup500: pallet_democracy::types::ReferendumStatus<BlockNumber, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance>
    **/
   PalletDemocracyReferendumStatus: {
     end: 'u32',
@@ -4199,7 +4424,7 @@
     tally: 'PalletDemocracyTally'
   },
   /**
-   * Lookup483: pallet_democracy::types::Tally<Balance>
+   * Lookup501: pallet_democracy::types::Tally<Balance>
    **/
   PalletDemocracyTally: {
     ayes: 'u128',
@@ -4207,7 +4432,7 @@
     turnout: 'u128'
   },
   /**
-   * Lookup484: pallet_democracy::vote::Voting<Balance, sp_core::crypto::AccountId32, BlockNumber, MaxVotes>
+   * Lookup502: pallet_democracy::vote::Voting<Balance, sp_core::crypto::AccountId32, BlockNumber, MaxVotes>
    **/
   PalletDemocracyVoteVoting: {
     _enum: {
@@ -4226,24 +4451,24 @@
     }
   },
   /**
-   * Lookup488: pallet_democracy::types::Delegations<Balance>
+   * Lookup506: pallet_democracy::types::Delegations<Balance>
    **/
   PalletDemocracyDelegations: {
     votes: 'u128',
     capital: 'u128'
   },
   /**
-   * Lookup489: pallet_democracy::vote::PriorLock<BlockNumber, Balance>
+   * Lookup507: pallet_democracy::vote::PriorLock<BlockNumber, Balance>
    **/
   PalletDemocracyVotePriorLock: '(u32,u128)',
   /**
-   * Lookup492: pallet_democracy::pallet::Error<T>
+   * Lookup510: pallet_democracy::pallet::Error<T>
    **/
   PalletDemocracyError: {
     _enum: ['ValueLow', 'ProposalMissing', 'AlreadyCanceled', 'DuplicateProposal', 'ProposalBlacklisted', 'NotSimpleMajority', 'InvalidHash', 'NoProposal', 'AlreadyVetoed', 'ReferendumInvalid', 'NoneWaiting', 'NotVoter', 'NoPermission', 'AlreadyDelegating', 'InsufficientFunds', 'NotDelegating', 'VotesExist', 'InstantNotAllowed', 'Nonsense', 'WrongUpperBound', 'MaxVotesReached', 'TooMany', 'VotingPeriodLow', 'PreimageNotExist']
   },
   /**
-   * Lookup494: pallet_collective::Votes<sp_core::crypto::AccountId32, BlockNumber>
+   * Lookup512: pallet_collective::Votes<sp_core::crypto::AccountId32, BlockNumber>
    **/
   PalletCollectiveVotes: {
     index: 'u32',
@@ -4253,31 +4478,31 @@
     end: 'u32'
   },
   /**
-   * Lookup495: pallet_collective::pallet::Error<T, I>
+   * Lookup513: pallet_collective::pallet::Error<T, I>
    **/
   PalletCollectiveError: {
-    _enum: ['NotMember', 'DuplicateProposal', 'ProposalMissing', 'WrongIndex', 'DuplicateVote', 'AlreadyInitialized', 'TooEarly', 'TooManyProposals', 'WrongProposalWeight', 'WrongProposalLength']
+    _enum: ['NotMember', 'DuplicateProposal', 'ProposalMissing', 'WrongIndex', 'DuplicateVote', 'AlreadyInitialized', 'TooEarly', 'TooManyProposals', 'WrongProposalWeight', 'WrongProposalLength', 'PrimeAccountNotMember']
   },
   /**
-   * Lookup499: pallet_membership::pallet::Error<T, I>
+   * Lookup517: pallet_membership::pallet::Error<T, I>
    **/
   PalletMembershipError: {
     _enum: ['AlreadyMember', 'NotMember', 'TooManyMembers']
   },
   /**
-   * Lookup502: pallet_ranked_collective::MemberRecord
+   * Lookup520: pallet_ranked_collective::MemberRecord
    **/
   PalletRankedCollectiveMemberRecord: {
     rank: 'u16'
   },
   /**
-   * Lookup507: pallet_ranked_collective::pallet::Error<T, I>
+   * Lookup525: pallet_ranked_collective::pallet::Error<T, I>
    **/
   PalletRankedCollectiveError: {
     _enum: ['AlreadyMember', 'NotMember', 'NotPolling', 'Ongoing', 'NoneRemaining', 'Corruption', 'RankTooLow', 'InvalidWitness', 'NoPermission']
   },
   /**
-   * Lookup508: pallet_referenda::types::ReferendumInfo<TrackId, opal_runtime::OriginCaller, Moment, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance, pallet_ranked_collective::Tally<T, I, M>, sp_core::crypto::AccountId32, ScheduleAddress>
+   * Lookup526: pallet_referenda::types::ReferendumInfo<TrackId, opal_runtime::OriginCaller, Moment, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance, pallet_ranked_collective::Tally<T, I, M>, sp_core::crypto::AccountId32, ScheduleAddress>
    **/
   PalletReferendaReferendumInfo: {
     _enum: {
@@ -4290,7 +4515,7 @@
     }
   },
   /**
-   * Lookup509: pallet_referenda::types::ReferendumStatus<TrackId, opal_runtime::OriginCaller, Moment, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance, pallet_ranked_collective::Tally<T, I, M>, sp_core::crypto::AccountId32, ScheduleAddress>
+   * Lookup527: pallet_referenda::types::ReferendumStatus<TrackId, opal_runtime::OriginCaller, Moment, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, Balance, pallet_ranked_collective::Tally<T, I, M>, sp_core::crypto::AccountId32, ScheduleAddress>
    **/
   PalletReferendaReferendumStatus: {
     track: 'u16',
@@ -4306,21 +4531,21 @@
     alarm: 'Option<(u32,(u32,u32))>'
   },
   /**
-   * Lookup510: pallet_referenda::types::Deposit<sp_core::crypto::AccountId32, Balance>
+   * Lookup528: pallet_referenda::types::Deposit<sp_core::crypto::AccountId32, Balance>
    **/
   PalletReferendaDeposit: {
     who: 'AccountId32',
     amount: 'u128'
   },
   /**
-   * Lookup513: pallet_referenda::types::DecidingStatus<BlockNumber>
+   * Lookup531: pallet_referenda::types::DecidingStatus<BlockNumber>
    **/
   PalletReferendaDecidingStatus: {
     since: 'u32',
     confirming: 'Option<u32>'
   },
   /**
-   * Lookup519: pallet_referenda::types::TrackInfo<Balance, Moment>
+   * Lookup537: pallet_referenda::types::TrackInfo<Balance, Moment>
    **/
   PalletReferendaTrackInfo: {
     name: 'Text',
@@ -4334,7 +4559,7 @@
     minSupport: 'PalletReferendaCurve'
   },
   /**
-   * Lookup520: pallet_referenda::types::Curve
+   * Lookup538: pallet_referenda::types::Curve
    **/
   PalletReferendaCurve: {
     _enum: {
@@ -4357,13 +4582,13 @@
     }
   },
   /**
-   * Lookup523: pallet_referenda::pallet::Error<T, I>
+   * Lookup541: pallet_referenda::pallet::Error<T, I>
    **/
   PalletReferendaError: {
     _enum: ['NotOngoing', 'HasDeposit', 'BadTrack', 'Full', 'QueueEmpty', 'BadReferendum', 'NothingToDo', 'NoTrack', 'Unfinished', 'NoPermission', 'NoDeposit', 'BadStatus', 'PreimageNotExist']
   },
   /**
-   * Lookup526: pallet_scheduler::Scheduled<Name, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>
+   * Lookup544: pallet_scheduler::Scheduled<Name, frame_support::traits::preimages::Bounded<opal_runtime::RuntimeCall>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>
    **/
   PalletSchedulerScheduled: {
     maybeId: 'Option<[u8;32]>',
@@ -4373,33 +4598,33 @@
     origin: 'OpalRuntimeOriginCaller'
   },
   /**
-   * Lookup528: pallet_scheduler::pallet::Error<T>
+   * Lookup546: pallet_scheduler::pallet::Error<T>
    **/
   PalletSchedulerError: {
     _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange', 'Named']
   },
   /**
-   * Lookup530: cumulus_pallet_xcmp_queue::InboundChannelDetails
+   * Lookup548: cumulus_pallet_xcmp_queue::InboundChannelDetails
    **/
   CumulusPalletXcmpQueueInboundChannelDetails: {
     sender: 'u32',
     state: 'CumulusPalletXcmpQueueInboundState',
-    messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'
+    messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat)>'
   },
   /**
-   * Lookup531: cumulus_pallet_xcmp_queue::InboundState
+   * Lookup549: cumulus_pallet_xcmp_queue::InboundState
    **/
   CumulusPalletXcmpQueueInboundState: {
     _enum: ['Ok', 'Suspended']
   },
   /**
-   * Lookup534: polkadot_parachain::primitives::XcmpMessageFormat
+   * Lookup552: polkadot_parachain_primitives::primitives::XcmpMessageFormat
    **/
-  PolkadotParachainPrimitivesXcmpMessageFormat: {
+  PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat: {
     _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']
   },
   /**
-   * Lookup537: cumulus_pallet_xcmp_queue::OutboundChannelDetails
+   * Lookup555: cumulus_pallet_xcmp_queue::OutboundChannelDetails
    **/
   CumulusPalletXcmpQueueOutboundChannelDetails: {
     recipient: 'u32',
@@ -4409,13 +4634,13 @@
     lastIndex: 'u16'
   },
   /**
-   * Lookup538: cumulus_pallet_xcmp_queue::OutboundState
+   * Lookup556: cumulus_pallet_xcmp_queue::OutboundState
    **/
   CumulusPalletXcmpQueueOutboundState: {
     _enum: ['Ok', 'Suspended']
   },
   /**
-   * Lookup540: cumulus_pallet_xcmp_queue::QueueConfigData
+   * Lookup558: cumulus_pallet_xcmp_queue::QueueConfigData
    **/
   CumulusPalletXcmpQueueQueueConfigData: {
     suspendThreshold: 'u32',
@@ -4426,45 +4651,45 @@
     xcmpMaxIndividualWeight: 'SpWeightsWeightV2Weight'
   },
   /**
-   * Lookup542: cumulus_pallet_xcmp_queue::pallet::Error<T>
+   * Lookup560: cumulus_pallet_xcmp_queue::pallet::Error<T>
    **/
   CumulusPalletXcmpQueueError: {
     _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']
   },
   /**
-   * Lookup543: pallet_xcm::pallet::QueryStatus<BlockNumber>
+   * Lookup561: pallet_xcm::pallet::QueryStatus<BlockNumber>
    **/
   PalletXcmQueryStatus: {
     _enum: {
       Pending: {
-        responder: 'XcmVersionedMultiLocation',
-        maybeMatchQuerier: 'Option<XcmVersionedMultiLocation>',
+        responder: 'StagingXcmVersionedMultiLocation',
+        maybeMatchQuerier: 'Option<StagingXcmVersionedMultiLocation>',
         maybeNotify: 'Option<(u8,u8)>',
         timeout: 'u32',
       },
       VersionNotifier: {
-        origin: 'XcmVersionedMultiLocation',
+        origin: 'StagingXcmVersionedMultiLocation',
         isActive: 'bool',
       },
       Ready: {
-        response: 'XcmVersionedResponse',
+        response: 'StagingXcmVersionedResponse',
         at: 'u32'
       }
     }
   },
   /**
-   * Lookup547: xcm::VersionedResponse
+   * Lookup565: staging_xcm::VersionedResponse
    **/
-  XcmVersionedResponse: {
+  StagingXcmVersionedResponse: {
     _enum: {
       __Unused0: 'Null',
       __Unused1: 'Null',
-      V2: 'XcmV2Response',
-      V3: 'XcmV3Response'
+      V2: 'StagingXcmV2Response',
+      V3: 'StagingXcmV3Response'
     }
   },
   /**
-   * Lookup553: pallet_xcm::pallet::VersionMigrationStage
+   * Lookup571: pallet_xcm::pallet::VersionMigrationStage
    **/
   PalletXcmVersionMigrationStage: {
     _enum: {
@@ -4475,43 +4700,43 @@
     }
   },
   /**
-   * Lookup556: xcm::VersionedAssetId
+   * Lookup574: staging_xcm::VersionedAssetId
    **/
-  XcmVersionedAssetId: {
+  StagingXcmVersionedAssetId: {
     _enum: {
       __Unused0: 'Null',
       __Unused1: 'Null',
       __Unused2: 'Null',
-      V3: 'XcmV3MultiassetAssetId'
+      V3: 'StagingXcmV3MultiassetAssetId'
     }
   },
   /**
-   * Lookup557: pallet_xcm::pallet::RemoteLockedFungibleRecord<ConsumerIdentifier, MaxConsumers>
+   * Lookup575: pallet_xcm::pallet::RemoteLockedFungibleRecord<ConsumerIdentifier, MaxConsumers>
    **/
   PalletXcmRemoteLockedFungibleRecord: {
     amount: 'u128',
-    owner: 'XcmVersionedMultiLocation',
-    locker: 'XcmVersionedMultiLocation',
+    owner: 'StagingXcmVersionedMultiLocation',
+    locker: 'StagingXcmVersionedMultiLocation',
     consumers: 'Vec<(Null,u128)>'
   },
   /**
-   * Lookup564: pallet_xcm::pallet::Error<T>
+   * Lookup582: pallet_xcm::pallet::Error<T>
    **/
   PalletXcmError: {
     _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed', 'InvalidAsset', 'LowBalance', 'TooManyLocks', 'AccountNotSovereign', 'FeesNotMet', 'LockNotFound', 'InUse']
   },
   /**
-   * Lookup565: cumulus_pallet_xcm::pallet::Error<T>
+   * Lookup583: cumulus_pallet_xcm::pallet::Error<T>
    **/
   CumulusPalletXcmError: 'Null',
   /**
-   * Lookup566: cumulus_pallet_dmp_queue::ConfigData
+   * Lookup584: cumulus_pallet_dmp_queue::ConfigData
    **/
   CumulusPalletDmpQueueConfigData: {
     maxIndividual: 'SpWeightsWeightV2Weight'
   },
   /**
-   * Lookup567: cumulus_pallet_dmp_queue::PageIndexData
+   * Lookup585: cumulus_pallet_dmp_queue::PageIndexData
    **/
   CumulusPalletDmpQueuePageIndexData: {
     beginUsed: 'u32',
@@ -4519,25 +4744,25 @@
     overweightCount: 'u64'
   },
   /**
-   * Lookup570: cumulus_pallet_dmp_queue::pallet::Error<T>
+   * Lookup588: cumulus_pallet_dmp_queue::pallet::Error<T>
    **/
   CumulusPalletDmpQueueError: {
     _enum: ['Unknown', 'OverLimit']
   },
   /**
-   * Lookup574: pallet_unique::pallet::Error<T>
+   * Lookup592: pallet_unique::pallet::Error<T>
    **/
   PalletUniqueError: {
     _enum: ['CollectionDecimalPointLimitExceeded', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']
   },
   /**
-   * Lookup575: pallet_configuration::pallet::Error<T>
+   * Lookup593: pallet_configuration::pallet::Error<T>
    **/
   PalletConfigurationError: {
     _enum: ['InconsistentConfiguration']
   },
   /**
-   * Lookup576: up_data_structs::Collection<sp_core::crypto::AccountId32>
+   * Lookup594: up_data_structs::Collection<sp_core::crypto::AccountId32>
    **/
   UpDataStructsCollection: {
     owner: 'AccountId32',
@@ -4551,7 +4776,7 @@
     flags: '[u8;1]'
   },
   /**
-   * Lookup577: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
+   * Lookup595: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
    **/
   UpDataStructsSponsorshipStateAccountId32: {
     _enum: {
@@ -4561,7 +4786,7 @@
     }
   },
   /**
-   * Lookup578: up_data_structs::Properties
+   * Lookup596: up_data_structs::Properties
    **/
   UpDataStructsProperties: {
     map: 'UpDataStructsPropertiesMapBoundedVec',
@@ -4569,15 +4794,15 @@
     reserved: 'u32'
   },
   /**
-   * Lookup579: up_data_structs::PropertiesMap<bounded_collections::bounded_vec::BoundedVec<T, S>>
+   * Lookup597: up_data_structs::PropertiesMap<bounded_collections::bounded_vec::BoundedVec<T, S>>
    **/
   UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',
   /**
-   * Lookup584: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>
+   * Lookup602: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>
    **/
   UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',
   /**
-   * Lookup591: up_data_structs::CollectionStats
+   * Lookup609: up_data_structs::CollectionStats
    **/
   UpDataStructsCollectionStats: {
     created: 'u32',
@@ -4585,18 +4810,18 @@
     alive: 'u32'
   },
   /**
-   * Lookup592: up_data_structs::TokenChild
+   * Lookup610: up_data_structs::TokenChild
    **/
   UpDataStructsTokenChild: {
     token: 'u32',
     collection: 'u32'
   },
   /**
-   * Lookup593: PhantomType::up_data_structs<T>
+   * Lookup611: PhantomType::up_data_structs<T>
    **/
   PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,UpPovEstimateRpcPovInfo);0]',
   /**
-   * Lookup595: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup613: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsTokenData: {
     properties: 'Vec<UpDataStructsProperty>',
@@ -4604,7 +4829,7 @@
     pieces: 'u128'
   },
   /**
-   * Lookup596: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
+   * Lookup614: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
    **/
   UpDataStructsRpcCollection: {
     owner: 'AccountId32',
@@ -4621,14 +4846,14 @@
     flags: 'UpDataStructsRpcCollectionFlags'
   },
   /**
-   * Lookup597: up_data_structs::RpcCollectionFlags
+   * Lookup615: up_data_structs::RpcCollectionFlags
    **/
   UpDataStructsRpcCollectionFlags: {
     foreign: 'bool',
     erc721metadata: 'bool'
   },
   /**
-   * Lookup598: up_pov_estimate_rpc::PovInfo
+   * Lookup616: up_pov_estimate_rpc::PovInfo
    **/
   UpPovEstimateRpcPovInfo: {
     proofSize: 'u64',
@@ -4638,7 +4863,7 @@
     keyValues: 'Vec<UpPovEstimateRpcTrieKeyValue>'
   },
   /**
-   * Lookup601: sp_runtime::transaction_validity::TransactionValidityError
+   * Lookup619: sp_runtime::transaction_validity::TransactionValidityError
    **/
   SpRuntimeTransactionValidityTransactionValidityError: {
     _enum: {
@@ -4647,7 +4872,7 @@
     }
   },
   /**
-   * Lookup602: sp_runtime::transaction_validity::InvalidTransaction
+   * Lookup620: sp_runtime::transaction_validity::InvalidTransaction
    **/
   SpRuntimeTransactionValidityInvalidTransaction: {
     _enum: {
@@ -4665,7 +4890,7 @@
     }
   },
   /**
-   * Lookup603: sp_runtime::transaction_validity::UnknownTransaction
+   * Lookup621: sp_runtime::transaction_validity::UnknownTransaction
    **/
   SpRuntimeTransactionValidityUnknownTransaction: {
     _enum: {
@@ -4675,68 +4900,68 @@
     }
   },
   /**
-   * Lookup605: up_pov_estimate_rpc::TrieKeyValue
+   * Lookup623: up_pov_estimate_rpc::TrieKeyValue
    **/
   UpPovEstimateRpcTrieKeyValue: {
     key: 'Bytes',
     value: 'Bytes'
   },
   /**
-   * Lookup607: pallet_common::pallet::Error<T>
+   * Lookup625: pallet_common::pallet::Error<T>
    **/
   PalletCommonError: {
-    _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsNotEthMirror', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal', 'ConfirmSponsorshipFail', 'UserIsNotCollectionAdmin']
+    _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsNotEthMirror', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal', 'ConfirmSponsorshipFail', 'UserIsNotCollectionAdmin', 'FungibleItemsHaveNoId']
   },
   /**
-   * Lookup609: pallet_fungible::pallet::Error<T>
+   * Lookup627: pallet_fungible::pallet::Error<T>
    **/
   PalletFungibleError: {
-    _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed', 'SettingAllowanceForAllNotAllowed', 'FungibleTokensAreAlwaysValid']
+    _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed', 'SettingAllowanceForAllNotAllowed', 'FungibleTokensAreAlwaysValid']
   },
   /**
-   * Lookup614: pallet_refungible::pallet::Error<T>
+   * Lookup632: pallet_refungible::pallet::Error<T>
    **/
   PalletRefungibleError: {
     _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']
   },
   /**
-   * Lookup615: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup633: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   PalletNonfungibleItemData: {
     owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
   },
   /**
-   * Lookup617: up_data_structs::PropertyScope
+   * Lookup635: up_data_structs::PropertyScope
    **/
   UpDataStructsPropertyScope: {
     _enum: ['None', 'Rmrk']
   },
   /**
-   * Lookup620: pallet_nonfungible::pallet::Error<T>
+   * Lookup638: pallet_nonfungible::pallet::Error<T>
    **/
   PalletNonfungibleError: {
     _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']
   },
   /**
-   * Lookup621: pallet_structure::pallet::Error<T>
+   * Lookup639: pallet_structure::pallet::Error<T>
    **/
   PalletStructureError: {
     _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound', 'CantNestTokenUnderCollection']
   },
   /**
-   * Lookup626: pallet_app_promotion::pallet::Error<T>
+   * Lookup644: pallet_app_promotion::pallet::Error<T>
    **/
   PalletAppPromotionError: {
     _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'InsufficientStakedBalance', 'InconsistencyState']
   },
   /**
-   * Lookup627: pallet_foreign_assets::module::Error<T>
+   * Lookup645: pallet_foreign_assets::module::Error<T>
    **/
   PalletForeignAssetsModuleError: {
     _enum: ['BadLocation', 'MultiLocationExisted', 'AssetIdNotExists', 'AssetIdExisted']
   },
   /**
-   * Lookup628: pallet_evm::CodeMetadata
+   * Lookup646: pallet_evm::CodeMetadata
    **/
   PalletEvmCodeMetadata: {
     _alias: {
@@ -4747,13 +4972,13 @@
     hash_: 'H256'
   },
   /**
-   * Lookup630: pallet_evm::pallet::Error<T>
+   * Lookup648: pallet_evm::pallet::Error<T>
    **/
   PalletEvmError: {
     _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce', 'GasLimitTooLow', 'GasLimitTooHigh', 'Undefined', 'Reentrancy', 'TransactionMustComeFromEOA']
   },
   /**
-   * Lookup633: fp_rpc::TransactionStatus
+   * Lookup651: fp_rpc::TransactionStatus
    **/
   FpRpcTransactionStatus: {
     transactionHash: 'H256',
@@ -4765,11 +4990,11 @@
     logsBloom: 'EthbloomBloom'
   },
   /**
-   * Lookup635: ethbloom::Bloom
+   * Lookup653: ethbloom::Bloom
    **/
   EthbloomBloom: '[u8;256]',
   /**
-   * Lookup637: ethereum::receipt::ReceiptV3
+   * Lookup655: ethereum::receipt::ReceiptV3
    **/
   EthereumReceiptReceiptV3: {
     _enum: {
@@ -4779,7 +5004,7 @@
     }
   },
   /**
-   * Lookup638: ethereum::receipt::EIP658ReceiptData
+   * Lookup656: ethereum::receipt::EIP658ReceiptData
    **/
   EthereumReceiptEip658ReceiptData: {
     statusCode: 'u8',
@@ -4788,7 +5013,7 @@
     logs: 'Vec<EthereumLog>'
   },
   /**
-   * Lookup639: ethereum::block::Block<ethereum::transaction::TransactionV2>
+   * Lookup657: ethereum::block::Block<ethereum::transaction::TransactionV2>
    **/
   EthereumBlock: {
     header: 'EthereumHeader',
@@ -4796,7 +5021,7 @@
     ommers: 'Vec<EthereumHeader>'
   },
   /**
-   * Lookup640: ethereum::header::Header
+   * Lookup658: ethereum::header::Header
    **/
   EthereumHeader: {
     parentHash: 'H256',
@@ -4816,23 +5041,23 @@
     nonce: 'EthereumTypesHashH64'
   },
   /**
-   * Lookup641: ethereum_types::hash::H64
+   * Lookup659: ethereum_types::hash::H64
    **/
   EthereumTypesHashH64: '[u8;8]',
   /**
-   * Lookup646: pallet_ethereum::pallet::Error<T>
+   * Lookup664: pallet_ethereum::pallet::Error<T>
    **/
   PalletEthereumError: {
     _enum: ['InvalidSignature', 'PreLogExists']
   },
   /**
-   * Lookup647: pallet_evm_coder_substrate::pallet::Error<T>
+   * Lookup665: pallet_evm_coder_substrate::pallet::Error<T>
    **/
   PalletEvmCoderSubstrateError: {
     _enum: ['OutOfGas', 'OutOfFund']
   },
   /**
-   * Lookup648: up_data_structs::SponsorshipState<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup666: up_data_structs::SponsorshipState<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsSponsorshipStateBasicCrossAccountIdRepr: {
     _enum: {
@@ -4842,35 +5067,41 @@
     }
   },
   /**
-   * Lookup649: pallet_evm_contract_helpers::SponsoringModeT
+   * Lookup667: pallet_evm_contract_helpers::SponsoringModeT
    **/
   PalletEvmContractHelpersSponsoringModeT: {
     _enum: ['Disabled', 'Allowlisted', 'Generous']
   },
   /**
-   * Lookup655: pallet_evm_contract_helpers::pallet::Error<T>
+   * Lookup673: pallet_evm_contract_helpers::pallet::Error<T>
    **/
   PalletEvmContractHelpersError: {
     _enum: ['NoPermission', 'NoPendingSponsor', 'TooManyMethodsHaveSponsoredLimit']
   },
   /**
-   * Lookup656: pallet_evm_migration::pallet::Error<T>
+   * Lookup674: pallet_evm_migration::pallet::Error<T>
    **/
   PalletEvmMigrationError: {
     _enum: ['AccountNotEmpty', 'AccountIsNotMigrating', 'BadEvent']
   },
   /**
-   * Lookup657: pallet_maintenance::pallet::Error<T>
+   * Lookup675: pallet_maintenance::pallet::Error<T>
    **/
   PalletMaintenanceError: 'Null',
   /**
-   * Lookup658: pallet_test_utils::pallet::Error<T>
+   * Lookup676: pallet_utility::pallet::Error<T>
    **/
+  PalletUtilityError: {
+    _enum: ['TooManyCalls']
+  },
+  /**
+   * Lookup677: pallet_test_utils::pallet::Error<T>
+   **/
   PalletTestUtilsError: {
     _enum: ['TestPalletDisabled', 'TriggerRollback']
   },
   /**
-   * Lookup660: sp_runtime::MultiSignature
+   * Lookup679: sp_runtime::MultiSignature
    **/
   SpRuntimeMultiSignature: {
     _enum: {
@@ -4880,55 +5111,55 @@
     }
   },
   /**
-   * Lookup661: sp_core::ed25519::Signature
+   * Lookup680: sp_core::ed25519::Signature
    **/
   SpCoreEd25519Signature: '[u8;64]',
   /**
-   * Lookup663: sp_core::sr25519::Signature
+   * Lookup682: sp_core::sr25519::Signature
    **/
   SpCoreSr25519Signature: '[u8;64]',
   /**
-   * Lookup664: sp_core::ecdsa::Signature
+   * Lookup683: sp_core::ecdsa::Signature
    **/
   SpCoreEcdsaSignature: '[u8;65]',
   /**
-   * Lookup667: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
+   * Lookup686: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
    **/
   FrameSystemExtensionsCheckSpecVersion: 'Null',
   /**
-   * Lookup668: frame_system::extensions::check_tx_version::CheckTxVersion<T>
+   * Lookup687: frame_system::extensions::check_tx_version::CheckTxVersion<T>
    **/
   FrameSystemExtensionsCheckTxVersion: 'Null',
   /**
-   * Lookup669: frame_system::extensions::check_genesis::CheckGenesis<T>
+   * Lookup688: frame_system::extensions::check_genesis::CheckGenesis<T>
    **/
   FrameSystemExtensionsCheckGenesis: 'Null',
   /**
-   * Lookup672: frame_system::extensions::check_nonce::CheckNonce<T>
+   * Lookup691: frame_system::extensions::check_nonce::CheckNonce<T>
    **/
   FrameSystemExtensionsCheckNonce: 'Compact<u32>',
   /**
-   * Lookup673: frame_system::extensions::check_weight::CheckWeight<T>
+   * Lookup692: frame_system::extensions::check_weight::CheckWeight<T>
    **/
   FrameSystemExtensionsCheckWeight: 'Null',
   /**
-   * Lookup674: opal_runtime::runtime_common::maintenance::CheckMaintenance
+   * Lookup693: opal_runtime::runtime_common::maintenance::CheckMaintenance
    **/
   OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: 'Null',
   /**
-   * Lookup675: opal_runtime::runtime_common::identity::DisableIdentityCalls
+   * Lookup694: opal_runtime::runtime_common::identity::DisableIdentityCalls
    **/
   OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls: 'Null',
   /**
-   * Lookup676: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
+   * Lookup695: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
    **/
   PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',
   /**
-   * Lookup677: opal_runtime::Runtime
+   * Lookup696: opal_runtime::Runtime
    **/
   OpalRuntimeRuntime: 'Null',
   /**
-   * Lookup678: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>
+   * Lookup697: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>
    **/
   PalletEthereumFakeTransactionFinalizer: 'Null'
 };
modifiedtests/src/interfaces/registry.tsdiffbeforeafterboth
--- a/tests/src/interfaces/registry.ts
+++ b/tests/src/interfaces/registry.ts
@@ -5,7 +5,7 @@
 // this is required to allow for ambient/previous definitions
 import '@polkadot/types/types/registry';
 
-import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OpalRuntimeRuntimeCommonSessionKeys, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesIdAmount, PalletBalancesReasons, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCollectiveCall, PalletCollectiveError, PalletCollectiveEvent, PalletCollectiveRawOrigin, PalletCollectiveVotes, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletDemocracyCall, PalletDemocracyConviction, PalletDemocracyDelegations, PalletDemocracyError, PalletDemocracyEvent, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyTally, PalletDemocracyVoteAccountVote, PalletDemocracyVotePriorLock, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCodeMetadata, PalletEvmCoderSubstrateError, PalletEvmContractHelpersCall, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletGovOriginsOrigin, PalletIdentityBitFlags, PalletIdentityCall, PalletIdentityError, PalletIdentityEvent, PalletIdentityIdentityField, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletMembershipCall, PalletMembershipError, PalletMembershipEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletRankedCollectiveCall, PalletRankedCollectiveError, PalletRankedCollectiveEvent, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletReferendaCall, PalletReferendaCurve, PalletReferendaDecidingStatus, PalletReferendaDeposit, PalletReferendaError, PalletReferendaEvent, PalletReferendaReferendumInfo, PalletReferendaReferendumStatus, PalletReferendaTrackInfo, PalletRefungibleError, PalletSchedulerCall, PalletSchedulerError, PalletSchedulerEvent, PalletSchedulerScheduled, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletStateTrieMigrationCall, PalletStateTrieMigrationError, PalletStateTrieMigrationEvent, PalletStateTrieMigrationMigrationCompute, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PalletXcmQueryStatus, PalletXcmRemoteLockedFungibleRecord, PalletXcmVersionMigrationStage, ParachainInfoCall, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV4AbridgedHostConfiguration, PolkadotPrimitivesV4AbridgedHrmpChannel, PolkadotPrimitivesV4PersistedValidationData, PolkadotPrimitivesV4UpgradeRestriction, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue, XcmDoubleEncoded, XcmV2BodyId, XcmV2BodyPart, XcmV2Instruction, XcmV2Junction, XcmV2MultiAsset, XcmV2MultiLocation, XcmV2MultiassetAssetId, XcmV2MultiassetAssetInstance, XcmV2MultiassetFungibility, XcmV2MultiassetMultiAssetFilter, XcmV2MultiassetMultiAssets, XcmV2MultiassetWildFungibility, XcmV2MultiassetWildMultiAsset, XcmV2MultilocationJunctions, XcmV2NetworkId, XcmV2OriginKind, XcmV2Response, XcmV2TraitsError, XcmV2WeightLimit, XcmV2Xcm, XcmV3Instruction, XcmV3Junction, XcmV3JunctionBodyId, XcmV3JunctionBodyPart, XcmV3JunctionNetworkId, XcmV3Junctions, XcmV3MaybeErrorCode, XcmV3MultiAsset, XcmV3MultiLocation, XcmV3MultiassetAssetId, XcmV3MultiassetAssetInstance, XcmV3MultiassetFungibility, XcmV3MultiassetMultiAssetFilter, XcmV3MultiassetMultiAssets, XcmV3MultiassetWildFungibility, XcmV3MultiassetWildMultiAsset, XcmV3PalletInfo, XcmV3QueryResponseInfo, XcmV3Response, XcmV3TraitsError, XcmV3TraitsOutcome, XcmV3WeightLimit, XcmV3Xcm, XcmVersionedAssetId, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedResponse, XcmVersionedXcm } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity, CumulusPalletParachainSystemUnincludedSegmentAncestor, CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate, CumulusPalletParachainSystemUnincludedSegmentSegmentTracker, CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OpalRuntimeRuntimeCommonSessionKeys, OpalRuntimeRuntimeHoldReason, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesIdAmount, PalletBalancesReasons, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCollatorSelectionHoldReason, PalletCollectiveCall, PalletCollectiveError, PalletCollectiveEvent, PalletCollectiveRawOrigin, PalletCollectiveVotes, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletDemocracyCall, PalletDemocracyConviction, PalletDemocracyDelegations, PalletDemocracyError, PalletDemocracyEvent, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyTally, PalletDemocracyVoteAccountVote, PalletDemocracyVotePriorLock, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCodeMetadata, PalletEvmCoderSubstrateError, PalletEvmContractHelpersCall, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetId, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletGovOriginsOrigin, PalletIdentityBitFlags, PalletIdentityCall, PalletIdentityError, PalletIdentityEvent, PalletIdentityIdentityField, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletMembershipCall, PalletMembershipError, PalletMembershipEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletRankedCollectiveCall, PalletRankedCollectiveError, PalletRankedCollectiveEvent, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletReferendaCall, PalletReferendaCurve, PalletReferendaDecidingStatus, PalletReferendaDeposit, PalletReferendaError, PalletReferendaEvent, PalletReferendaReferendumInfo, PalletReferendaReferendumStatus, PalletReferendaTrackInfo, PalletRefungibleError, PalletSchedulerCall, PalletSchedulerError, PalletSchedulerEvent, PalletSchedulerScheduled, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletStateTrieMigrationCall, PalletStateTrieMigrationError, PalletStateTrieMigrationEvent, PalletStateTrieMigrationMigrationCompute, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUtilityCall, PalletUtilityError, PalletUtilityEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PalletXcmQueryStatus, PalletXcmRemoteLockedFungibleRecord, PalletXcmVersionMigrationStage, ParachainInfoCall, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat, PolkadotPrimitivesV5AbridgedHostConfiguration, PolkadotPrimitivesV5AbridgedHrmpChannel, PolkadotPrimitivesV5PersistedValidationData, PolkadotPrimitivesV5UpgradeGoAhead, PolkadotPrimitivesV5UpgradeRestriction, PolkadotPrimitivesVstagingAsyncBackingParams, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, StagingXcmDoubleEncoded, StagingXcmV2BodyId, StagingXcmV2BodyPart, StagingXcmV2Instruction, StagingXcmV2Junction, StagingXcmV2MultiAsset, StagingXcmV2MultiLocation, StagingXcmV2MultiassetAssetId, StagingXcmV2MultiassetAssetInstance, StagingXcmV2MultiassetFungibility, StagingXcmV2MultiassetMultiAssetFilter, StagingXcmV2MultiassetMultiAssets, StagingXcmV2MultiassetWildFungibility, StagingXcmV2MultiassetWildMultiAsset, StagingXcmV2MultilocationJunctions, StagingXcmV2NetworkId, StagingXcmV2OriginKind, StagingXcmV2Response, StagingXcmV2TraitsError, StagingXcmV2WeightLimit, StagingXcmV2Xcm, StagingXcmV3Instruction, StagingXcmV3Junction, StagingXcmV3JunctionBodyId, StagingXcmV3JunctionBodyPart, StagingXcmV3JunctionNetworkId, StagingXcmV3Junctions, StagingXcmV3MaybeErrorCode, StagingXcmV3MultiAsset, StagingXcmV3MultiLocation, StagingXcmV3MultiassetAssetId, StagingXcmV3MultiassetAssetInstance, StagingXcmV3MultiassetFungibility, StagingXcmV3MultiassetMultiAssetFilter, StagingXcmV3MultiassetMultiAssets, StagingXcmV3MultiassetWildFungibility, StagingXcmV3MultiassetWildMultiAsset, StagingXcmV3PalletInfo, StagingXcmV3QueryResponseInfo, StagingXcmV3Response, StagingXcmV3TraitsError, StagingXcmV3TraitsOutcome, StagingXcmV3WeightLimit, StagingXcmV3Xcm, StagingXcmVersionedAssetId, StagingXcmVersionedMultiAsset, StagingXcmVersionedMultiAssets, StagingXcmVersionedMultiLocation, StagingXcmVersionedResponse, StagingXcmVersionedXcm, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue } from '@polkadot/types/lookup';
 
 declare module '@polkadot/types/types/registry' {
   interface InterfaceTypes {
@@ -19,7 +19,11 @@
     CumulusPalletParachainSystemError: CumulusPalletParachainSystemError;
     CumulusPalletParachainSystemEvent: CumulusPalletParachainSystemEvent;
     CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot;
-    CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize: CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize;
+    CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity: CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity;
+    CumulusPalletParachainSystemUnincludedSegmentAncestor: CumulusPalletParachainSystemUnincludedSegmentAncestor;
+    CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate: CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate;
+    CumulusPalletParachainSystemUnincludedSegmentSegmentTracker: CumulusPalletParachainSystemUnincludedSegmentSegmentTracker;
+    CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth: CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth;
     CumulusPalletXcmCall: CumulusPalletXcmCall;
     CumulusPalletXcmError: CumulusPalletXcmError;
     CumulusPalletXcmEvent: CumulusPalletXcmEvent;
@@ -84,6 +88,7 @@
     OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls: OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls;
     OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance;
     OpalRuntimeRuntimeCommonSessionKeys: OpalRuntimeRuntimeCommonSessionKeys;
+    OpalRuntimeRuntimeHoldReason: OpalRuntimeRuntimeHoldReason;
     OrmlTokensAccountData: OrmlTokensAccountData;
     OrmlTokensBalanceLock: OrmlTokensBalanceLock;
     OrmlTokensModuleCall: OrmlTokensModuleCall;
@@ -111,6 +116,7 @@
     PalletCollatorSelectionCall: PalletCollatorSelectionCall;
     PalletCollatorSelectionError: PalletCollatorSelectionError;
     PalletCollatorSelectionEvent: PalletCollatorSelectionEvent;
+    PalletCollatorSelectionHoldReason: PalletCollatorSelectionHoldReason;
     PalletCollectiveCall: PalletCollectiveCall;
     PalletCollectiveError: PalletCollectiveError;
     PalletCollectiveEvent: PalletCollectiveEvent;
@@ -153,7 +159,7 @@
     PalletEvmMigrationCall: PalletEvmMigrationCall;
     PalletEvmMigrationError: PalletEvmMigrationError;
     PalletEvmMigrationEvent: PalletEvmMigrationEvent;
-    PalletForeignAssetsAssetIds: PalletForeignAssetsAssetIds;
+    PalletForeignAssetsAssetId: PalletForeignAssetsAssetId;
     PalletForeignAssetsModuleAssetMetadata: PalletForeignAssetsModuleAssetMetadata;
     PalletForeignAssetsModuleCall: PalletForeignAssetsModuleCall;
     PalletForeignAssetsModuleError: PalletForeignAssetsModuleError;
@@ -232,6 +238,9 @@
     PalletTreasuryProposal: PalletTreasuryProposal;
     PalletUniqueCall: PalletUniqueCall;
     PalletUniqueError: PalletUniqueError;
+    PalletUtilityCall: PalletUtilityCall;
+    PalletUtilityError: PalletUtilityError;
+    PalletUtilityEvent: PalletUtilityEvent;
     PalletXcmCall: PalletXcmCall;
     PalletXcmError: PalletXcmError;
     PalletXcmEvent: PalletXcmEvent;
@@ -244,11 +253,13 @@
     PolkadotCorePrimitivesInboundDownwardMessage: PolkadotCorePrimitivesInboundDownwardMessage;
     PolkadotCorePrimitivesInboundHrmpMessage: PolkadotCorePrimitivesInboundHrmpMessage;
     PolkadotCorePrimitivesOutboundHrmpMessage: PolkadotCorePrimitivesOutboundHrmpMessage;
-    PolkadotParachainPrimitivesXcmpMessageFormat: PolkadotParachainPrimitivesXcmpMessageFormat;
-    PolkadotPrimitivesV4AbridgedHostConfiguration: PolkadotPrimitivesV4AbridgedHostConfiguration;
-    PolkadotPrimitivesV4AbridgedHrmpChannel: PolkadotPrimitivesV4AbridgedHrmpChannel;
-    PolkadotPrimitivesV4PersistedValidationData: PolkadotPrimitivesV4PersistedValidationData;
-    PolkadotPrimitivesV4UpgradeRestriction: PolkadotPrimitivesV4UpgradeRestriction;
+    PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat: PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat;
+    PolkadotPrimitivesV5AbridgedHostConfiguration: PolkadotPrimitivesV5AbridgedHostConfiguration;
+    PolkadotPrimitivesV5AbridgedHrmpChannel: PolkadotPrimitivesV5AbridgedHrmpChannel;
+    PolkadotPrimitivesV5PersistedValidationData: PolkadotPrimitivesV5PersistedValidationData;
+    PolkadotPrimitivesV5UpgradeGoAhead: PolkadotPrimitivesV5UpgradeGoAhead;
+    PolkadotPrimitivesV5UpgradeRestriction: PolkadotPrimitivesV5UpgradeRestriction;
+    PolkadotPrimitivesVstagingAsyncBackingParams: PolkadotPrimitivesVstagingAsyncBackingParams;
     SpArithmeticArithmeticError: SpArithmeticArithmeticError;
     SpConsensusAuraSr25519AppSr25519Public: SpConsensusAuraSr25519AppSr25519Public;
     SpCoreCryptoKeyTypeId: SpCoreCryptoKeyTypeId;
@@ -271,6 +282,56 @@
     SpVersionRuntimeVersion: SpVersionRuntimeVersion;
     SpWeightsRuntimeDbWeight: SpWeightsRuntimeDbWeight;
     SpWeightsWeightV2Weight: SpWeightsWeightV2Weight;
+    StagingXcmDoubleEncoded: StagingXcmDoubleEncoded;
+    StagingXcmV2BodyId: StagingXcmV2BodyId;
+    StagingXcmV2BodyPart: StagingXcmV2BodyPart;
+    StagingXcmV2Instruction: StagingXcmV2Instruction;
+    StagingXcmV2Junction: StagingXcmV2Junction;
+    StagingXcmV2MultiAsset: StagingXcmV2MultiAsset;
+    StagingXcmV2MultiLocation: StagingXcmV2MultiLocation;
+    StagingXcmV2MultiassetAssetId: StagingXcmV2MultiassetAssetId;
+    StagingXcmV2MultiassetAssetInstance: StagingXcmV2MultiassetAssetInstance;
+    StagingXcmV2MultiassetFungibility: StagingXcmV2MultiassetFungibility;
+    StagingXcmV2MultiassetMultiAssetFilter: StagingXcmV2MultiassetMultiAssetFilter;
+    StagingXcmV2MultiassetMultiAssets: StagingXcmV2MultiassetMultiAssets;
+    StagingXcmV2MultiassetWildFungibility: StagingXcmV2MultiassetWildFungibility;
+    StagingXcmV2MultiassetWildMultiAsset: StagingXcmV2MultiassetWildMultiAsset;
+    StagingXcmV2MultilocationJunctions: StagingXcmV2MultilocationJunctions;
+    StagingXcmV2NetworkId: StagingXcmV2NetworkId;
+    StagingXcmV2OriginKind: StagingXcmV2OriginKind;
+    StagingXcmV2Response: StagingXcmV2Response;
+    StagingXcmV2TraitsError: StagingXcmV2TraitsError;
+    StagingXcmV2WeightLimit: StagingXcmV2WeightLimit;
+    StagingXcmV2Xcm: StagingXcmV2Xcm;
+    StagingXcmV3Instruction: StagingXcmV3Instruction;
+    StagingXcmV3Junction: StagingXcmV3Junction;
+    StagingXcmV3JunctionBodyId: StagingXcmV3JunctionBodyId;
+    StagingXcmV3JunctionBodyPart: StagingXcmV3JunctionBodyPart;
+    StagingXcmV3JunctionNetworkId: StagingXcmV3JunctionNetworkId;
+    StagingXcmV3Junctions: StagingXcmV3Junctions;
+    StagingXcmV3MaybeErrorCode: StagingXcmV3MaybeErrorCode;
+    StagingXcmV3MultiAsset: StagingXcmV3MultiAsset;
+    StagingXcmV3MultiLocation: StagingXcmV3MultiLocation;
+    StagingXcmV3MultiassetAssetId: StagingXcmV3MultiassetAssetId;
+    StagingXcmV3MultiassetAssetInstance: StagingXcmV3MultiassetAssetInstance;
+    StagingXcmV3MultiassetFungibility: StagingXcmV3MultiassetFungibility;
+    StagingXcmV3MultiassetMultiAssetFilter: StagingXcmV3MultiassetMultiAssetFilter;
+    StagingXcmV3MultiassetMultiAssets: StagingXcmV3MultiassetMultiAssets;
+    StagingXcmV3MultiassetWildFungibility: StagingXcmV3MultiassetWildFungibility;
+    StagingXcmV3MultiassetWildMultiAsset: StagingXcmV3MultiassetWildMultiAsset;
+    StagingXcmV3PalletInfo: StagingXcmV3PalletInfo;
+    StagingXcmV3QueryResponseInfo: StagingXcmV3QueryResponseInfo;
+    StagingXcmV3Response: StagingXcmV3Response;
+    StagingXcmV3TraitsError: StagingXcmV3TraitsError;
+    StagingXcmV3TraitsOutcome: StagingXcmV3TraitsOutcome;
+    StagingXcmV3WeightLimit: StagingXcmV3WeightLimit;
+    StagingXcmV3Xcm: StagingXcmV3Xcm;
+    StagingXcmVersionedAssetId: StagingXcmVersionedAssetId;
+    StagingXcmVersionedMultiAsset: StagingXcmVersionedMultiAsset;
+    StagingXcmVersionedMultiAssets: StagingXcmVersionedMultiAssets;
+    StagingXcmVersionedMultiLocation: StagingXcmVersionedMultiLocation;
+    StagingXcmVersionedResponse: StagingXcmVersionedResponse;
+    StagingXcmVersionedXcm: StagingXcmVersionedXcm;
     UpDataStructsAccessMode: UpDataStructsAccessMode;
     UpDataStructsCollection: UpDataStructsCollection;
     UpDataStructsCollectionLimits: UpDataStructsCollectionLimits;
@@ -304,55 +365,5 @@
     UpDataStructsTokenData: UpDataStructsTokenData;
     UpPovEstimateRpcPovInfo: UpPovEstimateRpcPovInfo;
     UpPovEstimateRpcTrieKeyValue: UpPovEstimateRpcTrieKeyValue;
-    XcmDoubleEncoded: XcmDoubleEncoded;
-    XcmV2BodyId: XcmV2BodyId;
-    XcmV2BodyPart: XcmV2BodyPart;
-    XcmV2Instruction: XcmV2Instruction;
-    XcmV2Junction: XcmV2Junction;
-    XcmV2MultiAsset: XcmV2MultiAsset;
-    XcmV2MultiLocation: XcmV2MultiLocation;
-    XcmV2MultiassetAssetId: XcmV2MultiassetAssetId;
-    XcmV2MultiassetAssetInstance: XcmV2MultiassetAssetInstance;
-    XcmV2MultiassetFungibility: XcmV2MultiassetFungibility;
-    XcmV2MultiassetMultiAssetFilter: XcmV2MultiassetMultiAssetFilter;
-    XcmV2MultiassetMultiAssets: XcmV2MultiassetMultiAssets;
-    XcmV2MultiassetWildFungibility: XcmV2MultiassetWildFungibility;
-    XcmV2MultiassetWildMultiAsset: XcmV2MultiassetWildMultiAsset;
-    XcmV2MultilocationJunctions: XcmV2MultilocationJunctions;
-    XcmV2NetworkId: XcmV2NetworkId;
-    XcmV2OriginKind: XcmV2OriginKind;
-    XcmV2Response: XcmV2Response;
-    XcmV2TraitsError: XcmV2TraitsError;
-    XcmV2WeightLimit: XcmV2WeightLimit;
-    XcmV2Xcm: XcmV2Xcm;
-    XcmV3Instruction: XcmV3Instruction;
-    XcmV3Junction: XcmV3Junction;
-    XcmV3JunctionBodyId: XcmV3JunctionBodyId;
-    XcmV3JunctionBodyPart: XcmV3JunctionBodyPart;
-    XcmV3JunctionNetworkId: XcmV3JunctionNetworkId;
-    XcmV3Junctions: XcmV3Junctions;
-    XcmV3MaybeErrorCode: XcmV3MaybeErrorCode;
-    XcmV3MultiAsset: XcmV3MultiAsset;
-    XcmV3MultiLocation: XcmV3MultiLocation;
-    XcmV3MultiassetAssetId: XcmV3MultiassetAssetId;
-    XcmV3MultiassetAssetInstance: XcmV3MultiassetAssetInstance;
-    XcmV3MultiassetFungibility: XcmV3MultiassetFungibility;
-    XcmV3MultiassetMultiAssetFilter: XcmV3MultiassetMultiAssetFilter;
-    XcmV3MultiassetMultiAssets: XcmV3MultiassetMultiAssets;
-    XcmV3MultiassetWildFungibility: XcmV3MultiassetWildFungibility;
-    XcmV3MultiassetWildMultiAsset: XcmV3MultiassetWildMultiAsset;
-    XcmV3PalletInfo: XcmV3PalletInfo;
-    XcmV3QueryResponseInfo: XcmV3QueryResponseInfo;
-    XcmV3Response: XcmV3Response;
-    XcmV3TraitsError: XcmV3TraitsError;
-    XcmV3TraitsOutcome: XcmV3TraitsOutcome;
-    XcmV3WeightLimit: XcmV3WeightLimit;
-    XcmV3Xcm: XcmV3Xcm;
-    XcmVersionedAssetId: XcmVersionedAssetId;
-    XcmVersionedMultiAsset: XcmVersionedMultiAsset;
-    XcmVersionedMultiAssets: XcmVersionedMultiAssets;
-    XcmVersionedMultiLocation: XcmVersionedMultiLocation;
-    XcmVersionedResponse: XcmVersionedResponse;
-    XcmVersionedXcm: XcmVersionedXcm;
   } // InterfaceTypes
 } // declare module
modifiedtests/src/interfaces/types-lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -510,76 +510,76 @@
     readonly isTransferredMultiAssets: boolean;
     readonly asTransferredMultiAssets: {
       readonly sender: AccountId32;
-      readonly assets: XcmV3MultiassetMultiAssets;
-      readonly fee: XcmV3MultiAsset;
-      readonly dest: XcmV3MultiLocation;
+      readonly assets: StagingXcmV3MultiassetMultiAssets;
+      readonly fee: StagingXcmV3MultiAsset;
+      readonly dest: StagingXcmV3MultiLocation;
     } & Struct;
     readonly type: 'TransferredMultiAssets';
   }
 
-  /** @name XcmV3MultiassetMultiAssets (49) */
-  interface XcmV3MultiassetMultiAssets extends Vec<XcmV3MultiAsset> {}
+  /** @name StagingXcmV3MultiassetMultiAssets (49) */
+  interface StagingXcmV3MultiassetMultiAssets extends Vec<StagingXcmV3MultiAsset> {}
 
-  /** @name XcmV3MultiAsset (51) */
-  interface XcmV3MultiAsset extends Struct {
-    readonly id: XcmV3MultiassetAssetId;
-    readonly fun: XcmV3MultiassetFungibility;
+  /** @name StagingXcmV3MultiAsset (51) */
+  interface StagingXcmV3MultiAsset extends Struct {
+    readonly id: StagingXcmV3MultiassetAssetId;
+    readonly fun: StagingXcmV3MultiassetFungibility;
   }
 
-  /** @name XcmV3MultiassetAssetId (52) */
-  interface XcmV3MultiassetAssetId extends Enum {
+  /** @name StagingXcmV3MultiassetAssetId (52) */
+  interface StagingXcmV3MultiassetAssetId extends Enum {
     readonly isConcrete: boolean;
-    readonly asConcrete: XcmV3MultiLocation;
+    readonly asConcrete: StagingXcmV3MultiLocation;
     readonly isAbstract: boolean;
     readonly asAbstract: U8aFixed;
     readonly type: 'Concrete' | 'Abstract';
   }
 
-  /** @name XcmV3MultiLocation (53) */
-  interface XcmV3MultiLocation extends Struct {
+  /** @name StagingXcmV3MultiLocation (53) */
+  interface StagingXcmV3MultiLocation extends Struct {
     readonly parents: u8;
-    readonly interior: XcmV3Junctions;
+    readonly interior: StagingXcmV3Junctions;
   }
 
-  /** @name XcmV3Junctions (54) */
-  interface XcmV3Junctions extends Enum {
+  /** @name StagingXcmV3Junctions (54) */
+  interface StagingXcmV3Junctions extends Enum {
     readonly isHere: boolean;
     readonly isX1: boolean;
-    readonly asX1: XcmV3Junction;
+    readonly asX1: StagingXcmV3Junction;
     readonly isX2: boolean;
-    readonly asX2: ITuple<[XcmV3Junction, XcmV3Junction]>;
+    readonly asX2: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction]>;
     readonly isX3: boolean;
-    readonly asX3: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+    readonly asX3: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
     readonly isX4: boolean;
-    readonly asX4: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+    readonly asX4: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
     readonly isX5: boolean;
-    readonly asX5: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+    readonly asX5: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
     readonly isX6: boolean;
-    readonly asX6: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+    readonly asX6: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
     readonly isX7: boolean;
-    readonly asX7: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+    readonly asX7: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
     readonly isX8: boolean;
-    readonly asX8: ITuple<[XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction, XcmV3Junction]>;
+    readonly asX8: ITuple<[StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction, StagingXcmV3Junction]>;
     readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';
   }
 
-  /** @name XcmV3Junction (55) */
-  interface XcmV3Junction extends Enum {
+  /** @name StagingXcmV3Junction (55) */
+  interface StagingXcmV3Junction extends Enum {
     readonly isParachain: boolean;
     readonly asParachain: Compact<u32>;
     readonly isAccountId32: boolean;
     readonly asAccountId32: {
-      readonly network: Option<XcmV3JunctionNetworkId>;
+      readonly network: Option<StagingXcmV3JunctionNetworkId>;
       readonly id: U8aFixed;
     } & Struct;
     readonly isAccountIndex64: boolean;
     readonly asAccountIndex64: {
-      readonly network: Option<XcmV3JunctionNetworkId>;
+      readonly network: Option<StagingXcmV3JunctionNetworkId>;
       readonly index: Compact<u64>;
     } & Struct;
     readonly isAccountKey20: boolean;
     readonly asAccountKey20: {
-      readonly network: Option<XcmV3JunctionNetworkId>;
+      readonly network: Option<StagingXcmV3JunctionNetworkId>;
       readonly key: U8aFixed;
     } & Struct;
     readonly isPalletInstance: boolean;
@@ -594,16 +594,16 @@
     readonly isOnlyChild: boolean;
     readonly isPlurality: boolean;
     readonly asPlurality: {
-      readonly id: XcmV3JunctionBodyId;
-      readonly part: XcmV3JunctionBodyPart;
+      readonly id: StagingXcmV3JunctionBodyId;
+      readonly part: StagingXcmV3JunctionBodyPart;
     } & Struct;
     readonly isGlobalConsensus: boolean;
-    readonly asGlobalConsensus: XcmV3JunctionNetworkId;
+    readonly asGlobalConsensus: StagingXcmV3JunctionNetworkId;
     readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality' | 'GlobalConsensus';
   }
 
-  /** @name XcmV3JunctionNetworkId (58) */
-  interface XcmV3JunctionNetworkId extends Enum {
+  /** @name StagingXcmV3JunctionNetworkId (58) */
+  interface StagingXcmV3JunctionNetworkId extends Enum {
     readonly isByGenesis: boolean;
     readonly asByGenesis: U8aFixed;
     readonly isByFork: boolean;
@@ -625,8 +625,8 @@
     readonly type: 'ByGenesis' | 'ByFork' | 'Polkadot' | 'Kusama' | 'Westend' | 'Rococo' | 'Wococo' | 'Ethereum' | 'BitcoinCore' | 'BitcoinCash';
   }
 
-  /** @name XcmV3JunctionBodyId (60) */
-  interface XcmV3JunctionBodyId extends Enum {
+  /** @name StagingXcmV3JunctionBodyId (60) */
+  interface StagingXcmV3JunctionBodyId extends Enum {
     readonly isUnit: boolean;
     readonly isMoniker: boolean;
     readonly asMoniker: U8aFixed;
@@ -642,8 +642,8 @@
     readonly type: 'Unit' | 'Moniker' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury';
   }
 
-  /** @name XcmV3JunctionBodyPart (61) */
-  interface XcmV3JunctionBodyPart extends Enum {
+  /** @name StagingXcmV3JunctionBodyPart (61) */
+  interface StagingXcmV3JunctionBodyPart extends Enum {
     readonly isVoice: boolean;
     readonly isMembers: boolean;
     readonly asMembers: {
@@ -667,17 +667,17 @@
     readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';
   }
 
-  /** @name XcmV3MultiassetFungibility (62) */
-  interface XcmV3MultiassetFungibility extends Enum {
+  /** @name StagingXcmV3MultiassetFungibility (62) */
+  interface StagingXcmV3MultiassetFungibility extends Enum {
     readonly isFungible: boolean;
     readonly asFungible: Compact<u128>;
     readonly isNonFungible: boolean;
-    readonly asNonFungible: XcmV3MultiassetAssetInstance;
+    readonly asNonFungible: StagingXcmV3MultiassetAssetInstance;
     readonly type: 'Fungible' | 'NonFungible';
   }
 
-  /** @name XcmV3MultiassetAssetInstance (63) */
-  interface XcmV3MultiassetAssetInstance extends Enum {
+  /** @name StagingXcmV3MultiassetAssetInstance (63) */
+  interface StagingXcmV3MultiassetAssetInstance extends Enum {
     readonly isUndefined: boolean;
     readonly isIndex: boolean;
     readonly asIndex: Compact<u128>;
@@ -696,38 +696,38 @@
   interface OrmlTokensModuleEvent extends Enum {
     readonly isEndowed: boolean;
     readonly asEndowed: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isDustLost: boolean;
     readonly asDustLost: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isTransfer: boolean;
     readonly asTransfer: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly from: AccountId32;
       readonly to: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isReserved: boolean;
     readonly asReserved: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isUnreserved: boolean;
     readonly asUnreserved: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isReserveRepatriated: boolean;
     readonly asReserveRepatriated: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly from: AccountId32;
       readonly to: AccountId32;
       readonly amount: u128;
@@ -735,65 +735,75 @@
     } & Struct;
     readonly isBalanceSet: boolean;
     readonly asBalanceSet: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly free: u128;
       readonly reserved: u128;
     } & Struct;
     readonly isTotalIssuanceSet: boolean;
     readonly asTotalIssuanceSet: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly amount: u128;
     } & Struct;
     readonly isWithdrawn: boolean;
     readonly asWithdrawn: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isSlashed: boolean;
     readonly asSlashed: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly freeAmount: u128;
       readonly reservedAmount: u128;
     } & Struct;
     readonly isDeposited: boolean;
     readonly asDeposited: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isLockSet: boolean;
     readonly asLockSet: {
       readonly lockId: U8aFixed;
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isLockRemoved: boolean;
     readonly asLockRemoved: {
       readonly lockId: U8aFixed;
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
     } & Struct;
     readonly isLocked: boolean;
     readonly asLocked: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
     readonly isUnlocked: boolean;
     readonly asUnlocked: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly who: AccountId32;
       readonly amount: u128;
     } & Struct;
-    readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'BalanceSet' | 'TotalIssuanceSet' | 'Withdrawn' | 'Slashed' | 'Deposited' | 'LockSet' | 'LockRemoved' | 'Locked' | 'Unlocked';
+    readonly isIssued: boolean;
+    readonly asIssued: {
+      readonly currencyId: PalletForeignAssetsAssetId;
+      readonly amount: u128;
+    } & Struct;
+    readonly isRescinded: boolean;
+    readonly asRescinded: {
+      readonly currencyId: PalletForeignAssetsAssetId;
+      readonly amount: u128;
+    } & Struct;
+    readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'BalanceSet' | 'TotalIssuanceSet' | 'Withdrawn' | 'Slashed' | 'Deposited' | 'LockSet' | 'LockRemoved' | 'Locked' | 'Unlocked' | 'Issued' | 'Rescinded';
   }
 
-  /** @name PalletForeignAssetsAssetIds (67) */
-  interface PalletForeignAssetsAssetIds extends Enum {
+  /** @name PalletForeignAssetsAssetId (67) */
+  interface PalletForeignAssetsAssetId extends Enum {
     readonly isForeignAssetId: boolean;
     readonly asForeignAssetId: u32;
     readonly isNativeAssetId: boolean;
@@ -1331,14 +1341,14 @@
 
   /** @name CumulusPrimitivesParachainInherentParachainInherentData (99) */
   interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {
-    readonly validationData: PolkadotPrimitivesV4PersistedValidationData;
+    readonly validationData: PolkadotPrimitivesV5PersistedValidationData;
     readonly relayChainState: SpTrieStorageProof;
     readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;
     readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;
   }
 
-  /** @name PolkadotPrimitivesV4PersistedValidationData (100) */
-  interface PolkadotPrimitivesV4PersistedValidationData extends Struct {
+  /** @name PolkadotPrimitivesV5PersistedValidationData (100) */
+  interface PolkadotPrimitivesV5PersistedValidationData extends Struct {
     readonly parentHead: Bytes;
     readonly relayParentNumber: u32;
     readonly relayParentStorageRoot: H256;
@@ -1542,103 +1552,103 @@
   interface OrmlXtokensModuleCall extends Enum {
     readonly isTransfer: boolean;
     readonly asTransfer: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly amount: u128;
-      readonly dest: XcmVersionedMultiLocation;
-      readonly destWeightLimit: XcmV3WeightLimit;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly destWeightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isTransferMultiasset: boolean;
     readonly asTransferMultiasset: {
-      readonly asset: XcmVersionedMultiAsset;
-      readonly dest: XcmVersionedMultiLocation;
-      readonly destWeightLimit: XcmV3WeightLimit;
+      readonly asset: StagingXcmVersionedMultiAsset;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly destWeightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isTransferWithFee: boolean;
     readonly asTransferWithFee: {
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly amount: u128;
       readonly fee: u128;
-      readonly dest: XcmVersionedMultiLocation;
-      readonly destWeightLimit: XcmV3WeightLimit;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly destWeightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isTransferMultiassetWithFee: boolean;
     readonly asTransferMultiassetWithFee: {
-      readonly asset: XcmVersionedMultiAsset;
-      readonly fee: XcmVersionedMultiAsset;
-      readonly dest: XcmVersionedMultiLocation;
-      readonly destWeightLimit: XcmV3WeightLimit;
+      readonly asset: StagingXcmVersionedMultiAsset;
+      readonly fee: StagingXcmVersionedMultiAsset;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly destWeightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isTransferMulticurrencies: boolean;
     readonly asTransferMulticurrencies: {
-      readonly currencies: Vec<ITuple<[PalletForeignAssetsAssetIds, u128]>>;
+      readonly currencies: Vec<ITuple<[PalletForeignAssetsAssetId, u128]>>;
       readonly feeItem: u32;
-      readonly dest: XcmVersionedMultiLocation;
-      readonly destWeightLimit: XcmV3WeightLimit;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly destWeightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isTransferMultiassets: boolean;
     readonly asTransferMultiassets: {
-      readonly assets: XcmVersionedMultiAssets;
+      readonly assets: StagingXcmVersionedMultiAssets;
       readonly feeItem: u32;
-      readonly dest: XcmVersionedMultiLocation;
-      readonly destWeightLimit: XcmV3WeightLimit;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly destWeightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly type: 'Transfer' | 'TransferMultiasset' | 'TransferWithFee' | 'TransferMultiassetWithFee' | 'TransferMulticurrencies' | 'TransferMultiassets';
   }
 
-  /** @name XcmVersionedMultiLocation (128) */
-  interface XcmVersionedMultiLocation extends Enum {
+  /** @name StagingXcmVersionedMultiLocation (128) */
+  interface StagingXcmVersionedMultiLocation extends Enum {
     readonly isV2: boolean;
-    readonly asV2: XcmV2MultiLocation;
+    readonly asV2: StagingXcmV2MultiLocation;
     readonly isV3: boolean;
-    readonly asV3: XcmV3MultiLocation;
+    readonly asV3: StagingXcmV3MultiLocation;
     readonly type: 'V2' | 'V3';
   }
 
-  /** @name XcmV2MultiLocation (129) */
-  interface XcmV2MultiLocation extends Struct {
+  /** @name StagingXcmV2MultiLocation (129) */
+  interface StagingXcmV2MultiLocation extends Struct {
     readonly parents: u8;
-    readonly interior: XcmV2MultilocationJunctions;
+    readonly interior: StagingXcmV2MultilocationJunctions;
   }
 
-  /** @name XcmV2MultilocationJunctions (130) */
-  interface XcmV2MultilocationJunctions extends Enum {
+  /** @name StagingXcmV2MultilocationJunctions (130) */
+  interface StagingXcmV2MultilocationJunctions extends Enum {
     readonly isHere: boolean;
     readonly isX1: boolean;
-    readonly asX1: XcmV2Junction;
+    readonly asX1: StagingXcmV2Junction;
     readonly isX2: boolean;
-    readonly asX2: ITuple<[XcmV2Junction, XcmV2Junction]>;
+    readonly asX2: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction]>;
     readonly isX3: boolean;
-    readonly asX3: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+    readonly asX3: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
     readonly isX4: boolean;
-    readonly asX4: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+    readonly asX4: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
     readonly isX5: boolean;
-    readonly asX5: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+    readonly asX5: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
     readonly isX6: boolean;
-    readonly asX6: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+    readonly asX6: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
     readonly isX7: boolean;
-    readonly asX7: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+    readonly asX7: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
     readonly isX8: boolean;
-    readonly asX8: ITuple<[XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction, XcmV2Junction]>;
+    readonly asX8: ITuple<[StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction, StagingXcmV2Junction]>;
     readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';
   }
 
-  /** @name XcmV2Junction (131) */
-  interface XcmV2Junction extends Enum {
+  /** @name StagingXcmV2Junction (131) */
+  interface StagingXcmV2Junction extends Enum {
     readonly isParachain: boolean;
     readonly asParachain: Compact<u32>;
     readonly isAccountId32: boolean;
     readonly asAccountId32: {
-      readonly network: XcmV2NetworkId;
+      readonly network: StagingXcmV2NetworkId;
       readonly id: U8aFixed;
     } & Struct;
     readonly isAccountIndex64: boolean;
     readonly asAccountIndex64: {
-      readonly network: XcmV2NetworkId;
+      readonly network: StagingXcmV2NetworkId;
       readonly index: Compact<u64>;
     } & Struct;
     readonly isAccountKey20: boolean;
     readonly asAccountKey20: {
-      readonly network: XcmV2NetworkId;
+      readonly network: StagingXcmV2NetworkId;
       readonly key: U8aFixed;
     } & Struct;
     readonly isPalletInstance: boolean;
@@ -1650,14 +1660,14 @@
     readonly isOnlyChild: boolean;
     readonly isPlurality: boolean;
     readonly asPlurality: {
-      readonly id: XcmV2BodyId;
-      readonly part: XcmV2BodyPart;
+      readonly id: StagingXcmV2BodyId;
+      readonly part: StagingXcmV2BodyPart;
     } & Struct;
     readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';
   }
 
-  /** @name XcmV2NetworkId (132) */
-  interface XcmV2NetworkId extends Enum {
+  /** @name StagingXcmV2NetworkId (132) */
+  interface StagingXcmV2NetworkId extends Enum {
     readonly isAny: boolean;
     readonly isNamed: boolean;
     readonly asNamed: Bytes;
@@ -1666,8 +1676,8 @@
     readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';
   }
 
-  /** @name XcmV2BodyId (134) */
-  interface XcmV2BodyId extends Enum {
+  /** @name StagingXcmV2BodyId (134) */
+  interface StagingXcmV2BodyId extends Enum {
     readonly isUnit: boolean;
     readonly isNamed: boolean;
     readonly asNamed: Bytes;
@@ -1683,8 +1693,8 @@
     readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury';
   }
 
-  /** @name XcmV2BodyPart (135) */
-  interface XcmV2BodyPart extends Enum {
+  /** @name StagingXcmV2BodyPart (135) */
+  interface StagingXcmV2BodyPart extends Enum {
     readonly isVoice: boolean;
     readonly isMembers: boolean;
     readonly asMembers: {
@@ -1708,49 +1718,49 @@
     readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';
   }
 
-  /** @name XcmV3WeightLimit (136) */
-  interface XcmV3WeightLimit extends Enum {
+  /** @name StagingXcmV3WeightLimit (136) */
+  interface StagingXcmV3WeightLimit extends Enum {
     readonly isUnlimited: boolean;
     readonly isLimited: boolean;
     readonly asLimited: SpWeightsWeightV2Weight;
     readonly type: 'Unlimited' | 'Limited';
   }
 
-  /** @name XcmVersionedMultiAsset (137) */
-  interface XcmVersionedMultiAsset extends Enum {
+  /** @name StagingXcmVersionedMultiAsset (137) */
+  interface StagingXcmVersionedMultiAsset extends Enum {
     readonly isV2: boolean;
-    readonly asV2: XcmV2MultiAsset;
+    readonly asV2: StagingXcmV2MultiAsset;
     readonly isV3: boolean;
-    readonly asV3: XcmV3MultiAsset;
+    readonly asV3: StagingXcmV3MultiAsset;
     readonly type: 'V2' | 'V3';
   }
 
-  /** @name XcmV2MultiAsset (138) */
-  interface XcmV2MultiAsset extends Struct {
-    readonly id: XcmV2MultiassetAssetId;
-    readonly fun: XcmV2MultiassetFungibility;
+  /** @name StagingXcmV2MultiAsset (138) */
+  interface StagingXcmV2MultiAsset extends Struct {
+    readonly id: StagingXcmV2MultiassetAssetId;
+    readonly fun: StagingXcmV2MultiassetFungibility;
   }
 
-  /** @name XcmV2MultiassetAssetId (139) */
-  interface XcmV2MultiassetAssetId extends Enum {
+  /** @name StagingXcmV2MultiassetAssetId (139) */
+  interface StagingXcmV2MultiassetAssetId extends Enum {
     readonly isConcrete: boolean;
-    readonly asConcrete: XcmV2MultiLocation;
+    readonly asConcrete: StagingXcmV2MultiLocation;
     readonly isAbstract: boolean;
     readonly asAbstract: Bytes;
     readonly type: 'Concrete' | 'Abstract';
   }
 
-  /** @name XcmV2MultiassetFungibility (140) */
-  interface XcmV2MultiassetFungibility extends Enum {
+  /** @name StagingXcmV2MultiassetFungibility (140) */
+  interface StagingXcmV2MultiassetFungibility extends Enum {
     readonly isFungible: boolean;
     readonly asFungible: Compact<u128>;
     readonly isNonFungible: boolean;
-    readonly asNonFungible: XcmV2MultiassetAssetInstance;
+    readonly asNonFungible: StagingXcmV2MultiassetAssetInstance;
     readonly type: 'Fungible' | 'NonFungible';
   }
 
-  /** @name XcmV2MultiassetAssetInstance (141) */
-  interface XcmV2MultiassetAssetInstance extends Enum {
+  /** @name StagingXcmV2MultiassetAssetInstance (141) */
+  interface StagingXcmV2MultiassetAssetInstance extends Enum {
     readonly isUndefined: boolean;
     readonly isIndex: boolean;
     readonly asIndex: Compact<u128>;
@@ -1767,49 +1777,49 @@
     readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';
   }
 
-  /** @name XcmVersionedMultiAssets (144) */
-  interface XcmVersionedMultiAssets extends Enum {
+  /** @name StagingXcmVersionedMultiAssets (144) */
+  interface StagingXcmVersionedMultiAssets extends Enum {
     readonly isV2: boolean;
-    readonly asV2: XcmV2MultiassetMultiAssets;
+    readonly asV2: StagingXcmV2MultiassetMultiAssets;
     readonly isV3: boolean;
-    readonly asV3: XcmV3MultiassetMultiAssets;
+    readonly asV3: StagingXcmV3MultiassetMultiAssets;
     readonly type: 'V2' | 'V3';
   }
 
-  /** @name XcmV2MultiassetMultiAssets (145) */
-  interface XcmV2MultiassetMultiAssets extends Vec<XcmV2MultiAsset> {}
+  /** @name StagingXcmV2MultiassetMultiAssets (145) */
+  interface StagingXcmV2MultiassetMultiAssets extends Vec<StagingXcmV2MultiAsset> {}
 
   /** @name OrmlTokensModuleCall (147) */
   interface OrmlTokensModuleCall extends Enum {
     readonly isTransfer: boolean;
     readonly asTransfer: {
       readonly dest: MultiAddress;
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly amount: Compact<u128>;
     } & Struct;
     readonly isTransferAll: boolean;
     readonly asTransferAll: {
       readonly dest: MultiAddress;
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly keepAlive: bool;
     } & Struct;
     readonly isTransferKeepAlive: boolean;
     readonly asTransferKeepAlive: {
       readonly dest: MultiAddress;
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly amount: Compact<u128>;
     } & Struct;
     readonly isForceTransfer: boolean;
     readonly asForceTransfer: {
       readonly source: MultiAddress;
       readonly dest: MultiAddress;
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly amount: Compact<u128>;
     } & Struct;
     readonly isSetBalance: boolean;
     readonly asSetBalance: {
       readonly who: MultiAddress;
-      readonly currencyId: PalletForeignAssetsAssetIds;
+      readonly currencyId: PalletForeignAssetsAssetId;
       readonly newFree: Compact<u128>;
       readonly newReserved: Compact<u128>;
     } & Struct;
@@ -2265,9 +2275,9 @@
   /** @name PalletXcmOrigin (214) */
   interface PalletXcmOrigin extends Enum {
     readonly isXcm: boolean;
-    readonly asXcm: XcmV3MultiLocation;
+    readonly asXcm: StagingXcmV3MultiLocation;
     readonly isResponse: boolean;
-    readonly asResponse: XcmV3MultiLocation;
+    readonly asResponse: StagingXcmV3MultiLocation;
     readonly type: 'Xcm' | 'Response';
   }
 
@@ -2382,32 +2392,32 @@
   interface PalletXcmCall extends Enum {
     readonly isSend: boolean;
     readonly asSend: {
-      readonly dest: XcmVersionedMultiLocation;
-      readonly message: XcmVersionedXcm;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly message: StagingXcmVersionedXcm;
     } & Struct;
     readonly isTeleportAssets: boolean;
     readonly asTeleportAssets: {
-      readonly dest: XcmVersionedMultiLocation;
-      readonly beneficiary: XcmVersionedMultiLocation;
-      readonly assets: XcmVersionedMultiAssets;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly beneficiary: StagingXcmVersionedMultiLocation;
+      readonly assets: StagingXcmVersionedMultiAssets;
       readonly feeAssetItem: u32;
     } & Struct;
     readonly isReserveTransferAssets: boolean;
     readonly asReserveTransferAssets: {
-      readonly dest: XcmVersionedMultiLocation;
-      readonly beneficiary: XcmVersionedMultiLocation;
-      readonly assets: XcmVersionedMultiAssets;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly beneficiary: StagingXcmVersionedMultiLocation;
+      readonly assets: StagingXcmVersionedMultiAssets;
       readonly feeAssetItem: u32;
     } & Struct;
     readonly isExecute: boolean;
     readonly asExecute: {
-      readonly message: XcmVersionedXcm;
+      readonly message: StagingXcmVersionedXcm;
       readonly maxWeight: SpWeightsWeightV2Weight;
     } & Struct;
     readonly isForceXcmVersion: boolean;
     readonly asForceXcmVersion: {
-      readonly location: XcmV3MultiLocation;
-      readonly xcmVersion: u32;
+      readonly location: StagingXcmV3MultiLocation;
+      readonly version: u32;
     } & Struct;
     readonly isForceDefaultXcmVersion: boolean;
     readonly asForceDefaultXcmVersion: {
@@ -2415,27 +2425,27 @@
     } & Struct;
     readonly isForceSubscribeVersionNotify: boolean;
     readonly asForceSubscribeVersionNotify: {
-      readonly location: XcmVersionedMultiLocation;
+      readonly location: StagingXcmVersionedMultiLocation;
     } & Struct;
     readonly isForceUnsubscribeVersionNotify: boolean;
     readonly asForceUnsubscribeVersionNotify: {
-      readonly location: XcmVersionedMultiLocation;
+      readonly location: StagingXcmVersionedMultiLocation;
     } & Struct;
     readonly isLimitedReserveTransferAssets: boolean;
     readonly asLimitedReserveTransferAssets: {
-      readonly dest: XcmVersionedMultiLocation;
-      readonly beneficiary: XcmVersionedMultiLocation;
-      readonly assets: XcmVersionedMultiAssets;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly beneficiary: StagingXcmVersionedMultiLocation;
+      readonly assets: StagingXcmVersionedMultiAssets;
       readonly feeAssetItem: u32;
-      readonly weightLimit: XcmV3WeightLimit;
+      readonly weightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isLimitedTeleportAssets: boolean;
     readonly asLimitedTeleportAssets: {
-      readonly dest: XcmVersionedMultiLocation;
-      readonly beneficiary: XcmVersionedMultiLocation;
-      readonly assets: XcmVersionedMultiAssets;
+      readonly dest: StagingXcmVersionedMultiLocation;
+      readonly beneficiary: StagingXcmVersionedMultiLocation;
+      readonly assets: StagingXcmVersionedMultiAssets;
       readonly feeAssetItem: u32;
-      readonly weightLimit: XcmV3WeightLimit;
+      readonly weightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isForceSuspension: boolean;
     readonly asForceSuspension: {
@@ -2444,48 +2454,48 @@
     readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets' | 'ForceSuspension';
   }
 
-  /** @name XcmVersionedXcm (225) */
-  interface XcmVersionedXcm extends Enum {
+  /** @name StagingXcmVersionedXcm (225) */
+  interface StagingXcmVersionedXcm extends Enum {
     readonly isV2: boolean;
-    readonly asV2: XcmV2Xcm;
+    readonly asV2: StagingXcmV2Xcm;
     readonly isV3: boolean;
-    readonly asV3: XcmV3Xcm;
+    readonly asV3: StagingXcmV3Xcm;
     readonly type: 'V2' | 'V3';
   }
 
-  /** @name XcmV2Xcm (226) */
-  interface XcmV2Xcm extends Vec<XcmV2Instruction> {}
+  /** @name StagingXcmV2Xcm (226) */
+  interface StagingXcmV2Xcm extends Vec<StagingXcmV2Instruction> {}
 
-  /** @name XcmV2Instruction (228) */
-  interface XcmV2Instruction extends Enum {
+  /** @name StagingXcmV2Instruction (228) */
+  interface StagingXcmV2Instruction extends Enum {
     readonly isWithdrawAsset: boolean;
-    readonly asWithdrawAsset: XcmV2MultiassetMultiAssets;
+    readonly asWithdrawAsset: StagingXcmV2MultiassetMultiAssets;
     readonly isReserveAssetDeposited: boolean;
-    readonly asReserveAssetDeposited: XcmV2MultiassetMultiAssets;
+    readonly asReserveAssetDeposited: StagingXcmV2MultiassetMultiAssets;
     readonly isReceiveTeleportedAsset: boolean;
-    readonly asReceiveTeleportedAsset: XcmV2MultiassetMultiAssets;
+    readonly asReceiveTeleportedAsset: StagingXcmV2MultiassetMultiAssets;
     readonly isQueryResponse: boolean;
     readonly asQueryResponse: {
       readonly queryId: Compact<u64>;
-      readonly response: XcmV2Response;
+      readonly response: StagingXcmV2Response;
       readonly maxWeight: Compact<u64>;
     } & Struct;
     readonly isTransferAsset: boolean;
     readonly asTransferAsset: {
-      readonly assets: XcmV2MultiassetMultiAssets;
-      readonly beneficiary: XcmV2MultiLocation;
+      readonly assets: StagingXcmV2MultiassetMultiAssets;
+      readonly beneficiary: StagingXcmV2MultiLocation;
     } & Struct;
     readonly isTransferReserveAsset: boolean;
     readonly asTransferReserveAsset: {
-      readonly assets: XcmV2MultiassetMultiAssets;
-      readonly dest: XcmV2MultiLocation;
-      readonly xcm: XcmV2Xcm;
+      readonly assets: StagingXcmV2MultiassetMultiAssets;
+      readonly dest: StagingXcmV2MultiLocation;
+      readonly xcm: StagingXcmV2Xcm;
     } & Struct;
     readonly isTransact: boolean;
     readonly asTransact: {
-      readonly originType: XcmV2OriginKind;
+      readonly originType: StagingXcmV2OriginKind;
       readonly requireWeightAtMost: Compact<u64>;
-      readonly call: XcmDoubleEncoded;
+      readonly call: StagingXcmDoubleEncoded;
     } & Struct;
     readonly isHrmpNewChannelOpenRequest: boolean;
     readonly asHrmpNewChannelOpenRequest: {
@@ -2505,65 +2515,65 @@
     } & Struct;
     readonly isClearOrigin: boolean;
     readonly isDescendOrigin: boolean;
-    readonly asDescendOrigin: XcmV2MultilocationJunctions;
+    readonly asDescendOrigin: StagingXcmV2MultilocationJunctions;
     readonly isReportError: boolean;
     readonly asReportError: {
       readonly queryId: Compact<u64>;
-      readonly dest: XcmV2MultiLocation;
+      readonly dest: StagingXcmV2MultiLocation;
       readonly maxResponseWeight: Compact<u64>;
     } & Struct;
     readonly isDepositAsset: boolean;
     readonly asDepositAsset: {
-      readonly assets: XcmV2MultiassetMultiAssetFilter;
+      readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
       readonly maxAssets: Compact<u32>;
-      readonly beneficiary: XcmV2MultiLocation;
+      readonly beneficiary: StagingXcmV2MultiLocation;
     } & Struct;
     readonly isDepositReserveAsset: boolean;
     readonly asDepositReserveAsset: {
-      readonly assets: XcmV2MultiassetMultiAssetFilter;
+      readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
       readonly maxAssets: Compact<u32>;
-      readonly dest: XcmV2MultiLocation;
-      readonly xcm: XcmV2Xcm;
+      readonly dest: StagingXcmV2MultiLocation;
+      readonly xcm: StagingXcmV2Xcm;
     } & Struct;
     readonly isExchangeAsset: boolean;
     readonly asExchangeAsset: {
-      readonly give: XcmV2MultiassetMultiAssetFilter;
-      readonly receive: XcmV2MultiassetMultiAssets;
+      readonly give: StagingXcmV2MultiassetMultiAssetFilter;
+      readonly receive: StagingXcmV2MultiassetMultiAssets;
     } & Struct;
     readonly isInitiateReserveWithdraw: boolean;
     readonly asInitiateReserveWithdraw: {
-      readonly assets: XcmV2MultiassetMultiAssetFilter;
-      readonly reserve: XcmV2MultiLocation;
-      readonly xcm: XcmV2Xcm;
+      readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
+      readonly reserve: StagingXcmV2MultiLocation;
+      readonly xcm: StagingXcmV2Xcm;
     } & Struct;
     readonly isInitiateTeleport: boolean;
     readonly asInitiateTeleport: {
-      readonly assets: XcmV2MultiassetMultiAssetFilter;
-      readonly dest: XcmV2MultiLocation;
-      readonly xcm: XcmV2Xcm;
+      readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
+      readonly dest: StagingXcmV2MultiLocation;
+      readonly xcm: StagingXcmV2Xcm;
     } & Struct;
     readonly isQueryHolding: boolean;
     readonly asQueryHolding: {
       readonly queryId: Compact<u64>;
-      readonly dest: XcmV2MultiLocation;
-      readonly assets: XcmV2MultiassetMultiAssetFilter;
+      readonly dest: StagingXcmV2MultiLocation;
+      readonly assets: StagingXcmV2MultiassetMultiAssetFilter;
       readonly maxResponseWeight: Compact<u64>;
     } & Struct;
     readonly isBuyExecution: boolean;
     readonly asBuyExecution: {
-      readonly fees: XcmV2MultiAsset;
-      readonly weightLimit: XcmV2WeightLimit;
+      readonly fees: StagingXcmV2MultiAsset;
+      readonly weightLimit: StagingXcmV2WeightLimit;
     } & Struct;
     readonly isRefundSurplus: boolean;
     readonly isSetErrorHandler: boolean;
-    readonly asSetErrorHandler: XcmV2Xcm;
+    readonly asSetErrorHandler: StagingXcmV2Xcm;
     readonly isSetAppendix: boolean;
-    readonly asSetAppendix: XcmV2Xcm;
+    readonly asSetAppendix: StagingXcmV2Xcm;
     readonly isClearError: boolean;
     readonly isClaimAsset: boolean;
     readonly asClaimAsset: {
-      readonly assets: XcmV2MultiassetMultiAssets;
-      readonly ticket: XcmV2MultiLocation;
+      readonly assets: StagingXcmV2MultiassetMultiAssets;
+      readonly ticket: StagingXcmV2MultiLocation;
     } & Struct;
     readonly isTrap: boolean;
     readonly asTrap: Compact<u64>;
@@ -2576,20 +2586,20 @@
     readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';
   }
 
-  /** @name XcmV2Response (229) */
-  interface XcmV2Response extends Enum {
+  /** @name StagingXcmV2Response (229) */
+  interface StagingXcmV2Response extends Enum {
     readonly isNull: boolean;
     readonly isAssets: boolean;
-    readonly asAssets: XcmV2MultiassetMultiAssets;
+    readonly asAssets: StagingXcmV2MultiassetMultiAssets;
     readonly isExecutionResult: boolean;
-    readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;
+    readonly asExecutionResult: Option<ITuple<[u32, StagingXcmV2TraitsError]>>;
     readonly isVersion: boolean;
     readonly asVersion: u32;
     readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';
   }
 
-  /** @name XcmV2TraitsError (232) */
-  interface XcmV2TraitsError extends Enum {
+  /** @name StagingXcmV2TraitsError (232) */
+  interface StagingXcmV2TraitsError extends Enum {
     readonly isOverflow: boolean;
     readonly isUnimplemented: boolean;
     readonly isUntrustedReserveLocation: boolean;
@@ -2621,8 +2631,8 @@
     readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';
   }
 
-  /** @name XcmV2OriginKind (233) */
-  interface XcmV2OriginKind extends Enum {
+  /** @name StagingXcmV2OriginKind (233) */
+  interface StagingXcmV2OriginKind extends Enum {
     readonly isNative: boolean;
     readonly isSovereignAccount: boolean;
     readonly isSuperuser: boolean;
@@ -2630,80 +2640,80 @@
     readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';
   }
 
-  /** @name XcmDoubleEncoded (234) */
-  interface XcmDoubleEncoded extends Struct {
+  /** @name StagingXcmDoubleEncoded (234) */
+  interface StagingXcmDoubleEncoded extends Struct {
     readonly encoded: Bytes;
   }
 
-  /** @name XcmV2MultiassetMultiAssetFilter (235) */
-  interface XcmV2MultiassetMultiAssetFilter extends Enum {
+  /** @name StagingXcmV2MultiassetMultiAssetFilter (235) */
+  interface StagingXcmV2MultiassetMultiAssetFilter extends Enum {
     readonly isDefinite: boolean;
-    readonly asDefinite: XcmV2MultiassetMultiAssets;
+    readonly asDefinite: StagingXcmV2MultiassetMultiAssets;
     readonly isWild: boolean;
-    readonly asWild: XcmV2MultiassetWildMultiAsset;
+    readonly asWild: StagingXcmV2MultiassetWildMultiAsset;
     readonly type: 'Definite' | 'Wild';
   }
 
-  /** @name XcmV2MultiassetWildMultiAsset (236) */
-  interface XcmV2MultiassetWildMultiAsset extends Enum {
+  /** @name StagingXcmV2MultiassetWildMultiAsset (236) */
+  interface StagingXcmV2MultiassetWildMultiAsset extends Enum {
     readonly isAll: boolean;
     readonly isAllOf: boolean;
     readonly asAllOf: {
-      readonly id: XcmV2MultiassetAssetId;
-      readonly fun: XcmV2MultiassetWildFungibility;
+      readonly id: StagingXcmV2MultiassetAssetId;
+      readonly fun: StagingXcmV2MultiassetWildFungibility;
     } & Struct;
     readonly type: 'All' | 'AllOf';
   }
 
-  /** @name XcmV2MultiassetWildFungibility (237) */
-  interface XcmV2MultiassetWildFungibility extends Enum {
+  /** @name StagingXcmV2MultiassetWildFungibility (237) */
+  interface StagingXcmV2MultiassetWildFungibility extends Enum {
     readonly isFungible: boolean;
     readonly isNonFungible: boolean;
     readonly type: 'Fungible' | 'NonFungible';
   }
 
-  /** @name XcmV2WeightLimit (238) */
-  interface XcmV2WeightLimit extends Enum {
+  /** @name StagingXcmV2WeightLimit (238) */
+  interface StagingXcmV2WeightLimit extends Enum {
     readonly isUnlimited: boolean;
     readonly isLimited: boolean;
     readonly asLimited: Compact<u64>;
     readonly type: 'Unlimited' | 'Limited';
   }
 
-  /** @name XcmV3Xcm (239) */
-  interface XcmV3Xcm extends Vec<XcmV3Instruction> {}
+  /** @name StagingXcmV3Xcm (239) */
+  interface StagingXcmV3Xcm extends Vec<StagingXcmV3Instruction> {}
 
-  /** @name XcmV3Instruction (241) */
-  interface XcmV3Instruction extends Enum {
+  /** @name StagingXcmV3Instruction (241) */
+  interface StagingXcmV3Instruction extends Enum {
     readonly isWithdrawAsset: boolean;
-    readonly asWithdrawAsset: XcmV3MultiassetMultiAssets;
+    readonly asWithdrawAsset: StagingXcmV3MultiassetMultiAssets;
     readonly isReserveAssetDeposited: boolean;
-    readonly asReserveAssetDeposited: XcmV3MultiassetMultiAssets;
+    readonly asReserveAssetDeposited: StagingXcmV3MultiassetMultiAssets;
     readonly isReceiveTeleportedAsset: boolean;
-    readonly asReceiveTeleportedAsset: XcmV3MultiassetMultiAssets;
+    readonly asReceiveTeleportedAsset: StagingXcmV3MultiassetMultiAssets;
     readonly isQueryResponse: boolean;
     readonly asQueryResponse: {
       readonly queryId: Compact<u64>;
-      readonly response: XcmV3Response;
+      readonly response: StagingXcmV3Response;
       readonly maxWeight: SpWeightsWeightV2Weight;
-      readonly querier: Option<XcmV3MultiLocation>;
+      readonly querier: Option<StagingXcmV3MultiLocation>;
     } & Struct;
     readonly isTransferAsset: boolean;
     readonly asTransferAsset: {
-      readonly assets: XcmV3MultiassetMultiAssets;
-      readonly beneficiary: XcmV3MultiLocation;
+      readonly assets: StagingXcmV3MultiassetMultiAssets;
+      readonly beneficiary: StagingXcmV3MultiLocation;
     } & Struct;
     readonly isTransferReserveAsset: boolean;
     readonly asTransferReserveAsset: {
-      readonly assets: XcmV3MultiassetMultiAssets;
-      readonly dest: XcmV3MultiLocation;
-      readonly xcm: XcmV3Xcm;
+      readonly assets: StagingXcmV3MultiassetMultiAssets;
+      readonly dest: StagingXcmV3MultiLocation;
+      readonly xcm: StagingXcmV3Xcm;
     } & Struct;
     readonly isTransact: boolean;
     readonly asTransact: {
-      readonly originKind: XcmV2OriginKind;
+      readonly originKind: StagingXcmV2OriginKind;
       readonly requireWeightAtMost: SpWeightsWeightV2Weight;
-      readonly call: XcmDoubleEncoded;
+      readonly call: StagingXcmDoubleEncoded;
     } & Struct;
     readonly isHrmpNewChannelOpenRequest: boolean;
     readonly asHrmpNewChannelOpenRequest: {
@@ -2723,58 +2733,58 @@
     } & Struct;
     readonly isClearOrigin: boolean;
     readonly isDescendOrigin: boolean;
-    readonly asDescendOrigin: XcmV3Junctions;
+    readonly asDescendOrigin: StagingXcmV3Junctions;
     readonly isReportError: boolean;
-    readonly asReportError: XcmV3QueryResponseInfo;
+    readonly asReportError: StagingXcmV3QueryResponseInfo;
     readonly isDepositAsset: boolean;
     readonly asDepositAsset: {
-      readonly assets: XcmV3MultiassetMultiAssetFilter;
-      readonly beneficiary: XcmV3MultiLocation;
+      readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+      readonly beneficiary: StagingXcmV3MultiLocation;
     } & Struct;
     readonly isDepositReserveAsset: boolean;
     readonly asDepositReserveAsset: {
-      readonly assets: XcmV3MultiassetMultiAssetFilter;
-      readonly dest: XcmV3MultiLocation;
-      readonly xcm: XcmV3Xcm;
+      readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+      readonly dest: StagingXcmV3MultiLocation;
+      readonly xcm: StagingXcmV3Xcm;
     } & Struct;
     readonly isExchangeAsset: boolean;
     readonly asExchangeAsset: {
-      readonly give: XcmV3MultiassetMultiAssetFilter;
-      readonly want: XcmV3MultiassetMultiAssets;
+      readonly give: StagingXcmV3MultiassetMultiAssetFilter;
+      readonly want: StagingXcmV3MultiassetMultiAssets;
       readonly maximal: bool;
     } & Struct;
     readonly isInitiateReserveWithdraw: boolean;
     readonly asInitiateReserveWithdraw: {
-      readonly assets: XcmV3MultiassetMultiAssetFilter;
-      readonly reserve: XcmV3MultiLocation;
-      readonly xcm: XcmV3Xcm;
+      readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+      readonly reserve: StagingXcmV3MultiLocation;
+      readonly xcm: StagingXcmV3Xcm;
     } & Struct;
     readonly isInitiateTeleport: boolean;
     readonly asInitiateTeleport: {
-      readonly assets: XcmV3MultiassetMultiAssetFilter;
-      readonly dest: XcmV3MultiLocation;
-      readonly xcm: XcmV3Xcm;
+      readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
+      readonly dest: StagingXcmV3MultiLocation;
+      readonly xcm: StagingXcmV3Xcm;
     } & Struct;
     readonly isReportHolding: boolean;
     readonly asReportHolding: {
-      readonly responseInfo: XcmV3QueryResponseInfo;
-      readonly assets: XcmV3MultiassetMultiAssetFilter;
+      readonly responseInfo: StagingXcmV3QueryResponseInfo;
+      readonly assets: StagingXcmV3MultiassetMultiAssetFilter;
     } & Struct;
     readonly isBuyExecution: boolean;
     readonly asBuyExecution: {
-      readonly fees: XcmV3MultiAsset;
-      readonly weightLimit: XcmV3WeightLimit;
+      readonly fees: StagingXcmV3MultiAsset;
+      readonly weightLimit: StagingXcmV3WeightLimit;
     } & Struct;
     readonly isRefundSurplus: boolean;
     readonly isSetErrorHandler: boolean;
-    readonly asSetErrorHandler: XcmV3Xcm;
+    readonly asSetErrorHandler: StagingXcmV3Xcm;
     readonly isSetAppendix: boolean;
-    readonly asSetAppendix: XcmV3Xcm;
+    readonly asSetAppendix: StagingXcmV3Xcm;
     readonly isClearError: boolean;
     readonly isClaimAsset: boolean;
     readonly asClaimAsset: {
-      readonly assets: XcmV3MultiassetMultiAssets;
-      readonly ticket: XcmV3MultiLocation;
+      readonly assets: StagingXcmV3MultiassetMultiAssets;
+      readonly ticket: StagingXcmV3MultiLocation;
     } & Struct;
     readonly isTrap: boolean;
     readonly asTrap: Compact<u64>;
@@ -2785,19 +2795,19 @@
     } & Struct;
     readonly isUnsubscribeVersion: boolean;
     readonly isBurnAsset: boolean;
-    readonly asBurnAsset: XcmV3MultiassetMultiAssets;
+    readonly asBurnAsset: StagingXcmV3MultiassetMultiAssets;
     readonly isExpectAsset: boolean;
-    readonly asExpectAsset: XcmV3MultiassetMultiAssets;
+    readonly asExpectAsset: StagingXcmV3MultiassetMultiAssets;
     readonly isExpectOrigin: boolean;
-    readonly asExpectOrigin: Option<XcmV3MultiLocation>;
+    readonly asExpectOrigin: Option<StagingXcmV3MultiLocation>;
     readonly isExpectError: boolean;
-    readonly asExpectError: Option<ITuple<[u32, XcmV3TraitsError]>>;
+    readonly asExpectError: Option<ITuple<[u32, StagingXcmV3TraitsError]>>;
     readonly isExpectTransactStatus: boolean;
-    readonly asExpectTransactStatus: XcmV3MaybeErrorCode;
+    readonly asExpectTransactStatus: StagingXcmV3MaybeErrorCode;
     readonly isQueryPallet: boolean;
     readonly asQueryPallet: {
       readonly moduleName: Bytes;
-      readonly responseInfo: XcmV3QueryResponseInfo;
+      readonly responseInfo: StagingXcmV3QueryResponseInfo;
     } & Struct;
     readonly isExpectPallet: boolean;
     readonly asExpectPallet: {
@@ -2808,35 +2818,35 @@
       readonly minCrateMinor: Compact<u32>;
     } & Struct;
     readonly isReportTransactStatus: boolean;
-    readonly asReportTransactStatus: XcmV3QueryResponseInfo;
+    readonly asReportTransactStatus: StagingXcmV3QueryResponseInfo;
     readonly isClearTransactStatus: boolean;
     readonly isUniversalOrigin: boolean;
-    readonly asUniversalOrigin: XcmV3Junction;
+    readonly asUniversalOrigin: StagingXcmV3Junction;
     readonly isExportMessage: boolean;
     readonly asExportMessage: {
-      readonly network: XcmV3JunctionNetworkId;
-      readonly destination: XcmV3Junctions;
-      readonly xcm: XcmV3Xcm;
+      readonly network: StagingXcmV3JunctionNetworkId;
+      readonly destination: StagingXcmV3Junctions;
+      readonly xcm: StagingXcmV3Xcm;
     } & Struct;
     readonly isLockAsset: boolean;
     readonly asLockAsset: {
-      readonly asset: XcmV3MultiAsset;
-      readonly unlocker: XcmV3MultiLocation;
+      readonly asset: StagingXcmV3MultiAsset;
+      readonly unlocker: StagingXcmV3MultiLocation;
     } & Struct;
     readonly isUnlockAsset: boolean;
     readonly asUnlockAsset: {
-      readonly asset: XcmV3MultiAsset;
-      readonly target: XcmV3MultiLocation;
+      readonly asset: StagingXcmV3MultiAsset;
+      readonly target: StagingXcmV3MultiLocation;
     } & Struct;
     readonly isNoteUnlockable: boolean;
     readonly asNoteUnlockable: {
-      readonly asset: XcmV3MultiAsset;
-      readonly owner: XcmV3MultiLocation;
+      readonly asset: StagingXcmV3MultiAsset;
+      readonly owner: StagingXcmV3MultiLocation;
     } & Struct;
     readonly isRequestUnlock: boolean;
     readonly asRequestUnlock: {
-      readonly asset: XcmV3MultiAsset;
-      readonly locker: XcmV3MultiLocation;
+      readonly asset: StagingXcmV3MultiAsset;
+      readonly locker: StagingXcmV3MultiLocation;
     } & Struct;
     readonly isSetFeesMode: boolean;
     readonly asSetFeesMode: {
@@ -2846,33 +2856,33 @@
     readonly asSetTopic: U8aFixed;
     readonly isClearTopic: boolean;
     readonly isAliasOrigin: boolean;
-    readonly asAliasOrigin: XcmV3MultiLocation;
+    readonly asAliasOrigin: StagingXcmV3MultiLocation;
     readonly isUnpaidExecution: boolean;
     readonly asUnpaidExecution: {
-      readonly weightLimit: XcmV3WeightLimit;
-      readonly checkOrigin: Option<XcmV3MultiLocation>;
+      readonly weightLimit: StagingXcmV3WeightLimit;
+      readonly checkOrigin: Option<StagingXcmV3MultiLocation>;
     } & Struct;
     readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'ReportHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion' | 'BurnAsset' | 'ExpectAsset' | 'ExpectOrigin' | 'ExpectError' | 'ExpectTransactStatus' | 'QueryPallet' | 'ExpectPallet' | 'ReportTransactStatus' | 'ClearTransactStatus' | 'UniversalOrigin' | 'ExportMessage' | 'LockAsset' | 'UnlockAsset' | 'NoteUnlockable' | 'RequestUnlock' | 'SetFeesMode' | 'SetTopic' | 'ClearTopic' | 'AliasOrigin' | 'UnpaidExecution';
   }
 
-  /** @name XcmV3Response (242) */
-  interface XcmV3Response extends Enum {
+  /** @name StagingXcmV3Response (242) */
+  interface StagingXcmV3Response extends Enum {
     readonly isNull: boolean;
     readonly isAssets: boolean;
-    readonly asAssets: XcmV3MultiassetMultiAssets;
+    readonly asAssets: StagingXcmV3MultiassetMultiAssets;
     readonly isExecutionResult: boolean;
-    readonly asExecutionResult: Option<ITuple<[u32, XcmV3TraitsError]>>;
+    readonly asExecutionResult: Option<ITuple<[u32, StagingXcmV3TraitsError]>>;
     readonly isVersion: boolean;
     readonly asVersion: u32;
     readonly isPalletsInfo: boolean;
-    readonly asPalletsInfo: Vec<XcmV3PalletInfo>;
+    readonly asPalletsInfo: Vec<StagingXcmV3PalletInfo>;
     readonly isDispatchResult: boolean;
-    readonly asDispatchResult: XcmV3MaybeErrorCode;
+    readonly asDispatchResult: StagingXcmV3MaybeErrorCode;
     readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version' | 'PalletsInfo' | 'DispatchResult';
   }
 
-  /** @name XcmV3TraitsError (245) */
-  interface XcmV3TraitsError extends Enum {
+  /** @name StagingXcmV3TraitsError (245) */
+  interface StagingXcmV3TraitsError extends Enum {
     readonly isOverflow: boolean;
     readonly isUnimplemented: boolean;
     readonly isUntrustedReserveLocation: boolean;
@@ -2918,8 +2928,8 @@
     readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'LocationFull' | 'LocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'ExpectationFalse' | 'PalletNotFound' | 'NameMismatch' | 'VersionIncompatible' | 'HoldingWouldOverflow' | 'ExportError' | 'ReanchorFailed' | 'NoDeal' | 'FeesNotMet' | 'LockError' | 'NoPermission' | 'Unanchored' | 'NotDepositable' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable' | 'ExceedsStackLimit';
   }
 
-  /** @name XcmV3PalletInfo (247) */
-  interface XcmV3PalletInfo extends Struct {
+  /** @name StagingXcmV3PalletInfo (247) */
+  interface StagingXcmV3PalletInfo extends Struct {
     readonly index: Compact<u32>;
     readonly name: Bytes;
     readonly moduleName: Bytes;
@@ -2928,8 +2938,8 @@
     readonly patch: Compact<u32>;
   }
 
-  /** @name XcmV3MaybeErrorCode (250) */
-  interface XcmV3MaybeErrorCode extends Enum {
+  /** @name StagingXcmV3MaybeErrorCode (250) */
+  interface StagingXcmV3MaybeErrorCode extends Enum {
     readonly isSuccess: boolean;
     readonly isError: boolean;
     readonly asError: Bytes;
@@ -2938,43 +2948,43 @@
     readonly type: 'Success' | 'Error' | 'TruncatedError';
   }
 
-  /** @name XcmV3QueryResponseInfo (253) */
-  interface XcmV3QueryResponseInfo extends Struct {
-    readonly destination: XcmV3MultiLocation;
+  /** @name StagingXcmV3QueryResponseInfo (253) */
+  interface StagingXcmV3QueryResponseInfo extends Struct {
+    readonly destination: StagingXcmV3MultiLocation;
     readonly queryId: Compact<u64>;
     readonly maxWeight: SpWeightsWeightV2Weight;
   }
 
-  /** @name XcmV3MultiassetMultiAssetFilter (254) */
-  interface XcmV3MultiassetMultiAssetFilter extends Enum {
+  /** @name StagingXcmV3MultiassetMultiAssetFilter (254) */
+  interface StagingXcmV3MultiassetMultiAssetFilter extends Enum {
     readonly isDefinite: boolean;
-    readonly asDefinite: XcmV3MultiassetMultiAssets;
+    readonly asDefinite: StagingXcmV3MultiassetMultiAssets;
     readonly isWild: boolean;
-    readonly asWild: XcmV3MultiassetWildMultiAsset;
+    readonly asWild: StagingXcmV3MultiassetWildMultiAsset;
     readonly type: 'Definite' | 'Wild';
   }
 
-  /** @name XcmV3MultiassetWildMultiAsset (255) */
-  interface XcmV3MultiassetWildMultiAsset extends Enum {
+  /** @name StagingXcmV3MultiassetWildMultiAsset (255) */
+  interface StagingXcmV3MultiassetWildMultiAsset extends Enum {
     readonly isAll: boolean;
     readonly isAllOf: boolean;
     readonly asAllOf: {
-      readonly id: XcmV3MultiassetAssetId;
-      readonly fun: XcmV3MultiassetWildFungibility;
+      readonly id: StagingXcmV3MultiassetAssetId;
+      readonly fun: StagingXcmV3MultiassetWildFungibility;
     } & Struct;
     readonly isAllCounted: boolean;
     readonly asAllCounted: Compact<u32>;
     readonly isAllOfCounted: boolean;
     readonly asAllOfCounted: {
-      readonly id: XcmV3MultiassetAssetId;
-      readonly fun: XcmV3MultiassetWildFungibility;
+      readonly id: StagingXcmV3MultiassetAssetId;
+      readonly fun: StagingXcmV3MultiassetWildFungibility;
       readonly count: Compact<u32>;
     } & Struct;
     readonly type: 'All' | 'AllOf' | 'AllCounted' | 'AllOfCounted';
   }
 
-  /** @name XcmV3MultiassetWildFungibility (256) */
-  interface XcmV3MultiassetWildFungibility extends Enum {
+  /** @name StagingXcmV3MultiassetWildFungibility (256) */
+  interface StagingXcmV3MultiassetWildFungibility extends Enum {
     readonly isFungible: boolean;
     readonly isNonFungible: boolean;
     readonly type: 'Fungible' | 'NonFungible';
@@ -3427,13 +3437,13 @@
     readonly isRegisterForeignAsset: boolean;
     readonly asRegisterForeignAsset: {
       readonly owner: AccountId32;
-      readonly location: XcmVersionedMultiLocation;
+      readonly location: StagingXcmVersionedMultiLocation;
       readonly metadata: PalletForeignAssetsModuleAssetMetadata;
     } & Struct;
     readonly isUpdateForeignAsset: boolean;
     readonly asUpdateForeignAsset: {
       readonly foreignAssetId: u32;
-      readonly location: XcmVersionedMultiLocation;
+      readonly location: StagingXcmVersionedMultiLocation;
       readonly metadata: PalletForeignAssetsModuleAssetMetadata;
     } & Struct;
     readonly type: 'RegisterForeignAsset' | 'UpdateForeignAsset';
@@ -3623,15 +3633,42 @@
   interface PalletMaintenanceCall extends Enum {
     readonly isEnable: boolean;
     readonly isDisable: boolean;
-    readonly isExecutePreimage: boolean;
-    readonly asExecutePreimage: {
-      readonly hash_: H256;
-      readonly weightBound: SpWeightsWeightV2Weight;
+    readonly type: 'Enable' | 'Disable';
+  }
+
+  /** @name PalletUtilityCall (362) */
+  interface PalletUtilityCall extends Enum {
+    readonly isBatch: boolean;
+    readonly asBatch: {
+      readonly calls: Vec<Call>;
     } & Struct;
-    readonly type: 'Enable' | 'Disable' | 'ExecutePreimage';
+    readonly isAsDerivative: boolean;
+    readonly asAsDerivative: {
+      readonly index: u16;
+      readonly call: Call;
+    } & Struct;
+    readonly isBatchAll: boolean;
+    readonly asBatchAll: {
+      readonly calls: Vec<Call>;
+    } & Struct;
+    readonly isDispatchAs: boolean;
+    readonly asDispatchAs: {
+      readonly asOrigin: OpalRuntimeOriginCaller;
+      readonly call: Call;
+    } & Struct;
+    readonly isForceBatch: boolean;
+    readonly asForceBatch: {
+      readonly calls: Vec<Call>;
+    } & Struct;
+    readonly isWithWeight: boolean;
+    readonly asWithWeight: {
+      readonly call: Call;
+      readonly weight: SpWeightsWeightV2Weight;
+    } & Struct;
+    readonly type: 'Batch' | 'AsDerivative' | 'BatchAll' | 'DispatchAs' | 'ForceBatch' | 'WithWeight';
   }
 
-  /** @name PalletTestUtilsCall (362) */
+  /** @name PalletTestUtilsCall (364) */
   interface PalletTestUtilsCall extends Enum {
     readonly isEnable: boolean;
     readonly isSetTestValue: boolean;
@@ -3651,7 +3688,7 @@
     readonly type: 'Enable' | 'SetTestValue' | 'SetTestValueAndRollback' | 'IncTestValue' | 'JustTakeFee' | 'BatchAll';
   }
 
-  /** @name PalletSchedulerEvent (365) */
+  /** @name PalletSchedulerEvent (366) */
   interface PalletSchedulerEvent extends Enum {
     readonly isScheduled: boolean;
     readonly asScheduled: {
@@ -3687,30 +3724,32 @@
     readonly type: 'Scheduled' | 'Canceled' | 'Dispatched' | 'CallUnavailable' | 'PeriodicFailed' | 'PermanentlyOverweight';
   }
 
-  /** @name CumulusPalletXcmpQueueEvent (366) */
+  /** @name CumulusPalletXcmpQueueEvent (367) */
   interface CumulusPalletXcmpQueueEvent extends Enum {
     readonly isSuccess: boolean;
     readonly asSuccess: {
-      readonly messageHash: Option<U8aFixed>;
+      readonly messageHash: U8aFixed;
+      readonly messageId: U8aFixed;
       readonly weight: SpWeightsWeightV2Weight;
     } & Struct;
     readonly isFail: boolean;
     readonly asFail: {
-      readonly messageHash: Option<U8aFixed>;
-      readonly error: XcmV3TraitsError;
+      readonly messageHash: U8aFixed;
+      readonly messageId: U8aFixed;
+      readonly error: StagingXcmV3TraitsError;
       readonly weight: SpWeightsWeightV2Weight;
     } & Struct;
     readonly isBadVersion: boolean;
     readonly asBadVersion: {
-      readonly messageHash: Option<U8aFixed>;
+      readonly messageHash: U8aFixed;
     } & Struct;
     readonly isBadFormat: boolean;
     readonly asBadFormat: {
-      readonly messageHash: Option<U8aFixed>;
+      readonly messageHash: U8aFixed;
     } & Struct;
     readonly isXcmpMessageSent: boolean;
     readonly asXcmpMessageSent: {
-      readonly messageHash: Option<U8aFixed>;
+      readonly messageHash: U8aFixed;
     } & Struct;
     readonly isOverweightEnqueued: boolean;
     readonly asOverweightEnqueued: {
@@ -3727,102 +3766,191 @@
     readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';
   }
 
-  /** @name PalletXcmEvent (367) */
+  /** @name PalletXcmEvent (368) */
   interface PalletXcmEvent extends Enum {
     readonly isAttempted: boolean;
-    readonly asAttempted: XcmV3TraitsOutcome;
+    readonly asAttempted: {
+      readonly outcome: StagingXcmV3TraitsOutcome;
+    } & Struct;
     readonly isSent: boolean;
-    readonly asSent: ITuple<[XcmV3MultiLocation, XcmV3MultiLocation, XcmV3Xcm]>;
+    readonly asSent: {
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly destination: StagingXcmV3MultiLocation;
+      readonly message: StagingXcmV3Xcm;
+      readonly messageId: U8aFixed;
+    } & Struct;
     readonly isUnexpectedResponse: boolean;
-    readonly asUnexpectedResponse: ITuple<[XcmV3MultiLocation, u64]>;
+    readonly asUnexpectedResponse: {
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly queryId: u64;
+    } & Struct;
     readonly isResponseReady: boolean;
-    readonly asResponseReady: ITuple<[u64, XcmV3Response]>;
+    readonly asResponseReady: {
+      readonly queryId: u64;
+      readonly response: StagingXcmV3Response;
+    } & Struct;
     readonly isNotified: boolean;
-    readonly asNotified: ITuple<[u64, u8, u8]>;
+    readonly asNotified: {
+      readonly queryId: u64;
+      readonly palletIndex: u8;
+      readonly callIndex: u8;
+    } & Struct;
     readonly isNotifyOverweight: boolean;
-    readonly asNotifyOverweight: ITuple<[u64, u8, u8, SpWeightsWeightV2Weight, SpWeightsWeightV2Weight]>;
+    readonly asNotifyOverweight: {
+      readonly queryId: u64;
+      readonly palletIndex: u8;
+      readonly callIndex: u8;
+      readonly actualWeight: SpWeightsWeightV2Weight;
+      readonly maxBudgetedWeight: SpWeightsWeightV2Weight;
+    } & Struct;
     readonly isNotifyDispatchError: boolean;
-    readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;
+    readonly asNotifyDispatchError: {
+      readonly queryId: u64;
+      readonly palletIndex: u8;
+      readonly callIndex: u8;
+    } & Struct;
     readonly isNotifyDecodeFailed: boolean;
-    readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;
+    readonly asNotifyDecodeFailed: {
+      readonly queryId: u64;
+      readonly palletIndex: u8;
+      readonly callIndex: u8;
+    } & Struct;
     readonly isInvalidResponder: boolean;
-    readonly asInvalidResponder: ITuple<[XcmV3MultiLocation, u64, Option<XcmV3MultiLocation>]>;
+    readonly asInvalidResponder: {
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly queryId: u64;
+      readonly expectedLocation: Option<StagingXcmV3MultiLocation>;
+    } & Struct;
     readonly isInvalidResponderVersion: boolean;
-    readonly asInvalidResponderVersion: ITuple<[XcmV3MultiLocation, u64]>;
+    readonly asInvalidResponderVersion: {
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly queryId: u64;
+    } & Struct;
     readonly isResponseTaken: boolean;
-    readonly asResponseTaken: u64;
+    readonly asResponseTaken: {
+      readonly queryId: u64;
+    } & Struct;
     readonly isAssetsTrapped: boolean;
-    readonly asAssetsTrapped: ITuple<[H256, XcmV3MultiLocation, XcmVersionedMultiAssets]>;
+    readonly asAssetsTrapped: {
+      readonly hash_: H256;
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly assets: StagingXcmVersionedMultiAssets;
+    } & Struct;
     readonly isVersionChangeNotified: boolean;
-    readonly asVersionChangeNotified: ITuple<[XcmV3MultiLocation, u32, XcmV3MultiassetMultiAssets]>;
+    readonly asVersionChangeNotified: {
+      readonly destination: StagingXcmV3MultiLocation;
+      readonly result: u32;
+      readonly cost: StagingXcmV3MultiassetMultiAssets;
+      readonly messageId: U8aFixed;
+    } & Struct;
     readonly isSupportedVersionChanged: boolean;
-    readonly asSupportedVersionChanged: ITuple<[XcmV3MultiLocation, u32]>;
+    readonly asSupportedVersionChanged: {
+      readonly location: StagingXcmV3MultiLocation;
+      readonly version: u32;
+    } & Struct;
     readonly isNotifyTargetSendFail: boolean;
-    readonly asNotifyTargetSendFail: ITuple<[XcmV3MultiLocation, u64, XcmV3TraitsError]>;
+    readonly asNotifyTargetSendFail: {
+      readonly location: StagingXcmV3MultiLocation;
+      readonly queryId: u64;
+      readonly error: StagingXcmV3TraitsError;
+    } & Struct;
     readonly isNotifyTargetMigrationFail: boolean;
-    readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;
+    readonly asNotifyTargetMigrationFail: {
+      readonly location: StagingXcmVersionedMultiLocation;
+      readonly queryId: u64;
+    } & Struct;
     readonly isInvalidQuerierVersion: boolean;
-    readonly asInvalidQuerierVersion: ITuple<[XcmV3MultiLocation, u64]>;
+    readonly asInvalidQuerierVersion: {
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly queryId: u64;
+    } & Struct;
     readonly isInvalidQuerier: boolean;
-    readonly asInvalidQuerier: ITuple<[XcmV3MultiLocation, u64, XcmV3MultiLocation, Option<XcmV3MultiLocation>]>;
+    readonly asInvalidQuerier: {
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly queryId: u64;
+      readonly expectedQuerier: StagingXcmV3MultiLocation;
+      readonly maybeActualQuerier: Option<StagingXcmV3MultiLocation>;
+    } & Struct;
     readonly isVersionNotifyStarted: boolean;
-    readonly asVersionNotifyStarted: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+    readonly asVersionNotifyStarted: {
+      readonly destination: StagingXcmV3MultiLocation;
+      readonly cost: StagingXcmV3MultiassetMultiAssets;
+      readonly messageId: U8aFixed;
+    } & Struct;
     readonly isVersionNotifyRequested: boolean;
-    readonly asVersionNotifyRequested: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+    readonly asVersionNotifyRequested: {
+      readonly destination: StagingXcmV3MultiLocation;
+      readonly cost: StagingXcmV3MultiassetMultiAssets;
+      readonly messageId: U8aFixed;
+    } & Struct;
     readonly isVersionNotifyUnrequested: boolean;
-    readonly asVersionNotifyUnrequested: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+    readonly asVersionNotifyUnrequested: {
+      readonly destination: StagingXcmV3MultiLocation;
+      readonly cost: StagingXcmV3MultiassetMultiAssets;
+      readonly messageId: U8aFixed;
+    } & Struct;
     readonly isFeesPaid: boolean;
-    readonly asFeesPaid: ITuple<[XcmV3MultiLocation, XcmV3MultiassetMultiAssets]>;
+    readonly asFeesPaid: {
+      readonly paying: StagingXcmV3MultiLocation;
+      readonly fees: StagingXcmV3MultiassetMultiAssets;
+    } & Struct;
     readonly isAssetsClaimed: boolean;
-    readonly asAssetsClaimed: ITuple<[H256, XcmV3MultiLocation, XcmVersionedMultiAssets]>;
+    readonly asAssetsClaimed: {
+      readonly hash_: H256;
+      readonly origin: StagingXcmV3MultiLocation;
+      readonly assets: StagingXcmVersionedMultiAssets;
+    } & Struct;
     readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail' | 'InvalidQuerierVersion' | 'InvalidQuerier' | 'VersionNotifyStarted' | 'VersionNotifyRequested' | 'VersionNotifyUnrequested' | 'FeesPaid' | 'AssetsClaimed';
   }
 
-  /** @name XcmV3TraitsOutcome (368) */
-  interface XcmV3TraitsOutcome extends Enum {
+  /** @name StagingXcmV3TraitsOutcome (369) */
+  interface StagingXcmV3TraitsOutcome extends Enum {
     readonly isComplete: boolean;
     readonly asComplete: SpWeightsWeightV2Weight;
     readonly isIncomplete: boolean;
-    readonly asIncomplete: ITuple<[SpWeightsWeightV2Weight, XcmV3TraitsError]>;
+    readonly asIncomplete: ITuple<[SpWeightsWeightV2Weight, StagingXcmV3TraitsError]>;
     readonly isError: boolean;
-    readonly asError: XcmV3TraitsError;
+    readonly asError: StagingXcmV3TraitsError;
     readonly type: 'Complete' | 'Incomplete' | 'Error';
   }
 
-  /** @name CumulusPalletXcmEvent (369) */
+  /** @name CumulusPalletXcmEvent (370) */
   interface CumulusPalletXcmEvent extends Enum {
     readonly isInvalidFormat: boolean;
     readonly asInvalidFormat: U8aFixed;
     readonly isUnsupportedVersion: boolean;
     readonly asUnsupportedVersion: U8aFixed;
     readonly isExecutedDownward: boolean;
-    readonly asExecutedDownward: ITuple<[U8aFixed, XcmV3TraitsOutcome]>;
+    readonly asExecutedDownward: ITuple<[U8aFixed, StagingXcmV3TraitsOutcome]>;
     readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';
   }
 
-  /** @name CumulusPalletDmpQueueEvent (370) */
+  /** @name CumulusPalletDmpQueueEvent (371) */
   interface CumulusPalletDmpQueueEvent extends Enum {
     readonly isInvalidFormat: boolean;
     readonly asInvalidFormat: {
-      readonly messageId: U8aFixed;
+      readonly messageHash: U8aFixed;
     } & Struct;
     readonly isUnsupportedVersion: boolean;
     readonly asUnsupportedVersion: {
-      readonly messageId: U8aFixed;
+      readonly messageHash: U8aFixed;
     } & Struct;
     readonly isExecutedDownward: boolean;
     readonly asExecutedDownward: {
+      readonly messageHash: U8aFixed;
       readonly messageId: U8aFixed;
-      readonly outcome: XcmV3TraitsOutcome;
+      readonly outcome: StagingXcmV3TraitsOutcome;
     } & Struct;
     readonly isWeightExhausted: boolean;
     readonly asWeightExhausted: {
+      readonly messageHash: U8aFixed;
       readonly messageId: U8aFixed;
       readonly remainingWeight: SpWeightsWeightV2Weight;
       readonly requiredWeight: SpWeightsWeightV2Weight;
     } & Struct;
     readonly isOverweightEnqueued: boolean;
     readonly asOverweightEnqueued: {
+      readonly messageHash: U8aFixed;
       readonly messageId: U8aFixed;
       readonly overweightIndex: u64;
       readonly requiredWeight: SpWeightsWeightV2Weight;
@@ -3834,12 +3962,12 @@
     } & Struct;
     readonly isMaxMessagesExhausted: boolean;
     readonly asMaxMessagesExhausted: {
-      readonly messageId: U8aFixed;
+      readonly messageHash: U8aFixed;
     } & Struct;
     readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced' | 'MaxMessagesExhausted';
   }
 
-  /** @name PalletConfigurationEvent (371) */
+  /** @name PalletConfigurationEvent (372) */
   interface PalletConfigurationEvent extends Enum {
     readonly isNewDesiredCollators: boolean;
     readonly asNewDesiredCollators: {
@@ -3856,7 +3984,7 @@
     readonly type: 'NewDesiredCollators' | 'NewCollatorLicenseBond' | 'NewCollatorKickThreshold';
   }
 
-  /** @name PalletCommonEvent (372) */
+  /** @name PalletCommonEvent (373) */
   interface PalletCommonEvent extends Enum {
     readonly isCollectionCreated: boolean;
     readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;
@@ -3905,14 +4033,14 @@
     readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved' | 'ApprovedForAll' | 'CollectionPropertySet' | 'CollectionPropertyDeleted' | 'TokenPropertySet' | 'TokenPropertyDeleted' | 'PropertyPermissionSet' | 'AllowListAddressAdded' | 'AllowListAddressRemoved' | 'CollectionAdminAdded' | 'CollectionAdminRemoved' | 'CollectionLimitSet' | 'CollectionOwnerChanged' | 'CollectionPermissionSet' | 'CollectionSponsorSet' | 'SponsorshipConfirmed' | 'CollectionSponsorRemoved';
   }
 
-  /** @name PalletStructureEvent (373) */
+  /** @name PalletStructureEvent (374) */
   interface PalletStructureEvent extends Enum {
     readonly isExecuted: boolean;
     readonly asExecuted: Result<Null, SpRuntimeDispatchError>;
     readonly type: 'Executed';
   }
 
-  /** @name PalletAppPromotionEvent (374) */
+  /** @name PalletAppPromotionEvent (375) */
   interface PalletAppPromotionEvent extends Enum {
     readonly isStakingRecalculation: boolean;
     readonly asStakingRecalculation: ITuple<[AccountId32, u128, u128]>;
@@ -3925,34 +4053,34 @@
     readonly type: 'StakingRecalculation' | 'Stake' | 'Unstake' | 'SetAdmin';
   }
 
-  /** @name PalletForeignAssetsModuleEvent (375) */
+  /** @name PalletForeignAssetsModuleEvent (376) */
   interface PalletForeignAssetsModuleEvent extends Enum {
     readonly isForeignAssetRegistered: boolean;
     readonly asForeignAssetRegistered: {
       readonly assetId: u32;
-      readonly assetAddress: XcmV3MultiLocation;
+      readonly assetAddress: StagingXcmV3MultiLocation;
       readonly metadata: PalletForeignAssetsModuleAssetMetadata;
     } & Struct;
     readonly isForeignAssetUpdated: boolean;
     readonly asForeignAssetUpdated: {
       readonly assetId: u32;
-      readonly assetAddress: XcmV3MultiLocation;
+      readonly assetAddress: StagingXcmV3MultiLocation;
       readonly metadata: PalletForeignAssetsModuleAssetMetadata;
     } & Struct;
     readonly isAssetRegistered: boolean;
     readonly asAssetRegistered: {
-      readonly assetId: PalletForeignAssetsAssetIds;
+      readonly assetId: PalletForeignAssetsAssetId;
       readonly metadata: PalletForeignAssetsModuleAssetMetadata;
     } & Struct;
     readonly isAssetUpdated: boolean;
     readonly asAssetUpdated: {
-      readonly assetId: PalletForeignAssetsAssetIds;
+      readonly assetId: PalletForeignAssetsAssetId;
       readonly metadata: PalletForeignAssetsModuleAssetMetadata;
     } & Struct;
     readonly type: 'ForeignAssetRegistered' | 'ForeignAssetUpdated' | 'AssetRegistered' | 'AssetUpdated';
   }
 
-  /** @name PalletEvmEvent (376) */
+  /** @name PalletEvmEvent (377) */
   interface PalletEvmEvent extends Enum {
     readonly isLog: boolean;
     readonly asLog: {
@@ -3977,7 +4105,7 @@
     readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed';
   }
 
-  /** @name PalletEthereumEvent (377) */
+  /** @name PalletEthereumEvent (378) */
   interface PalletEthereumEvent extends Enum {
     readonly isExecuted: boolean;
     readonly asExecuted: {
@@ -3990,7 +4118,7 @@
     readonly type: 'Executed';
   }
 
-  /** @name EvmCoreErrorExitReason (378) */
+  /** @name EvmCoreErrorExitReason (379) */
   interface EvmCoreErrorExitReason extends Enum {
     readonly isSucceed: boolean;
     readonly asSucceed: EvmCoreErrorExitSucceed;
@@ -4003,7 +4131,7 @@
     readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';
   }
 
-  /** @name EvmCoreErrorExitSucceed (379) */
+  /** @name EvmCoreErrorExitSucceed (380) */
   interface EvmCoreErrorExitSucceed extends Enum {
     readonly isStopped: boolean;
     readonly isReturned: boolean;
@@ -4011,7 +4139,7 @@
     readonly type: 'Stopped' | 'Returned' | 'Suicided';
   }
 
-  /** @name EvmCoreErrorExitError (380) */
+  /** @name EvmCoreErrorExitError (381) */
   interface EvmCoreErrorExitError extends Enum {
     readonly isStackUnderflow: boolean;
     readonly isStackOverflow: boolean;
@@ -4034,13 +4162,13 @@
     readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'MaxNonce' | 'InvalidCode';
   }
 
-  /** @name EvmCoreErrorExitRevert (384) */
+  /** @name EvmCoreErrorExitRevert (385) */
   interface EvmCoreErrorExitRevert extends Enum {
     readonly isReverted: boolean;
     readonly type: 'Reverted';
   }
 
-  /** @name EvmCoreErrorExitFatal (385) */
+  /** @name EvmCoreErrorExitFatal (386) */
   interface EvmCoreErrorExitFatal extends Enum {
     readonly isNotSupported: boolean;
     readonly isUnhandledInterrupt: boolean;
@@ -4051,7 +4179,7 @@
     readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';
   }
 
-  /** @name PalletEvmContractHelpersEvent (386) */
+  /** @name PalletEvmContractHelpersEvent (387) */
   interface PalletEvmContractHelpersEvent extends Enum {
     readonly isContractSponsorSet: boolean;
     readonly asContractSponsorSet: ITuple<[H160, AccountId32]>;
@@ -4062,20 +4190,41 @@
     readonly type: 'ContractSponsorSet' | 'ContractSponsorshipConfirmed' | 'ContractSponsorRemoved';
   }
 
-  /** @name PalletEvmMigrationEvent (387) */
+  /** @name PalletEvmMigrationEvent (388) */
   interface PalletEvmMigrationEvent extends Enum {
     readonly isTestEvent: boolean;
     readonly type: 'TestEvent';
   }
 
-  /** @name PalletMaintenanceEvent (388) */
+  /** @name PalletMaintenanceEvent (389) */
   interface PalletMaintenanceEvent extends Enum {
     readonly isMaintenanceEnabled: boolean;
     readonly isMaintenanceDisabled: boolean;
     readonly type: 'MaintenanceEnabled' | 'MaintenanceDisabled';
   }
 
-  /** @name PalletTestUtilsEvent (389) */
+  /** @name PalletUtilityEvent (390) */
+  interface PalletUtilityEvent extends Enum {
+    readonly isBatchInterrupted: boolean;
+    readonly asBatchInterrupted: {
+      readonly index: u32;
+      readonly error: SpRuntimeDispatchError;
+    } & Struct;
+    readonly isBatchCompleted: boolean;
+    readonly isBatchCompletedWithErrors: boolean;
+    readonly isItemCompleted: boolean;
+    readonly isItemFailed: boolean;
+    readonly asItemFailed: {
+      readonly error: SpRuntimeDispatchError;
+    } & Struct;
+    readonly isDispatchedAs: boolean;
+    readonly asDispatchedAs: {
+      readonly result: Result<Null, SpRuntimeDispatchError>;
+    } & Struct;
+    readonly type: 'BatchInterrupted' | 'BatchCompleted' | 'BatchCompletedWithErrors' | 'ItemCompleted' | 'ItemFailed' | 'DispatchedAs';
+  }
+
+  /** @name PalletTestUtilsEvent (391) */
   interface PalletTestUtilsEvent extends Enum {
     readonly isValueIsSet: boolean;
     readonly isShouldRollback: boolean;
@@ -4083,7 +4232,7 @@
     readonly type: 'ValueIsSet' | 'ShouldRollback' | 'BatchCompleted';
   }
 
-  /** @name FrameSystemPhase (390) */
+  /** @name FrameSystemPhase (392) */
   interface FrameSystemPhase extends Enum {
     readonly isApplyExtrinsic: boolean;
     readonly asApplyExtrinsic: u32;
@@ -4092,27 +4241,27 @@
     readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';
   }
 
-  /** @name FrameSystemLastRuntimeUpgradeInfo (392) */
+  /** @name FrameSystemLastRuntimeUpgradeInfo (394) */
   interface FrameSystemLastRuntimeUpgradeInfo extends Struct {
     readonly specVersion: Compact<u32>;
     readonly specName: Text;
   }
 
-  /** @name FrameSystemLimitsBlockWeights (393) */
+  /** @name FrameSystemLimitsBlockWeights (395) */
   interface FrameSystemLimitsBlockWeights extends Struct {
     readonly baseBlock: SpWeightsWeightV2Weight;
     readonly maxBlock: SpWeightsWeightV2Weight;
     readonly perClass: FrameSupportDispatchPerDispatchClassWeightsPerClass;
   }
 
-  /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (394) */
+  /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (396) */
   interface FrameSupportDispatchPerDispatchClassWeightsPerClass extends Struct {
     readonly normal: FrameSystemLimitsWeightsPerClass;
     readonly operational: FrameSystemLimitsWeightsPerClass;
     readonly mandatory: FrameSystemLimitsWeightsPerClass;
   }
 
-  /** @name FrameSystemLimitsWeightsPerClass (395) */
+  /** @name FrameSystemLimitsWeightsPerClass (397) */
   interface FrameSystemLimitsWeightsPerClass extends Struct {
     readonly baseExtrinsic: SpWeightsWeightV2Weight;
     readonly maxExtrinsic: Option<SpWeightsWeightV2Weight>;
@@ -4120,25 +4269,25 @@
     readonly reserved: Option<SpWeightsWeightV2Weight>;
   }
 
-  /** @name FrameSystemLimitsBlockLength (397) */
+  /** @name FrameSystemLimitsBlockLength (399) */
   interface FrameSystemLimitsBlockLength extends Struct {
     readonly max: FrameSupportDispatchPerDispatchClassU32;
   }
 
-  /** @name FrameSupportDispatchPerDispatchClassU32 (398) */
+  /** @name FrameSupportDispatchPerDispatchClassU32 (400) */
   interface FrameSupportDispatchPerDispatchClassU32 extends Struct {
     readonly normal: u32;
     readonly operational: u32;
     readonly mandatory: u32;
   }
 
-  /** @name SpWeightsRuntimeDbWeight (399) */
+  /** @name SpWeightsRuntimeDbWeight (401) */
   interface SpWeightsRuntimeDbWeight extends Struct {
     readonly read: u64;
     readonly write: u64;
   }
 
-  /** @name SpVersionRuntimeVersion (400) */
+  /** @name SpVersionRuntimeVersion (402) */
   interface SpVersionRuntimeVersion extends Struct {
     readonly specName: Text;
     readonly implName: Text;
@@ -4150,7 +4299,7 @@
     readonly stateVersion: u8;
   }
 
-  /** @name FrameSystemError (404) */
+  /** @name FrameSystemError (406) */
   interface FrameSystemError extends Enum {
     readonly isInvalidSpecName: boolean;
     readonly isSpecVersionNeedsToIncrease: boolean;
@@ -4161,28 +4310,62 @@
     readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';
   }
 
-  /** @name PolkadotPrimitivesV4UpgradeRestriction (406) */
-  interface PolkadotPrimitivesV4UpgradeRestriction extends Enum {
+  /** @name CumulusPalletParachainSystemUnincludedSegmentAncestor (408) */
+  interface CumulusPalletParachainSystemUnincludedSegmentAncestor extends Struct {
+    readonly usedBandwidth: CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth;
+    readonly paraHeadHash: Option<H256>;
+    readonly consumedGoAheadSignal: Option<PolkadotPrimitivesV5UpgradeGoAhead>;
+  }
+
+  /** @name CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth (409) */
+  interface CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth extends Struct {
+    readonly umpMsgCount: u32;
+    readonly umpTotalBytes: u32;
+    readonly hrmpOutgoing: BTreeMap<u32, CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate>;
+  }
+
+  /** @name CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate (411) */
+  interface CumulusPalletParachainSystemUnincludedSegmentHrmpChannelUpdate extends Struct {
+    readonly msgCount: u32;
+    readonly totalBytes: u32;
+  }
+
+  /** @name PolkadotPrimitivesV5UpgradeGoAhead (415) */
+  interface PolkadotPrimitivesV5UpgradeGoAhead extends Enum {
+    readonly isAbort: boolean;
+    readonly isGoAhead: boolean;
+    readonly type: 'Abort' | 'GoAhead';
+  }
+
+  /** @name CumulusPalletParachainSystemUnincludedSegmentSegmentTracker (416) */
+  interface CumulusPalletParachainSystemUnincludedSegmentSegmentTracker extends Struct {
+    readonly usedBandwidth: CumulusPalletParachainSystemUnincludedSegmentUsedBandwidth;
+    readonly hrmpWatermark: Option<u32>;
+    readonly consumedGoAheadSignal: Option<PolkadotPrimitivesV5UpgradeGoAhead>;
+  }
+
+  /** @name PolkadotPrimitivesV5UpgradeRestriction (418) */
+  interface PolkadotPrimitivesV5UpgradeRestriction extends Enum {
     readonly isPresent: boolean;
     readonly type: 'Present';
   }
 
-  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (407) */
+  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (419) */
   interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {
     readonly dmqMqcHead: H256;
-    readonly relayDispatchQueueSize: CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize;
-    readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV4AbridgedHrmpChannel]>>;
-    readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV4AbridgedHrmpChannel]>>;
+    readonly relayDispatchQueueRemainingCapacity: CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity;
+    readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV5AbridgedHrmpChannel]>>;
+    readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV5AbridgedHrmpChannel]>>;
   }
 
-  /** @name CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize (408) */
-  interface CumulusPalletParachainSystemRelayStateSnapshotRelayDispachQueueSize extends Struct {
+  /** @name CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity (420) */
+  interface CumulusPalletParachainSystemRelayStateSnapshotRelayDispatchQueueRemainingCapacity extends Struct {
     readonly remainingCount: u32;
     readonly remainingSize: u32;
   }
 
-  /** @name PolkadotPrimitivesV4AbridgedHrmpChannel (411) */
-  interface PolkadotPrimitivesV4AbridgedHrmpChannel extends Struct {
+  /** @name PolkadotPrimitivesV5AbridgedHrmpChannel (423) */
+  interface PolkadotPrimitivesV5AbridgedHrmpChannel extends Struct {
     readonly maxCapacity: u32;
     readonly maxTotalSize: u32;
     readonly maxMessageSize: u32;
@@ -4191,8 +4374,8 @@
     readonly mqcHead: Option<H256>;
   }
 
-  /** @name PolkadotPrimitivesV4AbridgedHostConfiguration (412) */
-  interface PolkadotPrimitivesV4AbridgedHostConfiguration extends Struct {
+  /** @name PolkadotPrimitivesV5AbridgedHostConfiguration (424) */
+  interface PolkadotPrimitivesV5AbridgedHostConfiguration extends Struct {
     readonly maxCodeSize: u32;
     readonly maxHeadDataSize: u32;
     readonly maxUpwardQueueCount: u32;
@@ -4202,21 +4385,28 @@
     readonly hrmpMaxMessageNumPerCandidate: u32;
     readonly validationUpgradeCooldown: u32;
     readonly validationUpgradeDelay: u32;
+    readonly asyncBackingParams: PolkadotPrimitivesVstagingAsyncBackingParams;
+  }
+
+  /** @name PolkadotPrimitivesVstagingAsyncBackingParams (425) */
+  interface PolkadotPrimitivesVstagingAsyncBackingParams extends Struct {
+    readonly maxCandidateDepth: u32;
+    readonly allowedAncestryLen: u32;
   }
 
-  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (418) */
+  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (431) */
   interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {
     readonly recipient: u32;
     readonly data: Bytes;
   }
 
-  /** @name CumulusPalletParachainSystemCodeUpgradeAuthorization (419) */
+  /** @name CumulusPalletParachainSystemCodeUpgradeAuthorization (432) */
   interface CumulusPalletParachainSystemCodeUpgradeAuthorization extends Struct {
     readonly codeHash: H256;
     readonly checkVersion: bool;
   }
 
-  /** @name CumulusPalletParachainSystemError (420) */
+  /** @name CumulusPalletParachainSystemError (433) */
   interface CumulusPalletParachainSystemError extends Enum {
     readonly isOverlappingUpgrades: boolean;
     readonly isProhibitedByPolkadot: boolean;
@@ -4229,7 +4419,7 @@
     readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';
   }
 
-  /** @name PalletCollatorSelectionError (422) */
+  /** @name PalletCollatorSelectionError (435) */
   interface PalletCollatorSelectionError extends Enum {
     readonly isTooManyCandidates: boolean;
     readonly isUnknown: boolean;
@@ -4247,10 +4437,10 @@
     readonly type: 'TooManyCandidates' | 'Unknown' | 'Permission' | 'AlreadyHoldingLicense' | 'NoLicense' | 'AlreadyCandidate' | 'NotCandidate' | 'TooManyInvulnerables' | 'TooFewInvulnerables' | 'AlreadyInvulnerable' | 'NotInvulnerable' | 'NoAssociatedValidatorId' | 'ValidatorNotRegistered';
   }
 
-  /** @name SpCoreCryptoKeyTypeId (426) */
+  /** @name SpCoreCryptoKeyTypeId (439) */
   interface SpCoreCryptoKeyTypeId extends U8aFixed {}
 
-  /** @name PalletSessionError (427) */
+  /** @name PalletSessionError (440) */
   interface PalletSessionError extends Enum {
     readonly isInvalidProof: boolean;
     readonly isNoAssociatedValidatorId: boolean;
@@ -4260,14 +4450,14 @@
     readonly type: 'InvalidProof' | 'NoAssociatedValidatorId' | 'DuplicatedKey' | 'NoKeys' | 'NoAccount';
   }
 
-  /** @name PalletBalancesBalanceLock (432) */
+  /** @name PalletBalancesBalanceLock (446) */
   interface PalletBalancesBalanceLock extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
     readonly reasons: PalletBalancesReasons;
   }
 
-  /** @name PalletBalancesReasons (433) */
+  /** @name PalletBalancesReasons (447) */
   interface PalletBalancesReasons extends Enum {
     readonly isFee: boolean;
     readonly isMisc: boolean;
@@ -4275,19 +4465,32 @@
     readonly type: 'Fee' | 'Misc' | 'All';
   }
 
-  /** @name PalletBalancesReserveData (436) */
+  /** @name PalletBalancesReserveData (450) */
   interface PalletBalancesReserveData extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
   }
 
-  /** @name PalletBalancesIdAmount (439) */
+  /** @name OpalRuntimeRuntimeHoldReason (454) */
+  interface OpalRuntimeRuntimeHoldReason extends Enum {
+    readonly isCollatorSelection: boolean;
+    readonly asCollatorSelection: PalletCollatorSelectionHoldReason;
+    readonly type: 'CollatorSelection';
+  }
+
+  /** @name PalletCollatorSelectionHoldReason (455) */
+  interface PalletCollatorSelectionHoldReason extends Enum {
+    readonly isLicenseBond: boolean;
+    readonly type: 'LicenseBond';
+  }
+
+  /** @name PalletBalancesIdAmount (458) */
   interface PalletBalancesIdAmount extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
   }
 
-  /** @name PalletBalancesError (442) */
+  /** @name PalletBalancesError (460) */
   interface PalletBalancesError extends Enum {
     readonly isVestingBalance: boolean;
     readonly isLiquidityRestrictions: boolean;
@@ -4302,14 +4505,14 @@
     readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'Expendability' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves' | 'TooManyHolds' | 'TooManyFreezes';
   }
 
-  /** @name PalletTransactionPaymentReleases (444) */
+  /** @name PalletTransactionPaymentReleases (462) */
   interface PalletTransactionPaymentReleases extends Enum {
     readonly isV1Ancient: boolean;
     readonly isV2: boolean;
     readonly type: 'V1Ancient' | 'V2';
   }
 
-  /** @name PalletTreasuryProposal (445) */
+  /** @name PalletTreasuryProposal (463) */
   interface PalletTreasuryProposal extends Struct {
     readonly proposer: AccountId32;
     readonly value: u128;
@@ -4317,10 +4520,10 @@
     readonly bond: u128;
   }
 
-  /** @name FrameSupportPalletId (448) */
+  /** @name FrameSupportPalletId (466) */
   interface FrameSupportPalletId extends U8aFixed {}
 
-  /** @name PalletTreasuryError (449) */
+  /** @name PalletTreasuryError (467) */
   interface PalletTreasuryError extends Enum {
     readonly isInsufficientProposersBalance: boolean;
     readonly isInvalidIndex: boolean;
@@ -4330,13 +4533,13 @@
     readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals' | 'InsufficientPermission' | 'ProposalNotApproved';
   }
 
-  /** @name PalletSudoError (450) */
+  /** @name PalletSudoError (468) */
   interface PalletSudoError extends Enum {
     readonly isRequireSudo: boolean;
     readonly type: 'RequireSudo';
   }
 
-  /** @name OrmlVestingModuleError (452) */
+  /** @name OrmlVestingModuleError (470) */
   interface OrmlVestingModuleError extends Enum {
     readonly isZeroVestingPeriod: boolean;
     readonly isZeroVestingPeriodCount: boolean;
@@ -4347,7 +4550,7 @@
     readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';
   }
 
-  /** @name OrmlXtokensModuleError (453) */
+  /** @name OrmlXtokensModuleError (471) */
   interface OrmlXtokensModuleError extends Enum {
     readonly isAssetHasNoReserve: boolean;
     readonly isNotCrossChainTransfer: boolean;
@@ -4371,26 +4574,26 @@
     readonly type: 'AssetHasNoReserve' | 'NotCrossChainTransfer' | 'InvalidDest' | 'NotCrossChainTransferableCurrency' | 'UnweighableMessage' | 'XcmExecutionFailed' | 'CannotReanchor' | 'InvalidAncestry' | 'InvalidAsset' | 'DestinationNotInvertible' | 'BadVersion' | 'DistinctReserveForAssetAndFee' | 'ZeroFee' | 'ZeroAmount' | 'TooManyAssetsBeingSent' | 'AssetIndexNonExistent' | 'FeeNotEnough' | 'NotSupportedMultiLocation' | 'MinXcmFeeNotDefined';
   }
 
-  /** @name OrmlTokensBalanceLock (456) */
+  /** @name OrmlTokensBalanceLock (474) */
   interface OrmlTokensBalanceLock extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
   }
 
-  /** @name OrmlTokensAccountData (458) */
+  /** @name OrmlTokensAccountData (476) */
   interface OrmlTokensAccountData extends Struct {
     readonly free: u128;
     readonly reserved: u128;
     readonly frozen: u128;
   }
 
-  /** @name OrmlTokensReserveData (460) */
+  /** @name OrmlTokensReserveData (478) */
   interface OrmlTokensReserveData extends Struct {
     readonly id: Null;
     readonly amount: u128;
   }
 
-  /** @name OrmlTokensModuleError (462) */
+  /** @name OrmlTokensModuleError (480) */
   interface OrmlTokensModuleError extends Enum {
     readonly isBalanceTooLow: boolean;
     readonly isAmountIntoBalanceFailed: boolean;
@@ -4403,14 +4606,14 @@
     readonly type: 'BalanceTooLow' | 'AmountIntoBalanceFailed' | 'LiquidityRestrictions' | 'MaxLocksExceeded' | 'KeepAlive' | 'ExistentialDeposit' | 'DeadAccount' | 'TooManyReserves';
   }
 
-  /** @name PalletIdentityRegistrarInfo (467) */
+  /** @name PalletIdentityRegistrarInfo (485) */
   interface PalletIdentityRegistrarInfo extends Struct {
     readonly account: AccountId32;
     readonly fee: u128;
     readonly fields: PalletIdentityBitFlags;
   }
 
-  /** @name PalletIdentityError (469) */
+  /** @name PalletIdentityError (487) */
   interface PalletIdentityError extends Enum {
     readonly isTooManySubAccounts: boolean;
     readonly isNotFound: boolean;
@@ -4433,7 +4636,7 @@
     readonly type: 'TooManySubAccounts' | 'NotFound' | 'NotNamed' | 'EmptyIndex' | 'FeeChanged' | 'NoIdentity' | 'StickyJudgement' | 'JudgementGiven' | 'InvalidJudgement' | 'InvalidIndex' | 'InvalidTarget' | 'TooManyFields' | 'TooManyRegistrars' | 'AlreadyClaimed' | 'NotSub' | 'NotOwned' | 'JudgementForDifferentIdentity' | 'JudgementPaymentFailed';
   }
 
-  /** @name PalletPreimageRequestStatus (470) */
+  /** @name PalletPreimageRequestStatus (488) */
   interface PalletPreimageRequestStatus extends Enum {
     readonly isUnrequested: boolean;
     readonly asUnrequested: {
@@ -4449,7 +4652,7 @@
     readonly type: 'Unrequested' | 'Requested';
   }
 
-  /** @name PalletPreimageError (475) */
+  /** @name PalletPreimageError (493) */
   interface PalletPreimageError extends Enum {
     readonly isTooBig: boolean;
     readonly isAlreadyNoted: boolean;
@@ -4460,7 +4663,7 @@
     readonly type: 'TooBig' | 'AlreadyNoted' | 'NotAuthorized' | 'NotNoted' | 'Requested' | 'NotRequested';
   }
 
-  /** @name PalletDemocracyReferendumInfo (481) */
+  /** @name PalletDemocracyReferendumInfo (499) */
   interface PalletDemocracyReferendumInfo extends Enum {
     readonly isOngoing: boolean;
     readonly asOngoing: PalletDemocracyReferendumStatus;
@@ -4472,7 +4675,7 @@
     readonly type: 'Ongoing' | 'Finished';
   }
 
-  /** @name PalletDemocracyReferendumStatus (482) */
+  /** @name PalletDemocracyReferendumStatus (500) */
   interface PalletDemocracyReferendumStatus extends Struct {
     readonly end: u32;
     readonly proposal: FrameSupportPreimagesBounded;
@@ -4481,14 +4684,14 @@
     readonly tally: PalletDemocracyTally;
   }
 
-  /** @name PalletDemocracyTally (483) */
+  /** @name PalletDemocracyTally (501) */
   interface PalletDemocracyTally extends Struct {
     readonly ayes: u128;
     readonly nays: u128;
     readonly turnout: u128;
   }
 
-  /** @name PalletDemocracyVoteVoting (484) */
+  /** @name PalletDemocracyVoteVoting (502) */
   interface PalletDemocracyVoteVoting extends Enum {
     readonly isDirect: boolean;
     readonly asDirect: {
@@ -4507,16 +4710,16 @@
     readonly type: 'Direct' | 'Delegating';
   }
 
-  /** @name PalletDemocracyDelegations (488) */
+  /** @name PalletDemocracyDelegations (506) */
   interface PalletDemocracyDelegations extends Struct {
     readonly votes: u128;
     readonly capital: u128;
   }
 
-  /** @name PalletDemocracyVotePriorLock (489) */
+  /** @name PalletDemocracyVotePriorLock (507) */
   interface PalletDemocracyVotePriorLock extends ITuple<[u32, u128]> {}
 
-  /** @name PalletDemocracyError (492) */
+  /** @name PalletDemocracyError (510) */
   interface PalletDemocracyError extends Enum {
     readonly isValueLow: boolean;
     readonly isProposalMissing: boolean;
@@ -4545,7 +4748,7 @@
     readonly type: 'ValueLow' | 'ProposalMissing' | 'AlreadyCanceled' | 'DuplicateProposal' | 'ProposalBlacklisted' | 'NotSimpleMajority' | 'InvalidHash' | 'NoProposal' | 'AlreadyVetoed' | 'ReferendumInvalid' | 'NoneWaiting' | 'NotVoter' | 'NoPermission' | 'AlreadyDelegating' | 'InsufficientFunds' | 'NotDelegating' | 'VotesExist' | 'InstantNotAllowed' | 'Nonsense' | 'WrongUpperBound' | 'MaxVotesReached' | 'TooMany' | 'VotingPeriodLow' | 'PreimageNotExist';
   }
 
-  /** @name PalletCollectiveVotes (494) */
+  /** @name PalletCollectiveVotes (512) */
   interface PalletCollectiveVotes extends Struct {
     readonly index: u32;
     readonly threshold: u32;
@@ -4554,7 +4757,7 @@
     readonly end: u32;
   }
 
-  /** @name PalletCollectiveError (495) */
+  /** @name PalletCollectiveError (513) */
   interface PalletCollectiveError extends Enum {
     readonly isNotMember: boolean;
     readonly isDuplicateProposal: boolean;
@@ -4566,10 +4769,11 @@
     readonly isTooManyProposals: boolean;
     readonly isWrongProposalWeight: boolean;
     readonly isWrongProposalLength: boolean;
-    readonly type: 'NotMember' | 'DuplicateProposal' | 'ProposalMissing' | 'WrongIndex' | 'DuplicateVote' | 'AlreadyInitialized' | 'TooEarly' | 'TooManyProposals' | 'WrongProposalWeight' | 'WrongProposalLength';
+    readonly isPrimeAccountNotMember: boolean;
+    readonly type: 'NotMember' | 'DuplicateProposal' | 'ProposalMissing' | 'WrongIndex' | 'DuplicateVote' | 'AlreadyInitialized' | 'TooEarly' | 'TooManyProposals' | 'WrongProposalWeight' | 'WrongProposalLength' | 'PrimeAccountNotMember';
   }
 
-  /** @name PalletMembershipError (499) */
+  /** @name PalletMembershipError (517) */
   interface PalletMembershipError extends Enum {
     readonly isAlreadyMember: boolean;
     readonly isNotMember: boolean;
@@ -4577,12 +4781,12 @@
     readonly type: 'AlreadyMember' | 'NotMember' | 'TooManyMembers';
   }
 
-  /** @name PalletRankedCollectiveMemberRecord (502) */
+  /** @name PalletRankedCollectiveMemberRecord (520) */
   interface PalletRankedCollectiveMemberRecord extends Struct {
     readonly rank: u16;
   }
 
-  /** @name PalletRankedCollectiveError (507) */
+  /** @name PalletRankedCollectiveError (525) */
   interface PalletRankedCollectiveError extends Enum {
     readonly isAlreadyMember: boolean;
     readonly isNotMember: boolean;
@@ -4596,7 +4800,7 @@
     readonly type: 'AlreadyMember' | 'NotMember' | 'NotPolling' | 'Ongoing' | 'NoneRemaining' | 'Corruption' | 'RankTooLow' | 'InvalidWitness' | 'NoPermission';
   }
 
-  /** @name PalletReferendaReferendumInfo (508) */
+  /** @name PalletReferendaReferendumInfo (526) */
   interface PalletReferendaReferendumInfo extends Enum {
     readonly isOngoing: boolean;
     readonly asOngoing: PalletReferendaReferendumStatus;
@@ -4613,7 +4817,7 @@
     readonly type: 'Ongoing' | 'Approved' | 'Rejected' | 'Cancelled' | 'TimedOut' | 'Killed';
   }
 
-  /** @name PalletReferendaReferendumStatus (509) */
+  /** @name PalletReferendaReferendumStatus (527) */
   interface PalletReferendaReferendumStatus extends Struct {
     readonly track: u16;
     readonly origin: OpalRuntimeOriginCaller;
@@ -4628,19 +4832,19 @@
     readonly alarm: Option<ITuple<[u32, ITuple<[u32, u32]>]>>;
   }
 
-  /** @name PalletReferendaDeposit (510) */
+  /** @name PalletReferendaDeposit (528) */
   interface PalletReferendaDeposit extends Struct {
     readonly who: AccountId32;
     readonly amount: u128;
   }
 
-  /** @name PalletReferendaDecidingStatus (513) */
+  /** @name PalletReferendaDecidingStatus (531) */
   interface PalletReferendaDecidingStatus extends Struct {
     readonly since: u32;
     readonly confirming: Option<u32>;
   }
 
-  /** @name PalletReferendaTrackInfo (519) */
+  /** @name PalletReferendaTrackInfo (537) */
   interface PalletReferendaTrackInfo extends Struct {
     readonly name: Text;
     readonly maxDeciding: u32;
@@ -4653,7 +4857,7 @@
     readonly minSupport: PalletReferendaCurve;
   }
 
-  /** @name PalletReferendaCurve (520) */
+  /** @name PalletReferendaCurve (538) */
   interface PalletReferendaCurve extends Enum {
     readonly isLinearDecreasing: boolean;
     readonly asLinearDecreasing: {
@@ -4677,7 +4881,7 @@
     readonly type: 'LinearDecreasing' | 'SteppedDecreasing' | 'Reciprocal';
   }
 
-  /** @name PalletReferendaError (523) */
+  /** @name PalletReferendaError (541) */
   interface PalletReferendaError extends Enum {
     readonly isNotOngoing: boolean;
     readonly isHasDeposit: boolean;
@@ -4695,7 +4899,7 @@
     readonly type: 'NotOngoing' | 'HasDeposit' | 'BadTrack' | 'Full' | 'QueueEmpty' | 'BadReferendum' | 'NothingToDo' | 'NoTrack' | 'Unfinished' | 'NoPermission' | 'NoDeposit' | 'BadStatus' | 'PreimageNotExist';
   }
 
-  /** @name PalletSchedulerScheduled (526) */
+  /** @name PalletSchedulerScheduled (544) */
   interface PalletSchedulerScheduled extends Struct {
     readonly maybeId: Option<U8aFixed>;
     readonly priority: u8;
@@ -4704,7 +4908,7 @@
     readonly origin: OpalRuntimeOriginCaller;
   }
 
-  /** @name PalletSchedulerError (528) */
+  /** @name PalletSchedulerError (546) */
   interface PalletSchedulerError extends Enum {
     readonly isFailedToSchedule: boolean;
     readonly isNotFound: boolean;
@@ -4714,29 +4918,29 @@
     readonly type: 'FailedToSchedule' | 'NotFound' | 'TargetBlockNumberInPast' | 'RescheduleNoChange' | 'Named';
   }
 
-  /** @name CumulusPalletXcmpQueueInboundChannelDetails (530) */
+  /** @name CumulusPalletXcmpQueueInboundChannelDetails (548) */
   interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {
     readonly sender: u32;
     readonly state: CumulusPalletXcmpQueueInboundState;
-    readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;
+    readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat]>>;
   }
 
-  /** @name CumulusPalletXcmpQueueInboundState (531) */
+  /** @name CumulusPalletXcmpQueueInboundState (549) */
   interface CumulusPalletXcmpQueueInboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (534) */
-  interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {
+  /** @name PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat (552) */
+  interface PolkadotParachainPrimitivesPrimitivesXcmpMessageFormat extends Enum {
     readonly isConcatenatedVersionedXcm: boolean;
     readonly isConcatenatedEncodedBlob: boolean;
     readonly isSignals: boolean;
     readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (537) */
+  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (555) */
   interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {
     readonly recipient: u32;
     readonly state: CumulusPalletXcmpQueueOutboundState;
@@ -4745,14 +4949,14 @@
     readonly lastIndex: u16;
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundState (538) */
+  /** @name CumulusPalletXcmpQueueOutboundState (556) */
   interface CumulusPalletXcmpQueueOutboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name CumulusPalletXcmpQueueQueueConfigData (540) */
+  /** @name CumulusPalletXcmpQueueQueueConfigData (558) */
   interface CumulusPalletXcmpQueueQueueConfigData extends Struct {
     readonly suspendThreshold: u32;
     readonly dropThreshold: u32;
@@ -4762,7 +4966,7 @@
     readonly xcmpMaxIndividualWeight: SpWeightsWeightV2Weight;
   }
 
-  /** @name CumulusPalletXcmpQueueError (542) */
+  /** @name CumulusPalletXcmpQueueError (560) */
   interface CumulusPalletXcmpQueueError extends Enum {
     readonly isFailedToSend: boolean;
     readonly isBadXcmOrigin: boolean;
@@ -4772,38 +4976,38 @@
     readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';
   }
 
-  /** @name PalletXcmQueryStatus (543) */
+  /** @name PalletXcmQueryStatus (561) */
   interface PalletXcmQueryStatus extends Enum {
     readonly isPending: boolean;
     readonly asPending: {
-      readonly responder: XcmVersionedMultiLocation;
-      readonly maybeMatchQuerier: Option<XcmVersionedMultiLocation>;
+      readonly responder: StagingXcmVersionedMultiLocation;
+      readonly maybeMatchQuerier: Option<StagingXcmVersionedMultiLocation>;
       readonly maybeNotify: Option<ITuple<[u8, u8]>>;
       readonly timeout: u32;
     } & Struct;
     readonly isVersionNotifier: boolean;
     readonly asVersionNotifier: {
-      readonly origin: XcmVersionedMultiLocation;
+      readonly origin: StagingXcmVersionedMultiLocation;
       readonly isActive: bool;
     } & Struct;
     readonly isReady: boolean;
     readonly asReady: {
-      readonly response: XcmVersionedResponse;
+      readonly response: StagingXcmVersionedResponse;
       readonly at: u32;
     } & Struct;
     readonly type: 'Pending' | 'VersionNotifier' | 'Ready';
   }
 
-  /** @name XcmVersionedResponse (547) */
-  interface XcmVersionedResponse extends Enum {
+  /** @name StagingXcmVersionedResponse (565) */
+  interface StagingXcmVersionedResponse extends Enum {
     readonly isV2: boolean;
-    readonly asV2: XcmV2Response;
+    readonly asV2: StagingXcmV2Response;
     readonly isV3: boolean;
-    readonly asV3: XcmV3Response;
+    readonly asV3: StagingXcmV3Response;
     readonly type: 'V2' | 'V3';
   }
 
-  /** @name PalletXcmVersionMigrationStage (553) */
+  /** @name PalletXcmVersionMigrationStage (571) */
   interface PalletXcmVersionMigrationStage extends Enum {
     readonly isMigrateSupportedVersion: boolean;
     readonly isMigrateVersionNotifiers: boolean;
@@ -4813,22 +5017,22 @@
     readonly type: 'MigrateSupportedVersion' | 'MigrateVersionNotifiers' | 'NotifyCurrentTargets' | 'MigrateAndNotifyOldTargets';
   }
 
-  /** @name XcmVersionedAssetId (556) */
-  interface XcmVersionedAssetId extends Enum {
+  /** @name StagingXcmVersionedAssetId (574) */
+  interface StagingXcmVersionedAssetId extends Enum {
     readonly isV3: boolean;
-    readonly asV3: XcmV3MultiassetAssetId;
+    readonly asV3: StagingXcmV3MultiassetAssetId;
     readonly type: 'V3';
   }
 
-  /** @name PalletXcmRemoteLockedFungibleRecord (557) */
+  /** @name PalletXcmRemoteLockedFungibleRecord (575) */
   interface PalletXcmRemoteLockedFungibleRecord extends Struct {
     readonly amount: u128;
-    readonly owner: XcmVersionedMultiLocation;
-    readonly locker: XcmVersionedMultiLocation;
+    readonly owner: StagingXcmVersionedMultiLocation;
+    readonly locker: StagingXcmVersionedMultiLocation;
     readonly consumers: Vec<ITuple<[Null, u128]>>;
   }
 
-  /** @name PalletXcmError (564) */
+  /** @name PalletXcmError (582) */
   interface PalletXcmError extends Enum {
     readonly isUnreachable: boolean;
     readonly isSendFailure: boolean;
@@ -4853,29 +5057,29 @@
     readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed' | 'InvalidAsset' | 'LowBalance' | 'TooManyLocks' | 'AccountNotSovereign' | 'FeesNotMet' | 'LockNotFound' | 'InUse';
   }
 
-  /** @name CumulusPalletXcmError (565) */
+  /** @name CumulusPalletXcmError (583) */
   type CumulusPalletXcmError = Null;
 
-  /** @name CumulusPalletDmpQueueConfigData (566) */
+  /** @name CumulusPalletDmpQueueConfigData (584) */
   interface CumulusPalletDmpQueueConfigData extends Struct {
     readonly maxIndividual: SpWeightsWeightV2Weight;
   }
 
-  /** @name CumulusPalletDmpQueuePageIndexData (567) */
+  /** @name CumulusPalletDmpQueuePageIndexData (585) */
   interface CumulusPalletDmpQueuePageIndexData extends Struct {
     readonly beginUsed: u32;
     readonly endUsed: u32;
     readonly overweightCount: u64;
   }
 
-  /** @name CumulusPalletDmpQueueError (570) */
+  /** @name CumulusPalletDmpQueueError (588) */
   interface CumulusPalletDmpQueueError extends Enum {
     readonly isUnknown: boolean;
     readonly isOverLimit: boolean;
     readonly type: 'Unknown' | 'OverLimit';
   }
 
-  /** @name PalletUniqueError (574) */
+  /** @name PalletUniqueError (592) */
   interface PalletUniqueError extends Enum {
     readonly isCollectionDecimalPointLimitExceeded: boolean;
     readonly isEmptyArgument: boolean;
@@ -4883,13 +5087,13 @@
     readonly type: 'CollectionDecimalPointLimitExceeded' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection';
   }
 
-  /** @name PalletConfigurationError (575) */
+  /** @name PalletConfigurationError (593) */
   interface PalletConfigurationError extends Enum {
     readonly isInconsistentConfiguration: boolean;
     readonly type: 'InconsistentConfiguration';
   }
 
-  /** @name UpDataStructsCollection (576) */
+  /** @name UpDataStructsCollection (594) */
   interface UpDataStructsCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -4902,7 +5106,7 @@
     readonly flags: U8aFixed;
   }
 
-  /** @name UpDataStructsSponsorshipStateAccountId32 (577) */
+  /** @name UpDataStructsSponsorshipStateAccountId32 (595) */
   interface UpDataStructsSponsorshipStateAccountId32 extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -4912,43 +5116,43 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name UpDataStructsProperties (578) */
+  /** @name UpDataStructsProperties (596) */
   interface UpDataStructsProperties extends Struct {
     readonly map: UpDataStructsPropertiesMapBoundedVec;
     readonly consumedSpace: u32;
     readonly reserved: u32;
   }
 
-  /** @name UpDataStructsPropertiesMapBoundedVec (579) */
+  /** @name UpDataStructsPropertiesMapBoundedVec (597) */
   interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}
 
-  /** @name UpDataStructsPropertiesMapPropertyPermission (584) */
+  /** @name UpDataStructsPropertiesMapPropertyPermission (602) */
   interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}
 
-  /** @name UpDataStructsCollectionStats (591) */
+  /** @name UpDataStructsCollectionStats (609) */
   interface UpDataStructsCollectionStats extends Struct {
     readonly created: u32;
     readonly destroyed: u32;
     readonly alive: u32;
   }
 
-  /** @name UpDataStructsTokenChild (592) */
+  /** @name UpDataStructsTokenChild (610) */
   interface UpDataStructsTokenChild extends Struct {
     readonly token: u32;
     readonly collection: u32;
   }
 
-  /** @name PhantomTypeUpDataStructs (593) */
+  /** @name PhantomTypeUpDataStructs (611) */
   interface PhantomTypeUpDataStructs extends Vec<ITuple<[UpDataStructsTokenData, UpDataStructsRpcCollection, UpPovEstimateRpcPovInfo]>> {}
 
-  /** @name UpDataStructsTokenData (595) */
+  /** @name UpDataStructsTokenData (613) */
   interface UpDataStructsTokenData extends Struct {
     readonly properties: Vec<UpDataStructsProperty>;
     readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
     readonly pieces: u128;
   }
 
-  /** @name UpDataStructsRpcCollection (596) */
+  /** @name UpDataStructsRpcCollection (614) */
   interface UpDataStructsRpcCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -4964,13 +5168,13 @@
     readonly flags: UpDataStructsRpcCollectionFlags;
   }
 
-  /** @name UpDataStructsRpcCollectionFlags (597) */
+  /** @name UpDataStructsRpcCollectionFlags (615) */
   interface UpDataStructsRpcCollectionFlags extends Struct {
     readonly foreign: bool;
     readonly erc721metadata: bool;
   }
 
-  /** @name UpPovEstimateRpcPovInfo (598) */
+  /** @name UpPovEstimateRpcPovInfo (616) */
   interface UpPovEstimateRpcPovInfo extends Struct {
     readonly proofSize: u64;
     readonly compactProofSize: u64;
@@ -4979,7 +5183,7 @@
     readonly keyValues: Vec<UpPovEstimateRpcTrieKeyValue>;
   }
 
-  /** @name SpRuntimeTransactionValidityTransactionValidityError (601) */
+  /** @name SpRuntimeTransactionValidityTransactionValidityError (619) */
   interface SpRuntimeTransactionValidityTransactionValidityError extends Enum {
     readonly isInvalid: boolean;
     readonly asInvalid: SpRuntimeTransactionValidityInvalidTransaction;
@@ -4988,7 +5192,7 @@
     readonly type: 'Invalid' | 'Unknown';
   }
 
-  /** @name SpRuntimeTransactionValidityInvalidTransaction (602) */
+  /** @name SpRuntimeTransactionValidityInvalidTransaction (620) */
   interface SpRuntimeTransactionValidityInvalidTransaction extends Enum {
     readonly isCall: boolean;
     readonly isPayment: boolean;
@@ -5005,7 +5209,7 @@
     readonly type: 'Call' | 'Payment' | 'Future' | 'Stale' | 'BadProof' | 'AncientBirthBlock' | 'ExhaustsResources' | 'Custom' | 'BadMandatory' | 'MandatoryValidation' | 'BadSigner';
   }
 
-  /** @name SpRuntimeTransactionValidityUnknownTransaction (603) */
+  /** @name SpRuntimeTransactionValidityUnknownTransaction (621) */
   interface SpRuntimeTransactionValidityUnknownTransaction extends Enum {
     readonly isCannotLookup: boolean;
     readonly isNoUnsignedValidator: boolean;
@@ -5014,13 +5218,13 @@
     readonly type: 'CannotLookup' | 'NoUnsignedValidator' | 'Custom';
   }
 
-  /** @name UpPovEstimateRpcTrieKeyValue (605) */
+  /** @name UpPovEstimateRpcTrieKeyValue (623) */
   interface UpPovEstimateRpcTrieKeyValue extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name PalletCommonError (607) */
+  /** @name PalletCommonError (625) */
   interface PalletCommonError extends Enum {
     readonly isCollectionNotFound: boolean;
     readonly isMustBeTokenOwner: boolean;
@@ -5059,22 +5263,22 @@
     readonly isCollectionIsInternal: boolean;
     readonly isConfirmSponsorshipFail: boolean;
     readonly isUserIsNotCollectionAdmin: boolean;
-    readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsNotEthMirror' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal' | 'ConfirmSponsorshipFail' | 'UserIsNotCollectionAdmin';
+    readonly isFungibleItemsHaveNoId: boolean;
+    readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsNotEthMirror' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal' | 'ConfirmSponsorshipFail' | 'UserIsNotCollectionAdmin' | 'FungibleItemsHaveNoId';
   }
 
-  /** @name PalletFungibleError (609) */
+  /** @name PalletFungibleError (627) */
   interface PalletFungibleError extends Enum {
     readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
-    readonly isFungibleItemsHaveNoId: boolean;
     readonly isFungibleItemsDontHaveData: boolean;
     readonly isFungibleDisallowsNesting: boolean;
     readonly isSettingPropertiesNotAllowed: boolean;
     readonly isSettingAllowanceForAllNotAllowed: boolean;
     readonly isFungibleTokensAreAlwaysValid: boolean;
-    readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid';
+    readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid';
   }
 
-  /** @name PalletRefungibleError (614) */
+  /** @name PalletRefungibleError (632) */
   interface PalletRefungibleError extends Enum {
     readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isWrongRefungiblePieces: boolean;
@@ -5084,19 +5288,19 @@
     readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
   }
 
-  /** @name PalletNonfungibleItemData (615) */
+  /** @name PalletNonfungibleItemData (633) */
   interface PalletNonfungibleItemData extends Struct {
     readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name UpDataStructsPropertyScope (617) */
+  /** @name UpDataStructsPropertyScope (635) */
   interface UpDataStructsPropertyScope extends Enum {
     readonly isNone: boolean;
     readonly isRmrk: boolean;
     readonly type: 'None' | 'Rmrk';
   }
 
-  /** @name PalletNonfungibleError (620) */
+  /** @name PalletNonfungibleError (638) */
   interface PalletNonfungibleError extends Enum {
     readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isNonfungibleItemsHaveNoAmount: boolean;
@@ -5104,7 +5308,7 @@
     readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount' | 'CantBurnNftWithChildren';
   }
 
-  /** @name PalletStructureError (621) */
+  /** @name PalletStructureError (639) */
   interface PalletStructureError extends Enum {
     readonly isOuroborosDetected: boolean;
     readonly isDepthLimit: boolean;
@@ -5114,7 +5318,7 @@
     readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound' | 'CantNestTokenUnderCollection';
   }
 
-  /** @name PalletAppPromotionError (626) */
+  /** @name PalletAppPromotionError (644) */
   interface PalletAppPromotionError extends Enum {
     readonly isAdminNotSet: boolean;
     readonly isNoPermission: boolean;
@@ -5126,7 +5330,7 @@
     readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'InsufficientStakedBalance' | 'InconsistencyState';
   }
 
-  /** @name PalletForeignAssetsModuleError (627) */
+  /** @name PalletForeignAssetsModuleError (645) */
   interface PalletForeignAssetsModuleError extends Enum {
     readonly isBadLocation: boolean;
     readonly isMultiLocationExisted: boolean;
@@ -5135,13 +5339,13 @@
     readonly type: 'BadLocation' | 'MultiLocationExisted' | 'AssetIdNotExists' | 'AssetIdExisted';
   }
 
-  /** @name PalletEvmCodeMetadata (628) */
+  /** @name PalletEvmCodeMetadata (646) */
   interface PalletEvmCodeMetadata extends Struct {
     readonly size_: u64;
     readonly hash_: H256;
   }
 
-  /** @name PalletEvmError (630) */
+  /** @name PalletEvmError (648) */
   interface PalletEvmError extends Enum {
     readonly isBalanceLow: boolean;
     readonly isFeeOverflow: boolean;
@@ -5157,7 +5361,7 @@
     readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy' | 'TransactionMustComeFromEOA';
   }
 
-  /** @name FpRpcTransactionStatus (633) */
+  /** @name FpRpcTransactionStatus (651) */
   interface FpRpcTransactionStatus extends Struct {
     readonly transactionHash: H256;
     readonly transactionIndex: u32;
@@ -5168,10 +5372,10 @@
     readonly logsBloom: EthbloomBloom;
   }
 
-  /** @name EthbloomBloom (635) */
+  /** @name EthbloomBloom (653) */
   interface EthbloomBloom extends U8aFixed {}
 
-  /** @name EthereumReceiptReceiptV3 (637) */
+  /** @name EthereumReceiptReceiptV3 (655) */
   interface EthereumReceiptReceiptV3 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumReceiptEip658ReceiptData;
@@ -5182,7 +5386,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumReceiptEip658ReceiptData (638) */
+  /** @name EthereumReceiptEip658ReceiptData (656) */
   interface EthereumReceiptEip658ReceiptData extends Struct {
     readonly statusCode: u8;
     readonly usedGas: U256;
@@ -5190,14 +5394,14 @@
     readonly logs: Vec<EthereumLog>;
   }
 
-  /** @name EthereumBlock (639) */
+  /** @name EthereumBlock (657) */
   interface EthereumBlock extends Struct {
     readonly header: EthereumHeader;
     readonly transactions: Vec<EthereumTransactionTransactionV2>;
     readonly ommers: Vec<EthereumHeader>;
   }
 
-  /** @name EthereumHeader (640) */
+  /** @name EthereumHeader (658) */
   interface EthereumHeader extends Struct {
     readonly parentHash: H256;
     readonly ommersHash: H256;
@@ -5216,24 +5420,24 @@
     readonly nonce: EthereumTypesHashH64;
   }
 
-  /** @name EthereumTypesHashH64 (641) */
+  /** @name EthereumTypesHashH64 (659) */
   interface EthereumTypesHashH64 extends U8aFixed {}
 
-  /** @name PalletEthereumError (646) */
+  /** @name PalletEthereumError (664) */
   interface PalletEthereumError extends Enum {
     readonly isInvalidSignature: boolean;
     readonly isPreLogExists: boolean;
     readonly type: 'InvalidSignature' | 'PreLogExists';
   }
 
-  /** @name PalletEvmCoderSubstrateError (647) */
+  /** @name PalletEvmCoderSubstrateError (665) */
   interface PalletEvmCoderSubstrateError extends Enum {
     readonly isOutOfGas: boolean;
     readonly isOutOfFund: boolean;
     readonly type: 'OutOfGas' | 'OutOfFund';
   }
 
-  /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (648) */
+  /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (666) */
   interface UpDataStructsSponsorshipStateBasicCrossAccountIdRepr extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -5243,7 +5447,7 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name PalletEvmContractHelpersSponsoringModeT (649) */
+  /** @name PalletEvmContractHelpersSponsoringModeT (667) */
   interface PalletEvmContractHelpersSponsoringModeT extends Enum {
     readonly isDisabled: boolean;
     readonly isAllowlisted: boolean;
@@ -5251,7 +5455,7 @@
     readonly type: 'Disabled' | 'Allowlisted' | 'Generous';
   }
 
-  /** @name PalletEvmContractHelpersError (655) */
+  /** @name PalletEvmContractHelpersError (673) */
   interface PalletEvmContractHelpersError extends Enum {
     readonly isNoPermission: boolean;
     readonly isNoPendingSponsor: boolean;
@@ -5259,7 +5463,7 @@
     readonly type: 'NoPermission' | 'NoPendingSponsor' | 'TooManyMethodsHaveSponsoredLimit';
   }
 
-  /** @name PalletEvmMigrationError (656) */
+  /** @name PalletEvmMigrationError (674) */
   interface PalletEvmMigrationError extends Enum {
     readonly isAccountNotEmpty: boolean;
     readonly isAccountIsNotMigrating: boolean;
@@ -5267,17 +5471,23 @@
     readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating' | 'BadEvent';
   }
 
-  /** @name PalletMaintenanceError (657) */
+  /** @name PalletMaintenanceError (675) */
   type PalletMaintenanceError = Null;
 
-  /** @name PalletTestUtilsError (658) */
+  /** @name PalletUtilityError (676) */
+  interface PalletUtilityError extends Enum {
+    readonly isTooManyCalls: boolean;
+    readonly type: 'TooManyCalls';
+  }
+
+  /** @name PalletTestUtilsError (677) */
   interface PalletTestUtilsError extends Enum {
     readonly isTestPalletDisabled: boolean;
     readonly isTriggerRollback: boolean;
     readonly type: 'TestPalletDisabled' | 'TriggerRollback';
   }
 
-  /** @name SpRuntimeMultiSignature (660) */
+  /** @name SpRuntimeMultiSignature (679) */
   interface SpRuntimeMultiSignature extends Enum {
     readonly isEd25519: boolean;
     readonly asEd25519: SpCoreEd25519Signature;
@@ -5288,43 +5498,43 @@
     readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';
   }
 
-  /** @name SpCoreEd25519Signature (661) */
+  /** @name SpCoreEd25519Signature (680) */
   interface SpCoreEd25519Signature extends U8aFixed {}
 
-  /** @name SpCoreSr25519Signature (663) */
+  /** @name SpCoreSr25519Signature (682) */
   interface SpCoreSr25519Signature extends U8aFixed {}
 
-  /** @name SpCoreEcdsaSignature (664) */
+  /** @name SpCoreEcdsaSignature (683) */
   interface SpCoreEcdsaSignature extends U8aFixed {}
 
-  /** @name FrameSystemExtensionsCheckSpecVersion (667) */
+  /** @name FrameSystemExtensionsCheckSpecVersion (686) */
   type FrameSystemExtensionsCheckSpecVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckTxVersion (668) */
+  /** @name FrameSystemExtensionsCheckTxVersion (687) */
   type FrameSystemExtensionsCheckTxVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckGenesis (669) */
+  /** @name FrameSystemExtensionsCheckGenesis (688) */
   type FrameSystemExtensionsCheckGenesis = Null;
 
-  /** @name FrameSystemExtensionsCheckNonce (672) */
+  /** @name FrameSystemExtensionsCheckNonce (691) */
   interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}
 
-  /** @name FrameSystemExtensionsCheckWeight (673) */
+  /** @name FrameSystemExtensionsCheckWeight (692) */
   type FrameSystemExtensionsCheckWeight = Null;
 
-  /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (674) */
+  /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (693) */
   type OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance = Null;
 
-  /** @name OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls (675) */
+  /** @name OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls (694) */
   type OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls = Null;
 
-  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (676) */
+  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (695) */
   interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
 
-  /** @name OpalRuntimeRuntime (677) */
+  /** @name OpalRuntimeRuntime (696) */
   type OpalRuntimeRuntime = Null;
 
-  /** @name PalletEthereumFakeTransactionFinalizer (678) */
+  /** @name PalletEthereumFakeTransactionFinalizer (697) */
   type PalletEthereumFakeTransactionFinalizer = Null;
 
 } // declare module