git.delta.rocks / unique-network / refs/commits / 507b779dd4fb

difftreelog

Merge pull request #757 from UniqueNetwork/feature/collection-sponsoring-for-rft

Yaroslav Bolyukin2022-12-23parents: #246f27a #9b3f042.patch.diff
in: master

19 files changed

modifiedCargo.lockdiffbeforeafterboth
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -903,9 +903,9 @@
 
 [[package]]
 name = "clap"
-version = "4.0.30"
+version = "4.0.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "656ad1e55e23d287773f7d8192c300dc715c3eeded93b3da651d11c42cfd74d2"
+checksum = "a7db700bc935f9e43e88d00b0850dae18a63773cfbec6d8e070fccf7fef89a39"
 dependencies = [
  "bitflags",
  "clap_derive",
@@ -1300,7 +1300,7 @@
 [[package]]
 name = "cumulus-client-cli"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "clap",
  "parity-scale-codec 3.2.1",
@@ -1315,7 +1315,7 @@
 [[package]]
 name = "cumulus-client-collator"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-client-consensus-common",
  "cumulus-client-network",
@@ -1338,7 +1338,7 @@
 [[package]]
 name = "cumulus-client-consensus-aura"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "async-trait",
  "cumulus-client-consensus-common",
@@ -1367,7 +1367,7 @@
 [[package]]
 name = "cumulus-client-consensus-common"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "async-trait",
  "cumulus-client-pov-recovery",
@@ -1390,7 +1390,7 @@
 [[package]]
 name = "cumulus-client-network"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "async-trait",
  "cumulus-relay-chain-interface",
@@ -1413,7 +1413,7 @@
 [[package]]
 name = "cumulus-client-pov-recovery"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "cumulus-relay-chain-interface",
@@ -1436,7 +1436,7 @@
 [[package]]
 name = "cumulus-client-service"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-client-cli",
  "cumulus-client-collator",
@@ -1464,7 +1464,7 @@
 [[package]]
 name = "cumulus-pallet-aura-ext"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -1480,7 +1480,7 @@
 [[package]]
 name = "cumulus-pallet-dmp-queue"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -1497,7 +1497,7 @@
 [[package]]
 name = "cumulus-pallet-parachain-system"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "bytes",
  "cumulus-pallet-parachain-system-proc-macro",
@@ -1525,7 +1525,7 @@
 [[package]]
 name = "cumulus-pallet-parachain-system-proc-macro"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -1536,7 +1536,7 @@
 [[package]]
 name = "cumulus-pallet-xcm"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -1552,7 +1552,7 @@
 [[package]]
 name = "cumulus-pallet-xcmp-queue"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -1570,7 +1570,7 @@
 [[package]]
 name = "cumulus-primitives-core"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "parity-scale-codec 3.2.1",
  "polkadot-core-primitives",
@@ -1585,7 +1585,7 @@
 [[package]]
 name = "cumulus-primitives-parachain-inherent"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "async-trait",
  "cumulus-primitives-core",
@@ -1608,7 +1608,7 @@
 [[package]]
 name = "cumulus-primitives-timestamp"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "futures 0.3.25",
@@ -1621,7 +1621,7 @@
 [[package]]
 name = "cumulus-primitives-utility"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -1637,7 +1637,7 @@
 [[package]]
 name = "cumulus-relay-chain-inprocess-interface"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "async-trait",
  "cumulus-primitives-core",
@@ -1662,7 +1662,7 @@
 [[package]]
 name = "cumulus-relay-chain-interface"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "async-trait",
  "cumulus-primitives-core",
@@ -1682,7 +1682,7 @@
 [[package]]
 name = "cumulus-relay-chain-minimal-node"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "array-bytes 6.0.0",
  "async-trait",
@@ -1722,7 +1722,7 @@
 [[package]]
 name = "cumulus-relay-chain-rpc-interface"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "async-trait",
  "cumulus-primitives-core",
@@ -1751,7 +1751,7 @@
 [[package]]
 name = "cumulus-test-relay-sproof-builder"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "parity-scale-codec 3.2.1",
@@ -6982,7 +6982,7 @@
 [[package]]
 name = "parachain-info"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#a4e825c9500acab6cc3deccffea7b01350f12ed1"
+source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.36#afe528af891f464b318293f183f6d3eefbc979b0"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
modifiedpallets/common/src/eth.rsdiffbeforeafterboth
--- a/pallets/common/src/eth.rs
+++ b/pallets/common/src/eth.rs
@@ -125,7 +125,9 @@
 /// Ethereum representation of Optional value with CrossAddress.
 #[derive(Debug, Default, AbiCoder)]
 pub struct OptionCrossAddress {
+	/// Is address set
 	pub status: bool,
+	/// Address value
 	pub value: CrossAddress,
 }
 
modifiedpallets/evm-contract-helpers/src/eth.rsdiffbeforeafterboth
--- a/pallets/evm-contract-helpers/src/eth.rs
+++ b/pallets/evm-contract-helpers/src/eth.rs
@@ -23,7 +23,7 @@
 	execution::Result,
 	generate_stubgen, solidity_interface,
 	types::*,
-	ToLog, AbiCoder,
+	ToLog,
 };
 use pallet_common::eth;
 use pallet_evm::{
modifiedpallets/evm-contract-helpers/src/stubs/ContractHelpers.rawdiffbeforeafterboth

binary blob — no preview

modifiedpallets/evm-contract-helpers/src/stubs/ContractHelpers.soldiffbeforeafterboth
--- a/pallets/evm-contract-helpers/src/stubs/ContractHelpers.sol
+++ b/pallets/evm-contract-helpers/src/stubs/ContractHelpers.sol
@@ -283,6 +283,8 @@
 
 /// Ethereum representation of Optional value with CrossAddress.
 struct OptionCrossAddress {
+	/// TODO: field description
 	bool status;
+	/// TODO: field description
 	CrossAddress value;
 }
modifiedpallets/refungible/src/erc_token.rsdiffbeforeafterboth
--- a/pallets/refungible/src/erc_token.rs
+++ b/pallets/refungible/src/erc_token.rs
@@ -43,6 +43,9 @@
 	TotalSupply, weights::WeightInfo,
 };
 
+/// Refungible token handle contains information about token's collection and id
+///
+/// RefungibleTokenHandle doesn't check token's existance upon creation
 pub struct RefungibleTokenHandle<T: Config>(pub RefungibleHandle<T>, pub TokenId);
 
 #[solidity_interface(name = ERC1633)]
modifiedruntime/common/ethereum/sponsoring.rsdiffbeforeafterboth
--- a/runtime/common/ethereum/sponsoring.rs
+++ b/runtime/common/ethereum/sponsoring.rs
@@ -32,14 +32,22 @@
 	Config as FungibleConfig,
 	erc::{UniqueFungibleCall, ERC20Call},
 };
-use pallet_refungible::Config as RefungibleConfig;
+use pallet_refungible::{
+	Config as RefungibleConfig,
+	erc::UniqueRefungibleCall,
+	erc_token::{RefungibleTokenHandle, UniqueRefungibleTokenCall},
+	RefungibleHandle,
+};
 use pallet_unique::Config as UniqueConfig;
 use sp_std::prelude::*;
-use up_data_structs::{CollectionMode, CreateItemData, CreateNftData, TokenId};
+use up_data_structs::{
+	CollectionMode, CreateItemData, CreateNftData, mapping::TokenAddressMapping, TokenId,
+};
 use up_sponsorship::SponsorshipHandler;
-
 use crate::{Runtime, runtime_common::sponsoring::*};
 
+mod refungible;
+
 pub type EvmSponsorshipHandler = (
 	UniqueEthSponsorshipHandler<Runtime>,
 	pallet_evm_contract_helpers::HelpersContractSponsoring<Runtime>,
@@ -53,80 +61,163 @@
 		who: &T::CrossAccountId,
 		call_context: &CallContext,
 	) -> Option<T::CrossAccountId> {
-		let collection_id = map_eth_to_id(&call_context.contract_address)?;
-		let collection = <CollectionHandle<T>>::new(collection_id)?;
-		let sponsor = collection.sponsorship.sponsor()?.clone();
-		let (method_id, mut reader) = AbiReader::new_call(&call_context.input).ok()?;
-		Some(T::CrossAccountId::from_sub(match &collection.mode {
-			CollectionMode::NFT => {
-				let call = <UniqueNFTCall<T>>::parse(method_id, &mut reader).ok()??;
-				match call {
-					UniqueNFTCall::TokenProperties(TokenPropertiesCall::SetProperty {
-						token_id,
-						key,
-						value,
-						..
-					}) => {
-						let token_id: TokenId = token_id.try_into().ok()?;
-						withdraw_set_token_property::<T>(
+		if let Some(collection_id) = map_eth_to_id(&call_context.contract_address) {
+			let collection = <CollectionHandle<T>>::new(collection_id)?;
+			let sponsor = collection.sponsorship.sponsor()?.clone();
+			let (method_id, mut reader) = AbiReader::new_call(&call_context.input).ok()?;
+			Some(T::CrossAccountId::from_sub(match &collection.mode {
+				CollectionMode::NFT => {
+					let call = <UniqueNFTCall<T>>::parse(method_id, &mut reader).ok()??;
+					match call {
+						UniqueNFTCall::TokenProperties(TokenPropertiesCall::SetProperty {
+							token_id,
+							key,
+							value,
+							..
+						}) => {
+							let token_id: TokenId = token_id.try_into().ok()?;
+							withdraw_set_token_property::<T>(
+								&collection,
+								&who,
+								&token_id,
+								key.len() + value.len(),
+							)
+							.map(|()| sponsor)
+						}
+						UniqueNFTCall::ERC721UniqueExtensions(
+							ERC721UniqueExtensionsCall::Transfer { token_id, .. },
+						) => {
+							let token_id: TokenId = token_id.try_into().ok()?;
+							withdraw_transfer::<T>(&collection, &who, &token_id).map(|()| sponsor)
+						}
+						UniqueNFTCall::ERC721UniqueMintable(
+							ERC721UniqueMintableCall::Mint { .. }
+							| ERC721UniqueMintableCall::MintCheckId { .. }
+							| ERC721UniqueMintableCall::MintWithTokenUri { .. }
+							| ERC721UniqueMintableCall::MintWithTokenUriCheckId { .. },
+						) => withdraw_create_item::<T>(
 							&collection,
 							&who,
-							&token_id,
-							key.len() + value.len(),
+							&CreateItemData::NFT(CreateNftData::default()),
 						)
-						.map(|()| sponsor)
-					}
-					UniqueNFTCall::ERC721UniqueExtensions(
-						ERC721UniqueExtensionsCall::Transfer { token_id, .. },
-					) => {
-						let token_id: TokenId = token_id.try_into().ok()?;
-						withdraw_transfer::<T>(&collection, &who, &token_id).map(|()| sponsor)
+						.map(|()| sponsor),
+						UniqueNFTCall::ERC721(ERC721Call::TransferFrom {
+							token_id, from, ..
+						}) => {
+							let token_id: TokenId = token_id.try_into().ok()?;
+							let from = T::CrossAccountId::from_eth(from);
+							withdraw_transfer::<T>(&collection, &from, &token_id).map(|()| sponsor)
+						}
+						UniqueNFTCall::ERC721(ERC721Call::Approve { token_id, .. }) => {
+							let token_id: TokenId = token_id.try_into().ok()?;
+							withdraw_approve::<T>(&collection, who.as_sub(), &token_id)
+								.map(|()| sponsor)
+						}
+						_ => None,
 					}
-					UniqueNFTCall::ERC721UniqueMintable(
-						ERC721UniqueMintableCall::Mint { .. }
-						| ERC721UniqueMintableCall::MintCheckId { .. }
-						| ERC721UniqueMintableCall::MintWithTokenUri { .. }
-						| ERC721UniqueMintableCall::MintWithTokenUriCheckId { .. },
-					) => withdraw_create_item::<T>(
-						&collection,
-						&who,
-						&CreateItemData::NFT(CreateNftData::default()),
-					)
-					.map(|()| sponsor),
-					UniqueNFTCall::ERC721(ERC721Call::TransferFrom { token_id, from, .. }) => {
-						let token_id: TokenId = token_id.try_into().ok()?;
-						let from = T::CrossAccountId::from_eth(from);
-						withdraw_transfer::<T>(&collection, &from, &token_id).map(|()| sponsor)
-					}
-					UniqueNFTCall::ERC721(ERC721Call::Approve { token_id, .. }) => {
-						let token_id: TokenId = token_id.try_into().ok()?;
-						withdraw_approve::<T>(&collection, who.as_sub(), &token_id)
-							.map(|()| sponsor)
-					}
-					_ => None,
 				}
-			}
-			CollectionMode::Fungible(_) => {
-				let call = <UniqueFungibleCall<T>>::parse(method_id, &mut reader).ok()??;
-				#[allow(clippy::single_match)]
-				match call {
-					UniqueFungibleCall::ERC20(ERC20Call::Transfer { .. }) => {
-						withdraw_transfer::<T>(&collection, who, &TokenId::default())
-							.map(|()| sponsor)
-					}
-					UniqueFungibleCall::ERC20(ERC20Call::TransferFrom { from, .. }) => {
-						let from = T::CrossAccountId::from_eth(from);
-						withdraw_transfer::<T>(&collection, &from, &TokenId::default())
-							.map(|()| sponsor)
+				CollectionMode::ReFungible => {
+					let call = <UniqueRefungibleCall<T>>::parse(method_id, &mut reader).ok()??;
+					refungible::call_sponsor(call, collection, who).map(|()| sponsor)
+				}
+				CollectionMode::Fungible(_) => {
+					let call = <UniqueFungibleCall<T>>::parse(method_id, &mut reader).ok()??;
+					match call {
+						UniqueFungibleCall::ERC20(ERC20Call::Transfer { .. }) => {
+							withdraw_transfer::<T>(&collection, who, &TokenId::default())
+								.map(|()| sponsor)
+						}
+						UniqueFungibleCall::ERC20(ERC20Call::TransferFrom { from, .. }) => {
+							let from = T::CrossAccountId::from_eth(from);
+							withdraw_transfer::<T>(&collection, &from, &TokenId::default())
+								.map(|()| sponsor)
+						}
+						UniqueFungibleCall::ERC20(ERC20Call::Approve { .. }) => {
+							withdraw_approve::<T>(&collection, who.as_sub(), &TokenId::default())
+								.map(|()| sponsor)
+						}
+						_ => None,
 					}
-					UniqueFungibleCall::ERC20(ERC20Call::Approve { .. }) => {
-						withdraw_approve::<T>(&collection, who.as_sub(), &TokenId::default())
-							.map(|()| sponsor)
-					}
-					_ => None,
 				}
+			}?))
+		} else {
+			let (collection_id, token_id) =
+				T::EvmTokenAddressMapping::address_to_token(&call_context.contract_address)?;
+			let collection = <CollectionHandle<T>>::new(collection_id)?;
+			if collection.mode != CollectionMode::ReFungible {
+				return None;
 			}
-			_ => None,
-		}?))
+			let sponsor = collection.sponsorship.sponsor()?.clone();
+			let rft_collection = RefungibleHandle::cast(collection);
+			// Token existance isn't checked at this point and should be checked in `withdraw` method.
+			let token = RefungibleTokenHandle(rft_collection, token_id);
+
+			let (method_id, mut reader) = AbiReader::new_call(&call_context.input).ok()?;
+			let call = <UniqueRefungibleTokenCall<T>>::parse(method_id, &mut reader).ok()??;
+			Some(T::CrossAccountId::from_sub(
+				refungible::token_call_sponsor(call, token, who).map(|()| sponsor)?,
+			))
+		}
+	}
+}
+
+mod common {
+	use super::*;
+
+	use pallet_common::erc::{CollectionCall};
+
+	pub fn collection_call_sponsor<T>(
+		call: CollectionCall<T>,
+		_collection: CollectionHandle<T>,
+		_who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use CollectionCall::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _)
+			| CollectionProperty { .. }
+			| CollectionProperties { .. }
+			| HasCollectionPendingSponsor
+			| CollectionSponsor
+			| ContractAddress
+			| AllowlistedCross { .. }
+			| IsOwnerOrAdminEth { .. }
+			| IsOwnerOrAdminCross { .. }
+			| CollectionOwner
+			| CollectionAdmins
+			| CollectionLimits
+			| CollectionNestingRestrictedIds
+			| CollectionNestingPermissions
+			| UniqueCollectionType => None,
+
+			// Not sponsored
+			AddToCollectionAllowList { .. }
+			| AddToCollectionAllowListCross { .. }
+			| RemoveFromCollectionAllowList { .. }
+			| RemoveFromCollectionAllowListCross { .. }
+			| AddCollectionAdminCross { .. }
+			| RemoveCollectionAdminCross { .. }
+			| AddCollectionAdmin { .. }
+			| RemoveCollectionAdmin { .. }
+			| SetNestingBool { .. }
+			| SetNesting { .. }
+			| SetCollectionAccess { .. }
+			| SetCollectionMintMode { .. }
+			| SetOwner { .. }
+			| ChangeCollectionOwnerCross { .. }
+			| SetCollectionProperty { .. }
+			| SetCollectionProperties { .. }
+			| DeleteCollectionProperty { .. }
+			| DeleteCollectionProperties { .. }
+			| SetCollectionSponsor { .. }
+			| SetCollectionSponsorCross { .. }
+			| SetCollectionLimit { .. }
+			| ConfirmCollectionSponsorship
+			| RemoveCollectionSponsor => None,
+		}
 	}
 }
addedruntime/common/ethereum/sponsoring/refungible.rsdiffbeforeafterboth
--- /dev/null
+++ b/runtime/common/ethereum/sponsoring/refungible.rs
@@ -0,0 +1,381 @@
+// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
+// This file is part of Unique Network.
+
+// Unique Network is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// Unique Network is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
+
+//! Implements EVM sponsoring logic via TransactionValidityHack
+
+use core::convert::TryInto;
+use pallet_common::CollectionHandle;
+use pallet_evm::account::CrossAccountId;
+use pallet_fungible::Config as FungibleConfig;
+use pallet_refungible::Config as RefungibleConfig;
+use pallet_nonfungible::Config as NonfungibleConfig;
+use pallet_unique::Config as UniqueConfig;
+use up_data_structs::{CreateItemData, CreateNftData, TokenId};
+
+use super::common;
+use crate::runtime_common::sponsoring::*;
+
+use pallet_refungible::{
+	erc::{
+		ERC721BurnableCall, ERC721Call, ERC721EnumerableCall, ERC721MetadataCall,
+		ERC721UniqueExtensionsCall, ERC721UniqueMintableCall, TokenPropertiesCall,
+		UniqueRefungibleCall,
+	},
+	erc_token::{
+		ERC1633Call, ERC20Call, ERC20UniqueExtensionsCall, RefungibleTokenHandle,
+		UniqueRefungibleTokenCall,
+	},
+};
+
+pub fn call_sponsor<T>(
+	call: UniqueRefungibleCall<T>,
+	collection: CollectionHandle<T>,
+	who: &T::CrossAccountId,
+) -> Option<()>
+where
+	T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+{
+	use UniqueRefungibleCall::*;
+
+	match call {
+		// Readonly
+		ERC165Call(_, _) => None,
+
+		ERC721Enumerable(call) => erc721::enumerable_call_sponsor(call, collection, who),
+		ERC721Burnable(call) => erc721::burnable_call_sponsor(call, collection, who),
+		ERC721Metadata(call) => erc721::metadata_call_sponsor(call, collection, who),
+		Collection(call) => common::collection_call_sponsor(call, collection, who),
+		ERC721(call) => erc721::call_sponsor(call, collection, who),
+		ERC721UniqueExtensions(call) => {
+			erc721::unique_extensions_call_sponsor(call, collection, who)
+		}
+		ERC721UniqueMintable(call) => erc721::unique_mintable_call_sponsor(call, collection, who),
+		TokenProperties(call) => token_properties_call_sponsor(call, collection, who),
+	}
+}
+
+pub fn token_properties_call_sponsor<T>(
+	call: TokenPropertiesCall<T>,
+	collection: CollectionHandle<T>,
+	who: &T::CrossAccountId,
+) -> Option<()>
+where
+	T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+{
+	use TokenPropertiesCall::*;
+
+	match call {
+		// Readonly
+		ERC165Call(_, _) | Property { .. } | TokenPropertyPermissions => None,
+
+		// Not sponsored
+		SetTokenPropertyPermission { .. }
+		| SetTokenPropertyPermissions { .. }
+		| SetProperties { .. }
+		| DeleteProperty { .. }
+		| DeleteProperties { .. } => None,
+
+		SetProperty {
+			token_id,
+			key,
+			value,
+			..
+		} => {
+			let token_id = TokenId::try_from(token_id).ok()?;
+			withdraw_set_token_property::<T>(&collection, &who, &token_id, key.len() + value.len())
+		}
+	}
+}
+
+pub fn token_call_sponsor<T>(
+	call: UniqueRefungibleTokenCall<T>,
+	token: RefungibleTokenHandle<T>,
+	who: &T::CrossAccountId,
+) -> Option<()>
+where
+	T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+{
+	use UniqueRefungibleTokenCall::*;
+
+	match call {
+		// Readonly
+		ERC165Call(_, _) => None,
+
+		ERC20(call) => erc20::call_sponsor(call, token, who),
+		ERC20UniqueExtensions(call) => erc20::unique_extensions_call_sponsor(call, token, who),
+		ERC1633(call) => erc1633::call_sponsor(call, token, who),
+	}
+}
+
+mod erc721 {
+	use super::*;
+
+	pub fn call_sponsor<T>(
+		call: ERC721Call<T>,
+		collection: CollectionHandle<T>,
+		_who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC721Call::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _)
+			| BalanceOf { .. }
+			| OwnerOf { .. }
+			| GetApproved { .. }
+			| IsApprovedForAll { .. }
+			| CollectionHelperAddress => None,
+
+			// Not sponsored
+			SafeTransferFromWithData { .. }
+			| SafeTransferFrom { .. }
+			| SetApprovalForAll { .. } => None,
+
+			TransferFrom { token_id, from, .. } => {
+				let token_id = TokenId::try_from(token_id).ok()?;
+				let from = T::CrossAccountId::from_eth(from);
+				withdraw_transfer::<T>(&collection, &from, &token_id)
+			}
+
+			// Not supported
+			Approve { .. } => None,
+		}
+	}
+
+	pub fn enumerable_call_sponsor<T>(
+		call: ERC721EnumerableCall<T>,
+		_collection: CollectionHandle<T>,
+		_who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC721EnumerableCall::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _) | TokenByIndex { .. } | TokenOfOwnerByIndex { .. } | TotalSupply => {
+				None
+			}
+		}
+	}
+
+	pub fn burnable_call_sponsor<T>(
+		call: ERC721BurnableCall<T>,
+		_collection: CollectionHandle<T>,
+		_who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC721BurnableCall::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _) => None,
+
+			// Not sponsored
+			Burn { .. } => None,
+		}
+	}
+
+	pub fn metadata_call_sponsor<T>(
+		call: ERC721MetadataCall<T>,
+		_collection: CollectionHandle<T>,
+		_who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC721MetadataCall::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _) | NameProxy | SymbolProxy | TokenUri { .. } => None,
+		}
+	}
+
+	pub fn unique_extensions_call_sponsor<T>(
+		call: ERC721UniqueExtensionsCall<T>,
+		collection: CollectionHandle<T>,
+		who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC721UniqueExtensionsCall::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _)
+			| Name
+			| Symbol
+			| Description
+			| CrossOwnerOf { .. }
+			| Properties { .. }
+			| NextTokenId
+			| TokenContractAddress { .. } => None,
+
+			// Not sponsored
+			BurnFrom { .. }
+			| BurnFromCross { .. }
+			| MintBulk { .. }
+			| MintBulkWithTokenUri { .. } => None,
+
+			MintCross { .. } => withdraw_create_item::<T>(
+				&collection,
+				&who,
+				&CreateItemData::NFT(CreateNftData::default()),
+			),
+
+			TransferCross { token_id, .. }
+			| TransferFromCross { token_id, .. }
+			| Transfer { token_id, .. } => {
+				let token_id = TokenId::try_from(token_id).ok()?;
+				withdraw_transfer::<T>(&collection, &who, &token_id)
+			}
+		}
+	}
+
+	pub fn unique_mintable_call_sponsor<T>(
+		call: ERC721UniqueMintableCall<T>,
+		collection: CollectionHandle<T>,
+		who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC721UniqueMintableCall::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _) | MintingFinished => None,
+
+			// Not sponsored
+			FinishMinting => None,
+
+			Mint { .. }
+			| MintCheckId { .. }
+			| MintWithTokenUri { .. }
+			| MintWithTokenUriCheckId { .. } => withdraw_create_item::<T>(
+				&collection,
+				&who,
+				&CreateItemData::NFT(CreateNftData::default()),
+			),
+		}
+	}
+}
+
+/// Module for methods of refungible token
+///
+/// Existance of token should be checked before searching for sponsor
+/// because RefungibleTokenHandle doesn't check token's existence upon creation
+mod erc20 {
+	use super::*;
+
+	pub fn call_sponsor<T>(
+		call: ERC20Call<T>,
+		token: RefungibleTokenHandle<T>,
+		who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC20Call::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _)
+			| Name
+			| Symbol
+			| TotalSupply
+			| Decimals
+			| BalanceOf { .. }
+			| Allowance { .. } => None,
+
+			Transfer { .. } => {
+				let RefungibleTokenHandle(handle, token_id) = token;
+				let token_id = token_id.try_into().ok()?;
+				withdraw_transfer::<T>(&handle, &who, &token_id)
+			}
+			TransferFrom { from, .. } => {
+				let RefungibleTokenHandle(handle, token_id) = token;
+				let token_id = token_id.try_into().ok()?;
+				let from = T::CrossAccountId::from_eth(from);
+				withdraw_transfer::<T>(&handle, &from, &token_id)
+			}
+			Approve { .. } => {
+				let RefungibleTokenHandle(handle, token_id) = token;
+				let token_id = token_id.try_into().ok()?;
+				withdraw_approve::<T>(&handle, who.as_sub(), &token_id)
+			}
+		}
+	}
+
+	pub fn unique_extensions_call_sponsor<T>(
+		call: ERC20UniqueExtensionsCall<T>,
+		token: RefungibleTokenHandle<T>,
+		who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC20UniqueExtensionsCall::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _) => None,
+
+			// Not sponsored
+			BurnFrom { .. } | BurnFromCross { .. } | Repartition { .. } => None,
+
+			TransferCross { .. } | TransferFromCross { .. } => {
+				let RefungibleTokenHandle(handle, token_id) = token;
+				let token_id = token_id.try_into().ok()?;
+				withdraw_transfer::<T>(&handle, &who, &token_id)
+			}
+
+			ApproveCross { .. } => {
+				let RefungibleTokenHandle(handle, token_id) = token;
+				let token_id = token_id.try_into().ok()?;
+				withdraw_approve::<T>(&handle, who.as_sub(), &token_id)
+			}
+		}
+	}
+}
+
+mod erc1633 {
+	use super::*;
+
+	pub fn call_sponsor<T>(
+		call: ERC1633Call<T>,
+		_token: RefungibleTokenHandle<T>,
+		_who: &T::CrossAccountId,
+	) -> Option<()>
+	where
+		T: UniqueConfig + FungibleConfig + NonfungibleConfig + RefungibleConfig,
+	{
+		use ERC1633Call::*;
+
+		match call {
+			// Readonly
+			ERC165Call(_, _) | ParentToken | ParentTokenId => None,
+		}
+	}
+}
modifiedtests/src/eth/abi/reFungibleDeprecated.jsondiffbeforeafterboth
--- a/tests/src/eth/abi/reFungibleDeprecated.json
+++ b/tests/src/eth/abi/reFungibleDeprecated.json
@@ -98,5 +98,33 @@
     "outputs": [],
     "stateMutability": "nonpayable",
     "type": "function"
+  },
+  {
+    "inputs": [
+      { "internalType": "address", "name": "to", "type": "address" },
+      { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" }
+    ],
+    "name": "mintBulk",
+    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
+    "stateMutability": "nonpayable",
+    "type": "function"
+  },
+  {
+    "inputs": [
+      { "internalType": "address", "name": "to", "type": "address" },
+      {
+        "components": [
+          { "internalType": "uint256", "name": "field_0", "type": "uint256" },
+          { "internalType": "string", "name": "field_1", "type": "string" }
+        ],
+        "internalType": "struct Tuple0[]",
+        "name": "tokens",
+        "type": "tuple[]"
+      }
+    ],
+    "name": "mintBulkWithTokenURI",
+    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
+    "stateMutability": "nonpayable",
+    "type": "function"
   }
 ]
modifiedtests/src/eth/api/ContractHelpers.soldiffbeforeafterboth
--- a/tests/src/eth/api/ContractHelpers.sol
+++ b/tests/src/eth/api/ContractHelpers.sol
@@ -183,7 +183,9 @@
 
 /// Ethereum representation of Optional value with CrossAddress.
 struct OptionCrossAddress {
+	/// TODO: field description
 	bool status;
+	/// TODO: field description
 	CrossAddress value;
 }
 
modifiedtests/src/eth/collectionSponsoring.test.tsdiffbeforeafterboth
--- a/tests/src/eth/collectionSponsoring.test.ts
+++ b/tests/src/eth/collectionSponsoring.test.ts
@@ -15,10 +15,10 @@
 // along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
 
 import {IKeyringPair} from '@polkadot/types/types';
-import {usingPlaygrounds} from '../util/index';
+import {Pallets, requirePalletsOrSkip, usingPlaygrounds} from '../util/index';
 import {itEth, expect} from './util';
 
-describe('evm collection sponsoring', () => {
+describe('evm nft collection sponsoring', () => {
   let donor: IKeyringPair;
   let alice: IKeyringPair;
   let nominal: bigint;
@@ -101,14 +101,14 @@
       expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.true;
 
       await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsor});
-      let sponsorTuple = await collectionEvm.methods.collectionSponsor().call({from: owner});
-      expect(helper.address.restoreCrossAccountFromBigInt(BigInt(sponsorTuple.sub))).to.be.eq(helper.address.ethToSubstrate(sponsor, true));
+      let sponsorStruct = await collectionEvm.methods.collectionSponsor().call({from: owner});
+      expect(helper.address.restoreCrossAccountFromBigInt(BigInt(sponsorStruct.sub))).to.be.eq(helper.address.ethToSubstrate(sponsor, true));
       expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.false;
 
       await collectionEvm.methods.removeCollectionSponsor().send({from: owner});
 
-      sponsorTuple = await collectionEvm.methods.collectionSponsor().call({from: owner});
-      expect(sponsorTuple.eth).to.be.eq('0x0000000000000000000000000000000000000000');
+      sponsorStruct = await collectionEvm.methods.collectionSponsor().call({from: owner});
+      expect(sponsorStruct.eth).to.be.eq('0x0000000000000000000000000000000000000000');
     }));
 
   [
@@ -144,7 +144,7 @@
       expect(nextTokenId).to.be.equal('1');
 
       // Set collection permissions:
-      const oldPermissions = (await collectionSub.getData())!.raw.permissions; // (await getDetailedCollectionInfo(api, collectionId))!.permissions.toHuman();
+      const oldPermissions = (await collectionSub.getData())!.raw.permissions;
       expect(oldPermissions.mintMode).to.be.false;
       expect(oldPermissions.access).to.be.equal('Normal');
 
@@ -152,12 +152,13 @@
       await collectionEvm.methods.addToCollectionAllowListCross(userCross).send({from: owner});
       await collectionEvm.methods.setCollectionMintMode(true).send({from: owner});
 
-      const newPermissions = (await collectionSub.getData())!.raw.permissions; // (await getDetailedCollectionInfo(api, collectionId))!.permissions.toHuman();
+      const newPermissions = (await collectionSub.getData())!.raw.permissions;
       expect(newPermissions.mintMode).to.be.true;
       expect(newPermissions.access).to.be.equal('AllowList');
 
       const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
       const sponsorBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsorEth));
+      const userBalanceBefore =  await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
 
       // User can mint token without balance:
       {
@@ -181,7 +182,7 @@
 
         expect(await collectionEvm.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI');
         expect(ownerBalanceBefore).to.be.eq(ownerBalanceAfter);
-        expect(userBalanceAfter).to.be.eq(0n);
+        expect(userBalanceAfter).to.be.eq(userBalanceBefore);
         expect(sponsorBalanceBefore > sponsorBalanceAfter).to.be.true;
       }
     }));
@@ -317,3 +318,531 @@
     expect(collectionSponsor).to.deep.eq({Unconfirmed: sponsorSub.address});
   });
 });
+
+describe('evm RFT collection sponsoring', () => {
+  let donor: IKeyringPair;
+  let alice: IKeyringPair;
+  let nominal: bigint;
+
+  before(async function() {
+    await usingPlaygrounds(async (helper, privateKey) => {
+      requirePalletsOrSkip(this, helper, [Pallets.ReFungible]);
+      donor = await privateKey({filename: __filename});
+      [alice] = await helper.arrange.createAccounts([100n], donor);
+      nominal = helper.balance.getOneTokenNominal();
+    });
+  });
+
+  [
+    'mintCross',
+    'mintWithTokenURI',
+  ].map(testCase =>
+    itEth(`[${testCase}] sponsors mint transactions`, async ({helper}) => {
+      const collection = await helper.rft.mintCollection(alice, {tokenPrefix: 'spnr', permissions: {mintMode: true}, tokenPropertyPermissions: [
+        {key: 'URI', permission: {tokenOwner: true, mutable: true, collectionAdmin: true}},
+      ]});
+
+      const owner = await helper.eth.createAccountWithBalance(donor);
+      await collection.setSponsor(alice, alice.address);
+      await collection.confirmSponsorship(alice);
+
+      const minter = helper.eth.createAccount();
+      const minterCross = helper.ethCrossAccount.fromAddress(minter);
+      expect(await helper.balance.getEthereum(minter)).to.equal(0n);
+
+      const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
+      const contract = await helper.ethNativeContract.collection(collectionAddress, 'rft', minter, true);
+
+      await collection.addToAllowList(alice, {Ethereum: minter});
+      await collection.addAdmin(alice, {Ethereum: owner});
+      const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
+      await collectionHelpers.methods.makeCollectionERC721MetadataCompatible(collectionAddress, 'base/')
+        .send();
+
+      let mintingResult;
+      let tokenId;
+      switch (testCase) {
+        case 'mintCross':
+          mintingResult = await contract.methods.mintCross(minterCross, []).send();
+          break;
+        case 'mintWithTokenURI':
+          mintingResult = await contract.methods.mintWithTokenURI(minter, 'Test URI').send();
+          tokenId = mintingResult.events.Transfer.returnValues.tokenId;
+          expect(await contract.methods.tokenURI(tokenId).call()).to.be.equal('Test URI');
+          break;
+      }
+
+      const events = helper.eth.normalizeEvents(mintingResult.events);
+      expect(events).to.deep.include({
+        address: collectionAddress,
+        event: 'Transfer',
+        args: {
+          from: '0x0000000000000000000000000000000000000000',
+          to: minter,
+          tokenId: '1',
+        },
+      });
+    }));
+
+  [
+    'setCollectionSponsorCross',
+    'setCollectionSponsor', // Soft-deprecated
+  ].map(testCase =>
+    itEth(`[${testCase}] can remove collection sponsor`, async ({helper}) => {
+      const owner = await helper.eth.createAccountWithBalance(donor);
+      const collectionHelpers = await helper.ethNativeContract.collectionHelpers(owner);
+
+      let result = await collectionHelpers.methods.createRFTCollection('Sponsor collection', '1', '1').send({value: Number(2n * nominal)});
+      const collectionIdAddress = helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);
+      const sponsor = await helper.eth.createAccountWithBalance(donor);
+      const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
+      const collectionEvm = await helper.ethNativeContract.collection(collectionIdAddress, 'rft', owner, testCase === 'setCollectionSponsor');
+
+      expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.false;
+      result = await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsor : sponsorCross).send({from: owner});
+      expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.true;
+
+      await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsor});
+      expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.false;
+
+      await collectionEvm.methods.removeCollectionSponsor().send({from: owner});
+
+      const sponsorStruct = await collectionEvm.methods.collectionSponsor().call({from: owner});
+      expect(sponsorStruct.eth).to.be.eq('0x0000000000000000000000000000000000000000');
+    }));
+
+  [
+    'setCollectionSponsorCross',
+    'setCollectionSponsor', // Soft-deprecated
+  ].map(testCase =>
+    itEth(`[${testCase}] Can sponsor from evm address via access list`, async ({helper}) => {
+      const owner = await helper.eth.createAccountWithBalance(donor);
+      const sponsorEth = await helper.eth.createAccountWithBalance(donor);
+      const sponsorCrossEth = helper.ethCrossAccount.fromAddress(sponsorEth);
+
+      const {collectionId, collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner, 'Sponsor collection', '1', '1', '');
+
+      const collectionSub = helper.rft.getCollectionObject(collectionId);
+      const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner, testCase === 'setCollectionSponsor');
+
+      // Set collection sponsor:
+      await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsorEth : sponsorCrossEth).send({from: owner});
+      let sponsorship = (await collectionSub.getData())!.raw.sponsorship;
+      expect(sponsorship.Unconfirmed).to.be.eq(helper.address.ethToSubstrate(sponsorEth, true));
+      // Account cannot confirm sponsorship if it is not set as a sponsor
+      await expect(collectionEvm.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
+
+      // Sponsor can confirm sponsorship:
+      await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsorEth});
+      sponsorship = (await collectionSub.getData())!.raw.sponsorship;
+      expect(sponsorship.Confirmed).to.be.eq(helper.address.ethToSubstrate(sponsorEth, true));
+
+      // Create user with no balance:
+      const user = helper.eth.createAccount();
+      const userCross = helper.ethCrossAccount.fromAddress(user);
+      const nextTokenId = await collectionEvm.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+
+      // Set collection permissions:
+      const oldPermissions = (await collectionSub.getData())!.raw.permissions;
+      expect(oldPermissions.mintMode).to.be.false;
+      expect(oldPermissions.access).to.be.equal('Normal');
+
+      await collectionEvm.methods.setCollectionAccess(1 /*'AllowList'*/).send({from: owner});
+      await collectionEvm.methods.addToCollectionAllowListCross(userCross).send({from: owner});
+      await collectionEvm.methods.setCollectionMintMode(true).send({from: owner});
+
+      const newPermissions = (await collectionSub.getData())!.raw.permissions;
+      expect(newPermissions.mintMode).to.be.true;
+      expect(newPermissions.access).to.be.equal('AllowList');
+
+      const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      const sponsorBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsorEth));
+      const userBalanceBefore =  await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+
+      // User can mint token without balance:
+      {
+        const result = await collectionEvm.methods.mintWithTokenURI(user, 'Test URI').send({from: user});
+        const events = helper.eth.normalizeEvents(result.events);
+
+        expect(events).to.deep.include({
+          address: collectionAddress,
+          event: 'Transfer',
+          args: {
+            from: '0x0000000000000000000000000000000000000000',
+            to: user,
+            tokenId: '1',
+          },
+        });
+
+        const ownerBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+        const sponsorBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsorEth));
+        const userBalanceAfter =  await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+
+        expect(await collectionEvm.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI');
+        expect(ownerBalanceBefore).to.be.eq(ownerBalanceAfter);
+        expect(userBalanceAfter).to.be.eq(userBalanceBefore);
+        expect(sponsorBalanceBefore > sponsorBalanceAfter).to.be.true;
+      }
+    }));
+
+  [
+    'setCollectionSponsorCross',
+    'setCollectionSponsor', // Soft-deprecated
+  ].map(testCase =>
+    itEth(`[${testCase}] Check that collection admin EVM transaction spend money from sponsor eth address`, async ({helper}) => {
+      const owner = await helper.eth.createAccountWithBalance(donor);
+      const sponsor = await helper.eth.createAccountWithBalance(donor);
+      const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
+
+      const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner,'Sponsor collection', '1', '1', '');
+
+      const collectionSub = helper.rft.getCollectionObject(collectionId);
+      const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner, testCase === 'setCollectionSponsor');
+      // Set collection sponsor:
+      expect(await collectionEvm.methods.hasCollectionPendingSponsor().call()).to.be.false;
+      await collectionEvm.methods[testCase](testCase === 'setCollectionSponsor' ? sponsor : sponsorCross).send();
+      expect(await collectionEvm.methods.hasCollectionPendingSponsor().call()).to.be.true;
+      let collectionData = (await collectionSub.getData())!;
+      expect(collectionData.raw.sponsorship.Unconfirmed).to.be.eq(helper.address.ethToSubstrate(sponsor, true));
+      await expect(collectionEvm.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
+      expect(await collectionEvm.methods.hasCollectionPendingSponsor().call()).to.be.true;
+
+      await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsor});
+      collectionData = (await collectionSub.getData())!;
+      expect(collectionData.raw.sponsorship.Confirmed).to.be.eq(helper.address.ethToSubstrate(sponsor, true));
+      expect(await collectionEvm.methods.hasCollectionPendingSponsor().call()).to.be.false;
+      const sponsorStruct = await collectionEvm.methods.collectionSponsor().call({from: owner});
+      const sponsorSubAddress = helper.address.normalizeSubstrateToChainFormat(helper.address.ethToSubstrate(sponsor));
+      const actualSubAddress = helper.address.normalizeSubstrateToChainFormat(helper.address.restoreCrossAccountFromBigInt(BigInt(sponsorStruct.sub)));
+      expect(actualSubAddress).to.be.equal(sponsorSubAddress);
+
+      const user = helper.eth.createAccount();
+      const userCross = helper.ethCrossAccount.fromAddress(user);
+      await collectionEvm.methods.addCollectionAdminCross(userCross).send();
+
+      const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      const sponsorBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+
+      const mintingResult = await collectionEvm.methods.mintWithTokenURI(user, 'Test URI').send({from: user});
+      const tokenId = mintingResult.events.Transfer.returnValues.tokenId;
+
+      const events = helper.eth.normalizeEvents(mintingResult.events);
+      const address = helper.ethAddress.fromCollectionId(collectionId);
+
+      expect(events).to.deep.include({
+        address,
+        event: 'Transfer',
+        args: {
+          from: '0x0000000000000000000000000000000000000000',
+          to: user,
+          tokenId: '1',
+        },
+      });
+      expect(await collectionEvm.methods.tokenURI(tokenId).call({from: user})).to.be.equal('Test URI');
+
+      const ownerBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      expect(ownerBalanceAfter).to.be.eq(ownerBalanceBefore);
+      const sponsorBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+      expect(sponsorBalanceAfter < sponsorBalanceBefore).to.be.true;
+    }));
+
+  itEth('Check that collection admin EVM transaction spend money from sponsor sub address', async ({helper}) => {
+    const owner = await helper.eth.createAccountWithBalance(donor);
+    const sponsor = alice;
+    const sponsorCross = helper.ethCrossAccount.fromKeyringPair(sponsor);
+
+    const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner,'Sponsor collection', '1', '1', '');
+
+    const collectionSub = helper.rft.getCollectionObject(collectionId);
+    const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner, false);
+    // Set collection sponsor:
+    expect(await collectionEvm.methods.hasCollectionPendingSponsor().call()).to.be.false;
+    await collectionEvm.methods.setCollectionSponsorCross(sponsorCross).send();
+    expect(await collectionEvm.methods.hasCollectionPendingSponsor().call()).to.be.true;
+    let collectionData = (await collectionSub.getData())!;
+    expect(collectionData.raw.sponsorship.Unconfirmed).to.be.eq(sponsor.address);
+    await expect(collectionEvm.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('ConfirmSponsorshipFail');
+
+    await collectionSub.confirmSponsorship(sponsor);
+    collectionData = (await collectionSub.getData())!;
+    expect(collectionData.raw.sponsorship.Confirmed).to.be.eq(sponsor.address);
+    expect(await collectionEvm.methods.hasCollectionPendingSponsor().call()).to.be.false;
+    const sponsorStruct = await collectionEvm.methods.collectionSponsor().call({from: owner});
+    expect(BigInt(sponsorStruct.sub)).to.be.equal(BigInt('0x' + Buffer.from(sponsor.addressRaw).toString('hex')));
+
+    const user = helper.eth.createAccount();
+    const userCross = helper.ethCrossAccount.fromAddress(user);
+    await collectionEvm.methods.addCollectionAdminCross(userCross).send();
+
+    const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+    const sponsorBalanceBefore = await helper.balance.getSubstrate(sponsor.address);
+
+    const mintingResult = await collectionEvm.methods.mintWithTokenURI(user, 'Test URI').send({from: user});
+    const tokenId = mintingResult.events.Transfer.returnValues.tokenId;
+
+    const events = helper.eth.normalizeEvents(mintingResult.events);
+
+    expect(events).to.deep.include({
+      address: collectionAddress,
+      event: 'Transfer',
+      args: {
+        from: '0x0000000000000000000000000000000000000000',
+        to: user,
+        tokenId: '1',
+      },
+    });
+    expect(await collectionEvm.methods.tokenURI(tokenId).call({from: user})).to.be.equal('Test URI');
+
+    const ownerBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+    expect(ownerBalanceAfter).to.be.eq(ownerBalanceBefore);
+    const sponsorBalanceAfter = await helper.balance.getSubstrate(sponsor.address);
+    expect(sponsorBalanceAfter < sponsorBalanceBefore).to.be.true;
+  });
+
+  itEth('Sponsoring collection from substrate address via access list', async ({helper}) => {
+    const owner = await helper.eth.createAccountWithBalance(donor);
+    const user = helper.eth.createAccount();
+    const userCross =  helper.ethCrossAccount.fromAddress(user);
+    const sponsor = alice;
+    const sponsorCross = helper.ethCrossAccount.fromKeyringPair(sponsor);
+
+    const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner,'Sponsor collection', '1', '1', '');
+    const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner, false);
+
+    await collectionEvm.methods.setCollectionSponsorCross(sponsorCross).send({from: owner});
+
+    const collectionSub = helper.rft.getCollectionObject(collectionId);
+    await collectionSub.confirmSponsorship(sponsor);
+
+    const nextTokenId = await collectionEvm.methods.nextTokenId().call();
+    expect(nextTokenId).to.be.equal('1');
+
+    await collectionEvm.methods.setCollectionAccess(1 /*'AllowList'*/).send({from: owner});
+
+    await collectionEvm.methods.addToCollectionAllowListCross(userCross).send({from: owner});
+    await collectionEvm.methods.setCollectionMintMode(true).send({from: owner});
+
+    const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+    const sponsorBalanceBefore = await helper.balance.getSubstrate(sponsor.address);
+    const userBalanceBefore =  await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+
+    {
+      const nextTokenId = await collectionEvm.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+      const mintingResult = await collectionEvm.methods.mintWithTokenURI(
+        user,
+        'Test URI',
+      ).send({from: user});
+
+      const events = helper.eth.normalizeEvents(mintingResult.events);
+
+
+      expect(events).to.deep.include({
+        address: collectionAddress,
+        event: 'Transfer',
+        args: {
+          from: '0x0000000000000000000000000000000000000000',
+          to: user,
+          tokenId: nextTokenId,
+        },
+      });
+
+      const ownerBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      const sponsorBalanceAfter = await helper.balance.getSubstrate(sponsor.address);
+      const userBalanceAfter =  await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+
+      expect(await collectionEvm.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI');
+      expect(ownerBalanceBefore).to.be.eq(ownerBalanceAfter);
+      expect(userBalanceAfter).to.be.eq(userBalanceBefore);
+      expect(sponsorBalanceBefore > sponsorBalanceAfter).to.be.true;
+    }
+  });
+
+  itEth('Can reassign collection sponsor', async ({helper}) => {
+    const owner = await helper.eth.createAccountWithBalance(donor);
+    const sponsorEth = await helper.eth.createAccountWithBalance(donor);
+    const sponsorCrossEth = helper.ethCrossAccount.fromAddress(sponsorEth);
+    const [sponsorSub] = await helper.arrange.createAccounts([100n], donor);
+    const sponsorCrossSub = helper.ethCrossAccount.fromKeyringPair(sponsorSub);
+
+    const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner,'Sponsor collection', '1', '1', '');
+    const collectionSub = helper.rft.getCollectionObject(collectionId);
+    const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
+
+    // Set and confirm sponsor:
+    await collectionEvm.methods.setCollectionSponsorCross(sponsorCrossEth).send({from: owner});
+    await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsorEth});
+
+    // Can reassign sponsor:
+    await collectionEvm.methods.setCollectionSponsorCross(sponsorCrossSub).send({from: owner});
+    const collectionSponsor = (await collectionSub.getData())?.raw.sponsorship;
+    expect(collectionSponsor).to.deep.eq({Unconfirmed: sponsorSub.address});
+  });
+
+  [
+    'transfer',
+    'transferCross',
+    'transferFrom',
+    'transferFromCross',
+  ].map(testCase =>
+    itEth(`[${testCase}] Check that transfer via EVM spend money from sponsor address`, async ({helper}) => {
+      const owner = await helper.eth.createAccountWithBalance(donor);
+
+      const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner,'Sponsor collection', '1', '1', '');
+      const sponsor = await helper.eth.createAccountWithBalance(donor);
+      const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
+      const receiver = await helper.eth.createAccountWithBalance(donor);
+      const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
+
+      await collectionEvm.methods.setCollectionSponsorCross(sponsorCross).send();
+      await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsor});
+
+      const user = await helper.eth.createAccountWithBalance(donor);
+      const userCross = helper.ethCrossAccount.fromAddress(user);
+      await collectionEvm.methods.addCollectionAdminCross(userCross).send();
+
+      const result = await collectionEvm.methods.mintWithTokenURI(user, 'Test URI').send({from: user});
+      const tokenId = result.events.Transfer.returnValues.tokenId;
+
+      const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      const sponsorBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+      const userBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+
+      switch (testCase) {
+        case 'transfer':
+          await collectionEvm.methods.transfer(receiver, tokenId).send({from: user});
+          break;
+        case 'transferCross':
+          await collectionEvm.methods.transferCross(helper.ethCrossAccount.fromAddress(receiver), tokenId).send({from: user});
+          break;
+        case 'transferFrom':
+          await collectionEvm.methods.transferFrom(user, receiver, tokenId).send({from: user});
+          break;
+        case 'transferFromCross':
+          await collectionEvm.methods.transferFromCross(helper.ethCrossAccount.fromAddress(user), helper.ethCrossAccount.fromAddress(receiver), tokenId).send({from: user});
+          break;
+      }
+
+      const ownerBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      expect(ownerBalanceAfter).to.be.eq(ownerBalanceBefore);
+      const sponsorBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+      expect(sponsorBalanceAfter < sponsorBalanceBefore).to.be.true;
+      const userBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+      expect(userBalanceAfter).to.be.eq(userBalanceBefore);
+    }));
+});
+
+describe('evm RFT token sponsoring', () => {
+  let donor: IKeyringPair;
+
+  before(async function() {
+    await usingPlaygrounds(async (helper, privateKey) => {
+      requirePalletsOrSkip(this, helper, [Pallets.ReFungible]);
+      donor = await privateKey({filename: __filename});
+    });
+  });
+
+  [
+    'transfer',
+    'transferCross',
+    'transferFrom',
+    'transferFromCross',
+  ].map(testCase =>
+    itEth(`[${testCase}] Check that token piece transfer via EVM spend money from sponsor address`, async ({helper}) => {
+      const owner = await helper.eth.createAccountWithBalance(donor);
+
+      const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner,'Sponsor collection', '1', '1', '');
+      const sponsor = await helper.eth.createAccountWithBalance(donor);
+      const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
+      const receiver = await helper.eth.createAccountWithBalance(donor);
+      const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
+
+      await collectionEvm.methods.setCollectionSponsorCross(sponsorCross).send();
+      await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsor});
+
+      const user = await helper.eth.createAccountWithBalance(donor);
+      const userCross = helper.ethCrossAccount.fromAddress(user);
+      await collectionEvm.methods.addCollectionAdminCross(userCross).send();
+
+      const result = await collectionEvm.methods.mintWithTokenURI(user, 'Test URI').send({from: user});
+      const tokenId = result.events.Transfer.returnValues.tokenId;
+
+      const tokenContract = await helper.ethNativeContract.rftTokenById(collectionId, tokenId, user);
+      await tokenContract.methods.repartition(2).send();
+
+      const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      const sponsorBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+      const userBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+
+      switch (testCase) {
+        case 'transfer':
+          await tokenContract.methods.transfer(receiver, 1).send();
+          break;
+        case 'transferCross':
+          await tokenContract.methods.transferCross(helper.ethCrossAccount.fromAddress(receiver), 1).send();
+          break;
+        case 'transferFrom':
+          await tokenContract.methods.transferFrom(user, receiver, 1).send();
+          break;
+        case 'transferFromCross':
+          await tokenContract.methods.transferFromCross(helper.ethCrossAccount.fromAddress(user), helper.ethCrossAccount.fromAddress(receiver), 1).send();
+          break;
+      }
+
+      const ownerBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      expect(ownerBalanceAfter).to.be.eq(ownerBalanceBefore);
+      const sponsorBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+      expect(sponsorBalanceAfter < sponsorBalanceBefore).to.be.true;
+      const userBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+      expect(userBalanceAfter).to.be.eq(userBalanceBefore);
+    }));
+
+  [
+    'approve',
+    'approveCross',
+  ].map(testCase =>
+    itEth(`[${testCase}] Check that approve via EVM spend money from sponsor address`, async ({helper}) => {
+      const owner = await helper.eth.createAccountWithBalance(donor);
+
+      const {collectionAddress, collectionId} = await helper.eth.createERC721MetadataCompatibleRFTCollection(owner,'Sponsor collection', '1', '1', '');
+      const sponsor = await helper.eth.createAccountWithBalance(donor);
+      const sponsorCross = helper.ethCrossAccount.fromAddress(sponsor);
+      const receiver = await helper.eth.createAccountWithBalance(donor);
+      const collectionEvm = await helper.ethNativeContract.collection(collectionAddress, 'rft', owner);
+
+      await collectionEvm.methods.setCollectionSponsorCross(sponsorCross).send();
+      await collectionEvm.methods.confirmCollectionSponsorship().send({from: sponsor});
+
+      const user = await helper.eth.createAccountWithBalance(donor);
+      const userCross = helper.ethCrossAccount.fromAddress(user);
+      await collectionEvm.methods.addCollectionAdminCross(userCross).send();
+
+      const result = await collectionEvm.methods.mintWithTokenURI(user, 'Test URI').send({from: user});
+      const tokenId = result.events.Transfer.returnValues.tokenId;
+
+      const tokenContract = await helper.ethNativeContract.rftTokenById(collectionId, tokenId, user);
+      await tokenContract.methods.repartition(2).send();
+
+      const ownerBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      const sponsorBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+      const userBalanceBefore = await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+
+      switch (testCase) {
+        case 'approve':
+          await tokenContract.methods.approve(receiver, 1).send();
+          break;
+        case 'approveCross':
+          await tokenContract.methods.approveCross(helper.ethCrossAccount.fromAddress(receiver), 1).send();
+          break;
+      }
+
+      const ownerBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(owner));
+      expect(ownerBalanceAfter).to.be.eq(ownerBalanceBefore);
+      const sponsorBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(sponsor));
+      expect(sponsorBalanceAfter < sponsorBalanceBefore).to.be.true;
+      const userBalanceAfter = await helper.balance.getSubstrate(helper.address.ethToSubstrate(user));
+      expect(userBalanceAfter).to.be.eq(userBalanceBefore);
+    }));
+});
+
modifiedtests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-errors.ts
+++ b/tests/src/interfaces/augment-api-errors.ts
@@ -304,6 +304,10 @@
        **/
       Reentrancy: AugmentedError<ApiType>;
       /**
+       * EIP-3607,
+       **/
+      TransactionMustComeFromEOA: AugmentedError<ApiType>;
+      /**
        * Undefined error.
        **/
       Undefined: AugmentedError<ApiType>;
modifiedtests/src/interfaces/augment-api-query.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-query.ts
+++ b/tests/src/interfaces/augment-api-query.ts
@@ -9,7 +9,7 @@
 import type { BTreeMap, Bytes, Option, U256, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
 import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensReserveData, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, XcmV1MultiLocation } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensReserveData, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReserveData, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, XcmV1MultiLocation } from '@polkadot/types/lookup';
 import type { Observable } from '@polkadot/types/types';
 
 export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;
@@ -88,6 +88,10 @@
        **/
       account: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<PalletBalancesAccountData>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
       /**
+       * The total units of outstanding deactivated balance in the system.
+       **/
+      inactiveIssuance: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;
+      /**
        * Any liquidity locks on some account balances.
        * NOTE: Should only be accessed when setting, changing and freeing a lock.
        **/
@@ -96,12 +100,6 @@
        * Named reserves on some account balances.
        **/
       reserves: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesReserveData>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
-      /**
-       * Storage version of the pallet.
-       * 
-       * This is set to v2.0.0 for new networks.
-       **/
-      storageVersion: AugmentedQuery<ApiType, () => Observable<PalletBalancesReleases>, []> & QueryableStorageEntry<ApiType, []>;
       /**
        * The total units issued in the system.
        **/
@@ -853,6 +851,10 @@
        **/
       approvals: AugmentedQuery<ApiType, () => Observable<Vec<u32>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
+       * The amount which has been reported as inactive to Currency.
+       **/
+      inactive: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;
+      /**
        * Number of proposals that have been made.
        **/
       proposalCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
modifiedtests/src/interfaces/augment-api-tx.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-tx.ts
+++ b/tests/src/interfaces/augment-api-tx.ts
@@ -8,7 +8,7 @@
 import type { ApiTypes, AugmentedSubmittable, SubmittableExtrinsic, SubmittableExtrinsicFunction } from '@polkadot/api-base/types';
 import type { Bytes, Compact, Option, U256, 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, Perbill, Permill } from '@polkadot/types/interfaces/runtime';
+import type { AccountId32, Call, H160, H256, MultiAddress, Permill } from '@polkadot/types/interfaces/runtime';
 import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumLog, EthereumTransactionTransactionV2, OrmlVestingVestingSchedule, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsPartEquippableList, RmrkTraitsPartPartType, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, SpWeightsWeightV2Weight, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
 
 export type __AugmentedSubmittable = AugmentedSubmittable<() => unknown>;
@@ -905,10 +905,6 @@
       [key: string]: SubmittableExtrinsicFunction<ApiType>;
     };
     system: {
-      /**
-       * A dispatch that will fill the block weight up to the given ratio.
-       **/
-      fillBlock: AugmentedSubmittable<(ratio: Perbill | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Perbill]>;
       /**
        * Kill all storage items with a key that starts with the given prefix.
        * 
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, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, 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, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, 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, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, 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, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, 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, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default';
 import type { Data, StorageKey } from '@polkadot/types';
 import type { BitVec, Bool, Bytes, F32, F64, I128, I16, I256, I32, I64, I8, Json, Null, OptionBool, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, f32, f64, i128, i16, i256, i32, i64, i8, 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';
@@ -823,7 +823,6 @@
     PalletBalancesError: PalletBalancesError;
     PalletBalancesEvent: PalletBalancesEvent;
     PalletBalancesReasons: PalletBalancesReasons;
-    PalletBalancesReleases: PalletBalancesReleases;
     PalletBalancesReserveData: PalletBalancesReserveData;
     PalletCallMetadataLatest: PalletCallMetadataLatest;
     PalletCallMetadataV14: PalletCallMetadataV14;
modifiedtests/src/interfaces/default/types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/default/types.ts
+++ b/tests/src/interfaces/default/types.ts
@@ -557,10 +557,6 @@
 
 /** @name FrameSystemCall */
 export interface FrameSystemCall extends Enum {
-  readonly isFillBlock: boolean;
-  readonly asFillBlock: {
-    readonly ratio: Perbill;
-  } & Struct;
   readonly isRemark: boolean;
   readonly asRemark: {
     readonly remark: Bytes;
@@ -594,7 +590,7 @@
   readonly asRemarkWithEvent: {
     readonly remark: Bytes;
   } & Struct;
-  readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';
+  readonly type: 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';
 }
 
 /** @name FrameSystemError */
@@ -1186,13 +1182,6 @@
   readonly isMisc: boolean;
   readonly isAll: boolean;
   readonly type: 'Fee' | 'Misc' | 'All';
-}
-
-/** @name PalletBalancesReleases */
-export interface PalletBalancesReleases extends Enum {
-  readonly isV100: boolean;
-  readonly isV200: boolean;
-  readonly type: 'V100' | 'V200';
 }
 
 /** @name PalletBalancesReserveData */
@@ -1457,7 +1446,8 @@
   readonly isGasLimitTooHigh: boolean;
   readonly isUndefined: boolean;
   readonly isReentrancy: boolean;
-  readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy';
+  readonly isTransactionMustComeFromEOA: boolean;
+  readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy' | 'TransactionMustComeFromEOA';
 }
 
 /** @name PalletEvmEvent */
modifiedtests/src/interfaces/lookup.tsdiffbeforeafterboth
1329 **/1329 **/
1330 FrameSystemCall: {1330 FrameSystemCall: {
1331 _enum: {1331 _enum: {
1332 fill_block: {
1333 ratio: 'Perbill',
1334 },
1335 remark: {1332 remark: {
1336 remark: 'Bytes',1333 remark: 'Bytes',
1337 },1334 },
1362 }1359 }
1363 }1360 }
1364 },1361 },
1365 /**1362 /**
1366 * Lookup130: frame_system::limits::BlockWeights1363 * Lookup129: frame_system::limits::BlockWeights
1367 **/1364 **/
1368 FrameSystemLimitsBlockWeights: {1365 FrameSystemLimitsBlockWeights: {
1369 baseBlock: 'SpWeightsWeightV2Weight',1366 baseBlock: 'SpWeightsWeightV2Weight',
1370 maxBlock: 'SpWeightsWeightV2Weight',1367 maxBlock: 'SpWeightsWeightV2Weight',
1371 perClass: 'FrameSupportDispatchPerDispatchClassWeightsPerClass'1368 perClass: 'FrameSupportDispatchPerDispatchClassWeightsPerClass'
1372 },1369 },
1373 /**1370 /**
1374 * Lookup131: frame_support::dispatch::PerDispatchClass<frame_system::limits::WeightsPerClass>1371 * Lookup130: frame_support::dispatch::PerDispatchClass<frame_system::limits::WeightsPerClass>
1375 **/1372 **/
1376 FrameSupportDispatchPerDispatchClassWeightsPerClass: {1373 FrameSupportDispatchPerDispatchClassWeightsPerClass: {
1377 normal: 'FrameSystemLimitsWeightsPerClass',1374 normal: 'FrameSystemLimitsWeightsPerClass',
1378 operational: 'FrameSystemLimitsWeightsPerClass',1375 operational: 'FrameSystemLimitsWeightsPerClass',
1379 mandatory: 'FrameSystemLimitsWeightsPerClass'1376 mandatory: 'FrameSystemLimitsWeightsPerClass'
1380 },1377 },
1381 /**1378 /**
1382 * Lookup132: frame_system::limits::WeightsPerClass1379 * Lookup131: frame_system::limits::WeightsPerClass
1383 **/1380 **/
1384 FrameSystemLimitsWeightsPerClass: {1381 FrameSystemLimitsWeightsPerClass: {
1385 baseExtrinsic: 'SpWeightsWeightV2Weight',1382 baseExtrinsic: 'SpWeightsWeightV2Weight',
1386 maxExtrinsic: 'Option<SpWeightsWeightV2Weight>',1383 maxExtrinsic: 'Option<SpWeightsWeightV2Weight>',
1387 maxTotal: 'Option<SpWeightsWeightV2Weight>',1384 maxTotal: 'Option<SpWeightsWeightV2Weight>',
1388 reserved: 'Option<SpWeightsWeightV2Weight>'1385 reserved: 'Option<SpWeightsWeightV2Weight>'
1389 },1386 },
1390 /**1387 /**
1391 * Lookup134: frame_system::limits::BlockLength1388 * Lookup133: frame_system::limits::BlockLength
1392 **/1389 **/
1393 FrameSystemLimitsBlockLength: {1390 FrameSystemLimitsBlockLength: {
1394 max: 'FrameSupportDispatchPerDispatchClassU32'1391 max: 'FrameSupportDispatchPerDispatchClassU32'
1395 },1392 },
1396 /**1393 /**
1397 * Lookup135: frame_support::dispatch::PerDispatchClass<T>1394 * Lookup134: frame_support::dispatch::PerDispatchClass<T>
1398 **/1395 **/
1399 FrameSupportDispatchPerDispatchClassU32: {1396 FrameSupportDispatchPerDispatchClassU32: {
1400 normal: 'u32',1397 normal: 'u32',
1401 operational: 'u32',1398 operational: 'u32',
1402 mandatory: 'u32'1399 mandatory: 'u32'
1403 },1400 },
1404 /**1401 /**
1405 * Lookup136: sp_weights::RuntimeDbWeight1402 * Lookup135: sp_weights::RuntimeDbWeight
1406 **/1403 **/
1407 SpWeightsRuntimeDbWeight: {1404 SpWeightsRuntimeDbWeight: {
1408 read: 'u64',1405 read: 'u64',
1409 write: 'u64'1406 write: 'u64'
1410 },1407 },
1411 /**1408 /**
1412 * Lookup137: sp_version::RuntimeVersion1409 * Lookup136: sp_version::RuntimeVersion
1413 **/1410 **/
1414 SpVersionRuntimeVersion: {1411 SpVersionRuntimeVersion: {
1415 specName: 'Text',1412 specName: 'Text',
1416 implName: 'Text',1413 implName: 'Text',
1421 transactionVersion: 'u32',1418 transactionVersion: 'u32',
1422 stateVersion: 'u8'1419 stateVersion: 'u8'
1423 },1420 },
1424 /**1421 /**
1425 * Lookup142: frame_system::pallet::Error<T>1422 * Lookup141: frame_system::pallet::Error<T>
1426 **/1423 **/
1427 FrameSystemError: {1424 FrameSystemError: {
1428 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']1425 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']
1429 },1426 },
1430 /**1427 /**
1431 * Lookup143: polkadot_primitives::v2::PersistedValidationData<primitive_types::H256, N>1428 * Lookup142: polkadot_primitives::v2::PersistedValidationData<primitive_types::H256, N>
1432 **/1429 **/
1433 PolkadotPrimitivesV2PersistedValidationData: {1430 PolkadotPrimitivesV2PersistedValidationData: {
1434 parentHead: 'Bytes',1431 parentHead: 'Bytes',
1435 relayParentNumber: 'u32',1432 relayParentNumber: 'u32',
1436 relayParentStorageRoot: 'H256',1433 relayParentStorageRoot: 'H256',
1437 maxPovSize: 'u32'1434 maxPovSize: 'u32'
1438 },1435 },
1439 /**1436 /**
1440 * Lookup146: polkadot_primitives::v2::UpgradeRestriction1437 * Lookup145: polkadot_primitives::v2::UpgradeRestriction
1441 **/1438 **/
1442 PolkadotPrimitivesV2UpgradeRestriction: {1439 PolkadotPrimitivesV2UpgradeRestriction: {
1443 _enum: ['Present']1440 _enum: ['Present']
1444 },1441 },
1445 /**1442 /**
1446 * Lookup147: sp_trie::storage_proof::StorageProof1443 * Lookup146: sp_trie::storage_proof::StorageProof
1447 **/1444 **/
1448 SpTrieStorageProof: {1445 SpTrieStorageProof: {
1449 trieNodes: 'BTreeSet<Bytes>'1446 trieNodes: 'BTreeSet<Bytes>'
1450 },1447 },
1451 /**1448 /**
1452 * Lookup149: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot1449 * Lookup148: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot
1453 **/1450 **/
1454 CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: {1451 CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: {
1455 dmqMqcHead: 'H256',1452 dmqMqcHead: 'H256',
1456 relayDispatchQueueSize: '(u32,u32)',1453 relayDispatchQueueSize: '(u32,u32)',
1457 ingressChannels: 'Vec<(u32,PolkadotPrimitivesV2AbridgedHrmpChannel)>',1454 ingressChannels: 'Vec<(u32,PolkadotPrimitivesV2AbridgedHrmpChannel)>',
1458 egressChannels: 'Vec<(u32,PolkadotPrimitivesV2AbridgedHrmpChannel)>'1455 egressChannels: 'Vec<(u32,PolkadotPrimitivesV2AbridgedHrmpChannel)>'
1459 },1456 },
1460 /**1457 /**
1461 * Lookup152: polkadot_primitives::v2::AbridgedHrmpChannel1458 * Lookup151: polkadot_primitives::v2::AbridgedHrmpChannel
1462 **/1459 **/
1463 PolkadotPrimitivesV2AbridgedHrmpChannel: {1460 PolkadotPrimitivesV2AbridgedHrmpChannel: {
1464 maxCapacity: 'u32',1461 maxCapacity: 'u32',
1465 maxTotalSize: 'u32',1462 maxTotalSize: 'u32',
1468 totalSize: 'u32',1465 totalSize: 'u32',
1469 mqcHead: 'Option<H256>'1466 mqcHead: 'Option<H256>'
1470 },1467 },
1471 /**1468 /**
1472 * Lookup153: polkadot_primitives::v2::AbridgedHostConfiguration1469 * Lookup152: polkadot_primitives::v2::AbridgedHostConfiguration
1473 **/1470 **/
1474 PolkadotPrimitivesV2AbridgedHostConfiguration: {1471 PolkadotPrimitivesV2AbridgedHostConfiguration: {
1475 maxCodeSize: 'u32',1472 maxCodeSize: 'u32',
1476 maxHeadDataSize: 'u32',1473 maxHeadDataSize: 'u32',
1482 validationUpgradeCooldown: 'u32',1479 validationUpgradeCooldown: 'u32',
1483 validationUpgradeDelay: 'u32'1480 validationUpgradeDelay: 'u32'
1484 },1481 },
1485 /**1482 /**
1486 * Lookup159: polkadot_core_primitives::OutboundHrmpMessage<polkadot_parachain::primitives::Id>1483 * Lookup158: polkadot_core_primitives::OutboundHrmpMessage<polkadot_parachain::primitives::Id>
1487 **/1484 **/
1488 PolkadotCorePrimitivesOutboundHrmpMessage: {1485 PolkadotCorePrimitivesOutboundHrmpMessage: {
1489 recipient: 'u32',1486 recipient: 'u32',
1490 data: 'Bytes'1487 data: 'Bytes'
1491 },1488 },
1492 /**1489 /**
1493 * Lookup160: cumulus_pallet_parachain_system::pallet::Call<T>1490 * Lookup159: cumulus_pallet_parachain_system::pallet::Call<T>
1494 **/1491 **/
1495 CumulusPalletParachainSystemCall: {1492 CumulusPalletParachainSystemCall: {
1496 _enum: {1493 _enum: {
1497 set_validation_data: {1494 set_validation_data: {
1508 }1505 }
1509 }1506 }
1510 },1507 },
1511 /**1508 /**
1512 * Lookup161: cumulus_primitives_parachain_inherent::ParachainInherentData1509 * Lookup160: cumulus_primitives_parachain_inherent::ParachainInherentData
1513 **/1510 **/
1514 CumulusPrimitivesParachainInherentParachainInherentData: {1511 CumulusPrimitivesParachainInherentParachainInherentData: {
1515 validationData: 'PolkadotPrimitivesV2PersistedValidationData',1512 validationData: 'PolkadotPrimitivesV2PersistedValidationData',
1516 relayChainState: 'SpTrieStorageProof',1513 relayChainState: 'SpTrieStorageProof',
1517 downwardMessages: 'Vec<PolkadotCorePrimitivesInboundDownwardMessage>',1514 downwardMessages: 'Vec<PolkadotCorePrimitivesInboundDownwardMessage>',
1518 horizontalMessages: 'BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>'1515 horizontalMessages: 'BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>'
1519 },1516 },
1520 /**1517 /**
1521 * Lookup163: polkadot_core_primitives::InboundDownwardMessage<BlockNumber>1518 * Lookup162: polkadot_core_primitives::InboundDownwardMessage<BlockNumber>
1522 **/1519 **/
1523 PolkadotCorePrimitivesInboundDownwardMessage: {1520 PolkadotCorePrimitivesInboundDownwardMessage: {
1524 sentAt: 'u32',1521 sentAt: 'u32',
1525 msg: 'Bytes'1522 msg: 'Bytes'
1526 },1523 },
1527 /**1524 /**
1528 * Lookup166: polkadot_core_primitives::InboundHrmpMessage<BlockNumber>1525 * Lookup165: polkadot_core_primitives::InboundHrmpMessage<BlockNumber>
1529 **/1526 **/
1530 PolkadotCorePrimitivesInboundHrmpMessage: {1527 PolkadotCorePrimitivesInboundHrmpMessage: {
1531 sentAt: 'u32',1528 sentAt: 'u32',
1532 data: 'Bytes'1529 data: 'Bytes'
1533 },1530 },
1534 /**1531 /**
1535 * Lookup169: cumulus_pallet_parachain_system::pallet::Error<T>1532 * Lookup168: cumulus_pallet_parachain_system::pallet::Error<T>
1536 **/1533 **/
1537 CumulusPalletParachainSystemError: {1534 CumulusPalletParachainSystemError: {
1538 _enum: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled', 'NothingAuthorized', 'Unauthorized']1535 _enum: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled', 'NothingAuthorized', 'Unauthorized']
1539 },1536 },
1540 /**1537 /**
1541 * Lookup171: pallet_balances::BalanceLock<Balance>1538 * Lookup170: pallet_balances::BalanceLock<Balance>
1542 **/1539 **/
1543 PalletBalancesBalanceLock: {1540 PalletBalancesBalanceLock: {
1544 id: '[u8;8]',1541 id: '[u8;8]',
1545 amount: 'u128',1542 amount: 'u128',
1546 reasons: 'PalletBalancesReasons'1543 reasons: 'PalletBalancesReasons'
1547 },1544 },
1548 /**1545 /**
1549 * Lookup172: pallet_balances::Reasons1546 * Lookup171: pallet_balances::Reasons
1550 **/1547 **/
1551 PalletBalancesReasons: {1548 PalletBalancesReasons: {
1552 _enum: ['Fee', 'Misc', 'All']1549 _enum: ['Fee', 'Misc', 'All']
1553 },1550 },
1554 /**1551 /**
1555 * Lookup175: pallet_balances::ReserveData<ReserveIdentifier, Balance>1552 * Lookup174: pallet_balances::ReserveData<ReserveIdentifier, Balance>
1556 **/1553 **/
1557 PalletBalancesReserveData: {1554 PalletBalancesReserveData: {
1558 id: '[u8;16]',1555 id: '[u8;16]',
1559 amount: 'u128'1556 amount: 'u128'
1560 },1557 },
1561 /**
1562 * Lookup177: pallet_balances::Releases
1563 **/
1564 PalletBalancesReleases: {
1565 _enum: ['V1_0_0', 'V2_0_0']
1566 },
1567 /**1558 /**
1568 * Lookup178: pallet_balances::pallet::Call<T, I>1559 * Lookup176: pallet_balances::pallet::Call<T, I>
1569 **/1560 **/
1570 PalletBalancesCall: {1561 PalletBalancesCall: {
1571 _enum: {1562 _enum: {
1572 transfer: {1563 transfer: {
1597 }1588 }
1598 }1589 }
1599 },1590 },
1600 /**1591 /**
1601 * Lookup181: pallet_balances::pallet::Error<T, I>1592 * Lookup179: pallet_balances::pallet::Error<T, I>
1602 **/1593 **/
1603 PalletBalancesError: {1594 PalletBalancesError: {
1604 _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'KeepAlive', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves']1595 _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'KeepAlive', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves']
1605 },1596 },
1606 /**1597 /**
1607 * Lookup183: pallet_timestamp::pallet::Call<T>1598 * Lookup181: pallet_timestamp::pallet::Call<T>
1608 **/1599 **/
1609 PalletTimestampCall: {1600 PalletTimestampCall: {
1610 _enum: {1601 _enum: {
1611 set: {1602 set: {
1612 now: 'Compact<u64>'1603 now: 'Compact<u64>'
1613 }1604 }
1614 }1605 }
1615 },1606 },
1616 /**1607 /**
1617 * Lookup185: pallet_transaction_payment::Releases1608 * Lookup183: pallet_transaction_payment::Releases
1618 **/1609 **/
1619 PalletTransactionPaymentReleases: {1610 PalletTransactionPaymentReleases: {
1620 _enum: ['V1Ancient', 'V2']1611 _enum: ['V1Ancient', 'V2']
1621 },1612 },
1622 /**1613 /**
1623 * Lookup186: pallet_treasury::Proposal<sp_core::crypto::AccountId32, Balance>1614 * Lookup184: pallet_treasury::Proposal<sp_core::crypto::AccountId32, Balance>
1624 **/1615 **/
1625 PalletTreasuryProposal: {1616 PalletTreasuryProposal: {
1626 proposer: 'AccountId32',1617 proposer: 'AccountId32',
1627 value: 'u128',1618 value: 'u128',
1628 beneficiary: 'AccountId32',1619 beneficiary: 'AccountId32',
1629 bond: 'u128'1620 bond: 'u128'
1630 },1621 },
1631 /**1622 /**
1632 * Lookup189: pallet_treasury::pallet::Call<T, I>1623 * Lookup187: pallet_treasury::pallet::Call<T, I>
1633 **/1624 **/
1634 PalletTreasuryCall: {1625 PalletTreasuryCall: {
1635 _enum: {1626 _enum: {
1636 propose_spend: {1627 propose_spend: {
1652 }1643 }
1653 }1644 }
1654 },1645 },
1655 /**1646 /**
1656 * Lookup192: frame_support::PalletId1647 * Lookup190: frame_support::PalletId
1657 **/1648 **/
1658 FrameSupportPalletId: '[u8;8]',1649 FrameSupportPalletId: '[u8;8]',
1659 /**1650 /**
1660 * Lookup193: pallet_treasury::pallet::Error<T, I>1651 * Lookup191: pallet_treasury::pallet::Error<T, I>
1661 **/1652 **/
1662 PalletTreasuryError: {1653 PalletTreasuryError: {
1663 _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals', 'InsufficientPermission', 'ProposalNotApproved']1654 _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals', 'InsufficientPermission', 'ProposalNotApproved']
1664 },1655 },
1665 /**1656 /**
1666 * Lookup194: pallet_sudo::pallet::Call<T>1657 * Lookup192: pallet_sudo::pallet::Call<T>
1667 **/1658 **/
1668 PalletSudoCall: {1659 PalletSudoCall: {
1669 _enum: {1660 _enum: {
1670 sudo: {1661 sudo: {
1686 }1677 }
1687 }1678 }
1688 },1679 },
1689 /**1680 /**
1690 * Lookup196: orml_vesting::module::Call<T>1681 * Lookup194: orml_vesting::module::Call<T>
1691 **/1682 **/
1692 OrmlVestingModuleCall: {1683 OrmlVestingModuleCall: {
1693 _enum: {1684 _enum: {
1694 claim: 'Null',1685 claim: 'Null',
1705 }1696 }
1706 }1697 }
1707 },1698 },
1708 /**1699 /**
1709 * Lookup198: orml_xtokens::module::Call<T>1700 * Lookup196: orml_xtokens::module::Call<T>
1710 **/1701 **/
1711 OrmlXtokensModuleCall: {1702 OrmlXtokensModuleCall: {
1712 _enum: {1703 _enum: {
1713 transfer: {1704 transfer: {
1748 }1739 }
1749 }1740 }
1750 },1741 },
1751 /**1742 /**
1752 * Lookup199: xcm::VersionedMultiAsset1743 * Lookup197: xcm::VersionedMultiAsset
1753 **/1744 **/
1754 XcmVersionedMultiAsset: {1745 XcmVersionedMultiAsset: {
1755 _enum: {1746 _enum: {
1756 V0: 'XcmV0MultiAsset',1747 V0: 'XcmV0MultiAsset',
1757 V1: 'XcmV1MultiAsset'1748 V1: 'XcmV1MultiAsset'
1758 }1749 }
1759 },1750 },
1760 /**1751 /**
1761 * Lookup202: orml_tokens::module::Call<T>1752 * Lookup200: orml_tokens::module::Call<T>
1762 **/1753 **/
1763 OrmlTokensModuleCall: {1754 OrmlTokensModuleCall: {
1764 _enum: {1755 _enum: {
1765 transfer: {1756 transfer: {
1791 }1782 }
1792 }1783 }
1793 },1784 },
1794 /**1785 /**
1795 * Lookup203: cumulus_pallet_xcmp_queue::pallet::Call<T>1786 * Lookup201: cumulus_pallet_xcmp_queue::pallet::Call<T>
1796 **/1787 **/
1797 CumulusPalletXcmpQueueCall: {1788 CumulusPalletXcmpQueueCall: {
1798 _enum: {1789 _enum: {
1799 service_overweight: {1790 service_overweight: {
1840 }1831 }
1841 }1832 }
1842 },1833 },
1843 /**1834 /**
1844 * Lookup204: pallet_xcm::pallet::Call<T>1835 * Lookup202: pallet_xcm::pallet::Call<T>
1845 **/1836 **/
1846 PalletXcmCall: {1837 PalletXcmCall: {
1847 _enum: {1838 _enum: {
1848 send: {1839 send: {
1894 }1885 }
1895 }1886 }
1896 },1887 },
1897 /**1888 /**
1898 * Lookup205: xcm::VersionedXcm<RuntimeCall>1889 * Lookup203: xcm::VersionedXcm<RuntimeCall>
1899 **/1890 **/
1900 XcmVersionedXcm: {1891 XcmVersionedXcm: {
1901 _enum: {1892 _enum: {
1902 V0: 'XcmV0Xcm',1893 V0: 'XcmV0Xcm',
1903 V1: 'XcmV1Xcm',1894 V1: 'XcmV1Xcm',
1904 V2: 'XcmV2Xcm'1895 V2: 'XcmV2Xcm'
1905 }1896 }
1906 },1897 },
1907 /**1898 /**
1908 * Lookup206: xcm::v0::Xcm<RuntimeCall>1899 * Lookup204: xcm::v0::Xcm<RuntimeCall>
1909 **/1900 **/
1910 XcmV0Xcm: {1901 XcmV0Xcm: {
1911 _enum: {1902 _enum: {
1912 WithdrawAsset: {1903 WithdrawAsset: {
1958 }1949 }
1959 }1950 }
1960 },1951 },
1961 /**1952 /**
1962 * Lookup208: xcm::v0::order::Order<RuntimeCall>1953 * Lookup206: xcm::v0::order::Order<RuntimeCall>
1963 **/1954 **/
1964 XcmV0Order: {1955 XcmV0Order: {
1965 _enum: {1956 _enum: {
1966 Null: 'Null',1957 Null: 'Null',
2001 }1992 }
2002 }1993 }
2003 },1994 },
2004 /**1995 /**
2005 * Lookup210: xcm::v0::Response1996 * Lookup208: xcm::v0::Response
2006 **/1997 **/
2007 XcmV0Response: {1998 XcmV0Response: {
2008 _enum: {1999 _enum: {
2009 Assets: 'Vec<XcmV0MultiAsset>'2000 Assets: 'Vec<XcmV0MultiAsset>'
2010 }2001 }
2011 },2002 },
2012 /**2003 /**
2013 * Lookup211: xcm::v1::Xcm<RuntimeCall>2004 * Lookup209: xcm::v1::Xcm<RuntimeCall>
2014 **/2005 **/
2015 XcmV1Xcm: {2006 XcmV1Xcm: {
2016 _enum: {2007 _enum: {
2017 WithdrawAsset: {2008 WithdrawAsset: {
2068 UnsubscribeVersion: 'Null'2059 UnsubscribeVersion: 'Null'
2069 }2060 }
2070 },2061 },
2071 /**2062 /**
2072 * Lookup213: xcm::v1::order::Order<RuntimeCall>2063 * Lookup211: xcm::v1::order::Order<RuntimeCall>
2073 **/2064 **/
2074 XcmV1Order: {2065 XcmV1Order: {
2075 _enum: {2066 _enum: {
2076 Noop: 'Null',2067 Noop: 'Null',
2113 }2104 }
2114 }2105 }
2115 },2106 },
2116 /**2107 /**
2117 * Lookup215: xcm::v1::Response2108 * Lookup213: xcm::v1::Response
2118 **/2109 **/
2119 XcmV1Response: {2110 XcmV1Response: {
2120 _enum: {2111 _enum: {
2121 Assets: 'XcmV1MultiassetMultiAssets',2112 Assets: 'XcmV1MultiassetMultiAssets',
2122 Version: 'u32'2113 Version: 'u32'
2123 }2114 }
2124 },2115 },
2125 /**2116 /**
2126 * Lookup229: cumulus_pallet_xcm::pallet::Call<T>2117 * Lookup227: cumulus_pallet_xcm::pallet::Call<T>
2127 **/2118 **/
2128 CumulusPalletXcmCall: 'Null',2119 CumulusPalletXcmCall: 'Null',
2129 /**2120 /**
2130 * Lookup230: cumulus_pallet_dmp_queue::pallet::Call<T>2121 * Lookup228: cumulus_pallet_dmp_queue::pallet::Call<T>
2131 **/2122 **/
2132 CumulusPalletDmpQueueCall: {2123 CumulusPalletDmpQueueCall: {
2133 _enum: {2124 _enum: {
2134 service_overweight: {2125 service_overweight: {
2137 }2128 }
2138 }2129 }
2139 },2130 },
2140 /**2131 /**
2141 * Lookup231: pallet_inflation::pallet::Call<T>2132 * Lookup229: pallet_inflation::pallet::Call<T>
2142 **/2133 **/
2143 PalletInflationCall: {2134 PalletInflationCall: {
2144 _enum: {2135 _enum: {
2145 start_inflation: {2136 start_inflation: {
2146 inflationStartRelayBlock: 'u32'2137 inflationStartRelayBlock: 'u32'
2147 }2138 }
2148 }2139 }
2149 },2140 },
2150 /**2141 /**
2151 * Lookup232: pallet_unique::Call<T>2142 * Lookup230: pallet_unique::Call<T>
2152 **/2143 **/
2153 PalletUniqueCall: {2144 PalletUniqueCall: {
2154 _enum: {2145 _enum: {
2155 create_collection: {2146 create_collection: {
2291 }2282 }
2292 }2283 }
2293 },2284 },
2294 /**2285 /**
2295 * Lookup237: up_data_structs::CollectionMode2286 * Lookup235: up_data_structs::CollectionMode
2296 **/2287 **/
2297 UpDataStructsCollectionMode: {2288 UpDataStructsCollectionMode: {
2298 _enum: {2289 _enum: {
2299 NFT: 'Null',2290 NFT: 'Null',
2300 Fungible: 'u8',2291 Fungible: 'u8',
2301 ReFungible: 'Null'2292 ReFungible: 'Null'
2302 }2293 }
2303 },2294 },
2304 /**2295 /**
2305 * Lookup238: up_data_structs::CreateCollectionData<sp_core::crypto::AccountId32>2296 * Lookup236: up_data_structs::CreateCollectionData<sp_core::crypto::AccountId32>
2306 **/2297 **/
2307 UpDataStructsCreateCollectionData: {2298 UpDataStructsCreateCollectionData: {
2308 mode: 'UpDataStructsCollectionMode',2299 mode: 'UpDataStructsCollectionMode',
2309 access: 'Option<UpDataStructsAccessMode>',2300 access: 'Option<UpDataStructsAccessMode>',
2316 tokenPropertyPermissions: 'Vec<UpDataStructsPropertyKeyPermission>',2307 tokenPropertyPermissions: 'Vec<UpDataStructsPropertyKeyPermission>',
2317 properties: 'Vec<UpDataStructsProperty>'2308 properties: 'Vec<UpDataStructsProperty>'
2318 },2309 },
2319 /**2310 /**
2320 * Lookup240: up_data_structs::AccessMode2311 * Lookup238: up_data_structs::AccessMode
2321 **/2312 **/
2322 UpDataStructsAccessMode: {2313 UpDataStructsAccessMode: {
2323 _enum: ['Normal', 'AllowList']2314 _enum: ['Normal', 'AllowList']
2324 },2315 },
2325 /**2316 /**
2326 * Lookup242: up_data_structs::CollectionLimits2317 * Lookup240: up_data_structs::CollectionLimits
2327 **/2318 **/
2328 UpDataStructsCollectionLimits: {2319 UpDataStructsCollectionLimits: {
2329 accountTokenOwnershipLimit: 'Option<u32>',2320 accountTokenOwnershipLimit: 'Option<u32>',
2330 sponsoredDataSize: 'Option<u32>',2321 sponsoredDataSize: 'Option<u32>',
2336 ownerCanDestroy: 'Option<bool>',2327 ownerCanDestroy: 'Option<bool>',
2337 transfersEnabled: 'Option<bool>'2328 transfersEnabled: 'Option<bool>'
2338 },2329 },
2339 /**2330 /**
2340 * Lookup244: up_data_structs::SponsoringRateLimit2331 * Lookup242: up_data_structs::SponsoringRateLimit
2341 **/2332 **/
2342 UpDataStructsSponsoringRateLimit: {2333 UpDataStructsSponsoringRateLimit: {
2343 _enum: {2334 _enum: {
2344 SponsoringDisabled: 'Null',2335 SponsoringDisabled: 'Null',
2345 Blocks: 'u32'2336 Blocks: 'u32'
2346 }2337 }
2347 },2338 },
2348 /**2339 /**
2349 * Lookup247: up_data_structs::CollectionPermissions2340 * Lookup245: up_data_structs::CollectionPermissions
2350 **/2341 **/
2351 UpDataStructsCollectionPermissions: {2342 UpDataStructsCollectionPermissions: {
2352 access: 'Option<UpDataStructsAccessMode>',2343 access: 'Option<UpDataStructsAccessMode>',
2353 mintMode: 'Option<bool>',2344 mintMode: 'Option<bool>',
2354 nesting: 'Option<UpDataStructsNestingPermissions>'2345 nesting: 'Option<UpDataStructsNestingPermissions>'
2355 },2346 },
2356 /**2347 /**
2357 * Lookup249: up_data_structs::NestingPermissions2348 * Lookup247: up_data_structs::NestingPermissions
2358 **/2349 **/
2359 UpDataStructsNestingPermissions: {2350 UpDataStructsNestingPermissions: {
2360 tokenOwner: 'bool',2351 tokenOwner: 'bool',
2361 collectionAdmin: 'bool',2352 collectionAdmin: 'bool',
2362 restricted: 'Option<UpDataStructsOwnerRestrictedSet>'2353 restricted: 'Option<UpDataStructsOwnerRestrictedSet>'
2363 },2354 },
2364 /**2355 /**
2365 * Lookup251: up_data_structs::OwnerRestrictedSet2356 * Lookup249: up_data_structs::OwnerRestrictedSet
2366 **/2357 **/
2367 UpDataStructsOwnerRestrictedSet: 'BTreeSet<u32>',2358 UpDataStructsOwnerRestrictedSet: 'BTreeSet<u32>',
2368 /**2359 /**
2369 * Lookup256: up_data_structs::PropertyKeyPermission2360 * Lookup254: up_data_structs::PropertyKeyPermission
2370 **/2361 **/
2371 UpDataStructsPropertyKeyPermission: {2362 UpDataStructsPropertyKeyPermission: {
2372 key: 'Bytes',2363 key: 'Bytes',
2373 permission: 'UpDataStructsPropertyPermission'2364 permission: 'UpDataStructsPropertyPermission'
2374 },2365 },
2375 /**2366 /**
2376 * Lookup257: up_data_structs::PropertyPermission2367 * Lookup255: up_data_structs::PropertyPermission
2377 **/2368 **/
2378 UpDataStructsPropertyPermission: {2369 UpDataStructsPropertyPermission: {
2379 mutable: 'bool',2370 mutable: 'bool',
2380 collectionAdmin: 'bool',2371 collectionAdmin: 'bool',
2381 tokenOwner: 'bool'2372 tokenOwner: 'bool'
2382 },2373 },
2383 /**2374 /**
2384 * Lookup260: up_data_structs::Property2375 * Lookup258: up_data_structs::Property
2385 **/2376 **/
2386 UpDataStructsProperty: {2377 UpDataStructsProperty: {
2387 key: 'Bytes',2378 key: 'Bytes',
2388 value: 'Bytes'2379 value: 'Bytes'
2389 },2380 },
2390 /**2381 /**
2391 * Lookup263: up_data_structs::CreateItemData2382 * Lookup261: up_data_structs::CreateItemData
2392 **/2383 **/
2393 UpDataStructsCreateItemData: {2384 UpDataStructsCreateItemData: {
2394 _enum: {2385 _enum: {
2395 NFT: 'UpDataStructsCreateNftData',2386 NFT: 'UpDataStructsCreateNftData',
2396 Fungible: 'UpDataStructsCreateFungibleData',2387 Fungible: 'UpDataStructsCreateFungibleData',
2397 ReFungible: 'UpDataStructsCreateReFungibleData'2388 ReFungible: 'UpDataStructsCreateReFungibleData'
2398 }2389 }
2399 },2390 },
2400 /**2391 /**
2401 * Lookup264: up_data_structs::CreateNftData2392 * Lookup262: up_data_structs::CreateNftData
2402 **/2393 **/
2403 UpDataStructsCreateNftData: {2394 UpDataStructsCreateNftData: {
2404 properties: 'Vec<UpDataStructsProperty>'2395 properties: 'Vec<UpDataStructsProperty>'
2405 },2396 },
2406 /**2397 /**
2407 * Lookup265: up_data_structs::CreateFungibleData2398 * Lookup263: up_data_structs::CreateFungibleData
2408 **/2399 **/
2409 UpDataStructsCreateFungibleData: {2400 UpDataStructsCreateFungibleData: {
2410 value: 'u128'2401 value: 'u128'
2411 },2402 },
2412 /**2403 /**
2413 * Lookup266: up_data_structs::CreateReFungibleData2404 * Lookup264: up_data_structs::CreateReFungibleData
2414 **/2405 **/
2415 UpDataStructsCreateReFungibleData: {2406 UpDataStructsCreateReFungibleData: {
2416 pieces: 'u128',2407 pieces: 'u128',
2417 properties: 'Vec<UpDataStructsProperty>'2408 properties: 'Vec<UpDataStructsProperty>'
2418 },2409 },
2419 /**2410 /**
2420 * Lookup269: up_data_structs::CreateItemExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2411 * Lookup267: up_data_structs::CreateItemExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
2421 **/2412 **/
2422 UpDataStructsCreateItemExData: {2413 UpDataStructsCreateItemExData: {
2423 _enum: {2414 _enum: {
2424 NFT: 'Vec<UpDataStructsCreateNftExData>',2415 NFT: 'Vec<UpDataStructsCreateNftExData>',
2427 RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExMultipleOwners'2418 RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExMultipleOwners'
2428 }2419 }
2429 },2420 },
2430 /**2421 /**
2431 * Lookup271: up_data_structs::CreateNftExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2422 * Lookup269: up_data_structs::CreateNftExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
2432 **/2423 **/
2433 UpDataStructsCreateNftExData: {2424 UpDataStructsCreateNftExData: {
2434 properties: 'Vec<UpDataStructsProperty>',2425 properties: 'Vec<UpDataStructsProperty>',
2435 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'2426 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
2436 },2427 },
2437 /**2428 /**
2438 * Lookup278: up_data_structs::CreateRefungibleExSingleOwner<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2429 * Lookup276: up_data_structs::CreateRefungibleExSingleOwner<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
2439 **/2430 **/
2440 UpDataStructsCreateRefungibleExSingleOwner: {2431 UpDataStructsCreateRefungibleExSingleOwner: {
2441 user: 'PalletEvmAccountBasicCrossAccountIdRepr',2432 user: 'PalletEvmAccountBasicCrossAccountIdRepr',
2442 pieces: 'u128',2433 pieces: 'u128',
2443 properties: 'Vec<UpDataStructsProperty>'2434 properties: 'Vec<UpDataStructsProperty>'
2444 },2435 },
2445 /**2436 /**
2446 * Lookup280: up_data_structs::CreateRefungibleExMultipleOwners<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2437 * Lookup278: up_data_structs::CreateRefungibleExMultipleOwners<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
2447 **/2438 **/
2448 UpDataStructsCreateRefungibleExMultipleOwners: {2439 UpDataStructsCreateRefungibleExMultipleOwners: {
2449 users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',2440 users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',
2450 properties: 'Vec<UpDataStructsProperty>'2441 properties: 'Vec<UpDataStructsProperty>'
2451 },2442 },
2452 /**2443 /**
2453 * Lookup281: pallet_configuration::pallet::Call<T>2444 * Lookup279: pallet_configuration::pallet::Call<T>
2454 **/2445 **/
2455 PalletConfigurationCall: {2446 PalletConfigurationCall: {
2456 _enum: {2447 _enum: {
2457 set_weight_to_fee_coefficient_override: {2448 set_weight_to_fee_coefficient_override: {
2468 }2459 }
2469 }2460 }
2470 },2461 },
2471 /**2462 /**
2472 * Lookup286: pallet_configuration::AppPromotionConfiguration<BlockNumber>2463 * Lookup284: pallet_configuration::AppPromotionConfiguration<BlockNumber>
2473 **/2464 **/
2474 PalletConfigurationAppPromotionConfiguration: {2465 PalletConfigurationAppPromotionConfiguration: {
2475 recalculationInterval: 'Option<u32>',2466 recalculationInterval: 'Option<u32>',
2476 pendingInterval: 'Option<u32>',2467 pendingInterval: 'Option<u32>',
2477 intervalIncome: 'Option<Perbill>',2468 intervalIncome: 'Option<Perbill>',
2478 maxStakersPerCalculation: 'Option<u8>'2469 maxStakersPerCalculation: 'Option<u8>'
2479 },2470 },
2480 /**2471 /**
2481 * Lookup289: pallet_template_transaction_payment::Call<T>2472 * Lookup288: pallet_template_transaction_payment::Call<T>
2482 **/2473 **/
2483 PalletTemplateTransactionPaymentCall: 'Null',2474 PalletTemplateTransactionPaymentCall: 'Null',
2484 /**2475 /**
2485 * Lookup290: pallet_structure::pallet::Call<T>2476 * Lookup289: pallet_structure::pallet::Call<T>
2486 **/2477 **/
2487 PalletStructureCall: 'Null',2478 PalletStructureCall: 'Null',
2488 /**2479 /**
2489 * Lookup291: pallet_rmrk_core::pallet::Call<T>2480 * Lookup290: pallet_rmrk_core::pallet::Call<T>
2490 **/2481 **/
2491 PalletRmrkCoreCall: {2482 PalletRmrkCoreCall: {
2492 _enum: {2483 _enum: {
2493 create_collection: {2484 create_collection: {
2576 }2567 }
2577 }2568 }
2578 },2569 },
2579 /**2570 /**
2580 * Lookup297: rmrk_traits::resource::ResourceTypes<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>2571 * Lookup296: rmrk_traits::resource::ResourceTypes<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2581 **/2572 **/
2582 RmrkTraitsResourceResourceTypes: {2573 RmrkTraitsResourceResourceTypes: {
2583 _enum: {2574 _enum: {
2584 Basic: 'RmrkTraitsResourceBasicResource',2575 Basic: 'RmrkTraitsResourceBasicResource',
2585 Composable: 'RmrkTraitsResourceComposableResource',2576 Composable: 'RmrkTraitsResourceComposableResource',
2586 Slot: 'RmrkTraitsResourceSlotResource'2577 Slot: 'RmrkTraitsResourceSlotResource'
2587 }2578 }
2588 },2579 },
2589 /**2580 /**
2590 * Lookup299: rmrk_traits::resource::BasicResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>2581 * Lookup298: rmrk_traits::resource::BasicResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2591 **/2582 **/
2592 RmrkTraitsResourceBasicResource: {2583 RmrkTraitsResourceBasicResource: {
2593 src: 'Option<Bytes>',2584 src: 'Option<Bytes>',
2594 metadata: 'Option<Bytes>',2585 metadata: 'Option<Bytes>',
2595 license: 'Option<Bytes>',2586 license: 'Option<Bytes>',
2596 thumb: 'Option<Bytes>'2587 thumb: 'Option<Bytes>'
2597 },2588 },
2598 /**2589 /**
2599 * Lookup301: rmrk_traits::resource::ComposableResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>2590 * Lookup300: rmrk_traits::resource::ComposableResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2600 **/2591 **/
2601 RmrkTraitsResourceComposableResource: {2592 RmrkTraitsResourceComposableResource: {
2602 parts: 'Vec<u32>',2593 parts: 'Vec<u32>',
2603 base: 'u32',2594 base: 'u32',
2606 license: 'Option<Bytes>',2597 license: 'Option<Bytes>',
2607 thumb: 'Option<Bytes>'2598 thumb: 'Option<Bytes>'
2608 },2599 },
2609 /**2600 /**
2610 * Lookup302: rmrk_traits::resource::SlotResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>2601 * Lookup301: rmrk_traits::resource::SlotResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2611 **/2602 **/
2612 RmrkTraitsResourceSlotResource: {2603 RmrkTraitsResourceSlotResource: {
2613 base: 'u32',2604 base: 'u32',
2614 src: 'Option<Bytes>',2605 src: 'Option<Bytes>',
2617 license: 'Option<Bytes>',2608 license: 'Option<Bytes>',
2618 thumb: 'Option<Bytes>'2609 thumb: 'Option<Bytes>'
2619 },2610 },
2620 /**2611 /**
2621 * Lookup305: pallet_rmrk_equip::pallet::Call<T>2612 * Lookup304: pallet_rmrk_equip::pallet::Call<T>
2622 **/2613 **/
2623 PalletRmrkEquipCall: {2614 PalletRmrkEquipCall: {
2624 _enum: {2615 _enum: {
2625 create_base: {2616 create_base: {
2638 }2629 }
2639 }2630 }
2640 },2631 },
2641 /**2632 /**
2642 * Lookup308: rmrk_traits::part::PartType<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>2633 * Lookup307: rmrk_traits::part::PartType<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2643 **/2634 **/
2644 RmrkTraitsPartPartType: {2635 RmrkTraitsPartPartType: {
2645 _enum: {2636 _enum: {
2646 FixedPart: 'RmrkTraitsPartFixedPart',2637 FixedPart: 'RmrkTraitsPartFixedPart',
2647 SlotPart: 'RmrkTraitsPartSlotPart'2638 SlotPart: 'RmrkTraitsPartSlotPart'
2648 }2639 }
2649 },2640 },
2650 /**2641 /**
2651 * Lookup310: rmrk_traits::part::FixedPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>>2642 * Lookup309: rmrk_traits::part::FixedPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2652 **/2643 **/
2653 RmrkTraitsPartFixedPart: {2644 RmrkTraitsPartFixedPart: {
2654 id: 'u32',2645 id: 'u32',
2655 z: 'u32',2646 z: 'u32',
2656 src: 'Bytes'2647 src: 'Bytes'
2657 },2648 },
2658 /**2649 /**
2659 * Lookup311: rmrk_traits::part::SlotPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>2650 * Lookup310: rmrk_traits::part::SlotPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2660 **/2651 **/
2661 RmrkTraitsPartSlotPart: {2652 RmrkTraitsPartSlotPart: {
2662 id: 'u32',2653 id: 'u32',
2663 equippable: 'RmrkTraitsPartEquippableList',2654 equippable: 'RmrkTraitsPartEquippableList',
2664 src: 'Bytes',2655 src: 'Bytes',
2665 z: 'u32'2656 z: 'u32'
2666 },2657 },
2667 /**2658 /**
2668 * Lookup312: rmrk_traits::part::EquippableList<sp_core::bounded::bounded_vec::BoundedVec<T, S>>2659 * Lookup311: rmrk_traits::part::EquippableList<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2669 **/2660 **/
2670 RmrkTraitsPartEquippableList: {2661 RmrkTraitsPartEquippableList: {
2671 _enum: {2662 _enum: {
2672 All: 'Null',2663 All: 'Null',
2673 Empty: 'Null',2664 Empty: 'Null',
2674 Custom: 'Vec<u32>'2665 Custom: 'Vec<u32>'
2675 }2666 }
2676 },2667 },
2677 /**2668 /**
2678 * Lookup314: rmrk_traits::theme::Theme<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>, S>>2669 * Lookup313: rmrk_traits::theme::Theme<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>, S>>
2679 **/2670 **/
2680 RmrkTraitsTheme: {2671 RmrkTraitsTheme: {
2681 name: 'Bytes',2672 name: 'Bytes',
2682 properties: 'Vec<RmrkTraitsThemeThemeProperty>',2673 properties: 'Vec<RmrkTraitsThemeThemeProperty>',
2683 inherit: 'bool'2674 inherit: 'bool'
2684 },2675 },
2685 /**2676 /**
2686 * Lookup316: rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>2677 * Lookup315: rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
2687 **/2678 **/
2688 RmrkTraitsThemeThemeProperty: {2679 RmrkTraitsThemeThemeProperty: {
2689 key: 'Bytes',2680 key: 'Bytes',
2690 value: 'Bytes'2681 value: 'Bytes'
2691 },2682 },
2692 /**2683 /**
2693 * Lookup318: pallet_app_promotion::pallet::Call<T>2684 * Lookup317: pallet_app_promotion::pallet::Call<T>
2694 **/2685 **/
2695 PalletAppPromotionCall: {2686 PalletAppPromotionCall: {
2696 _enum: {2687 _enum: {
2697 set_admin_address: {2688 set_admin_address: {
2718 }2709 }
2719 }2710 }
2720 },2711 },
2721 /**2712 /**
2722 * Lookup319: pallet_foreign_assets::module::Call<T>2713 * Lookup318: pallet_foreign_assets::module::Call<T>
2723 **/2714 **/
2724 PalletForeignAssetsModuleCall: {2715 PalletForeignAssetsModuleCall: {
2725 _enum: {2716 _enum: {
2726 register_foreign_asset: {2717 register_foreign_asset: {
2735 }2726 }
2736 }2727 }
2737 },2728 },
2738 /**2729 /**
2739 * Lookup320: pallet_evm::pallet::Call<T>2730 * Lookup319: pallet_evm::pallet::Call<T>
2740 **/2731 **/
2741 PalletEvmCall: {2732 PalletEvmCall: {
2742 _enum: {2733 _enum: {
2743 withdraw: {2734 withdraw: {
2778 }2769 }
2779 }2770 }
2780 },2771 },
2781 /**2772 /**
2782 * Lookup326: pallet_ethereum::pallet::Call<T>2773 * Lookup325: pallet_ethereum::pallet::Call<T>
2783 **/2774 **/
2784 PalletEthereumCall: {2775 PalletEthereumCall: {
2785 _enum: {2776 _enum: {
2786 transact: {2777 transact: {
2787 transaction: 'EthereumTransactionTransactionV2'2778 transaction: 'EthereumTransactionTransactionV2'
2788 }2779 }
2789 }2780 }
2790 },2781 },
2791 /**2782 /**
2792 * Lookup327: ethereum::transaction::TransactionV22783 * Lookup326: ethereum::transaction::TransactionV2
2793 **/2784 **/
2794 EthereumTransactionTransactionV2: {2785 EthereumTransactionTransactionV2: {
2795 _enum: {2786 _enum: {
2796 Legacy: 'EthereumTransactionLegacyTransaction',2787 Legacy: 'EthereumTransactionLegacyTransaction',
2797 EIP2930: 'EthereumTransactionEip2930Transaction',2788 EIP2930: 'EthereumTransactionEip2930Transaction',
2798 EIP1559: 'EthereumTransactionEip1559Transaction'2789 EIP1559: 'EthereumTransactionEip1559Transaction'
2799 }2790 }
2800 },2791 },
2801 /**2792 /**
2802 * Lookup328: ethereum::transaction::LegacyTransaction2793 * Lookup327: ethereum::transaction::LegacyTransaction
2803 **/2794 **/
2804 EthereumTransactionLegacyTransaction: {2795 EthereumTransactionLegacyTransaction: {
2805 nonce: 'U256',2796 nonce: 'U256',
2806 gasPrice: 'U256',2797 gasPrice: 'U256',
2810 input: 'Bytes',2801 input: 'Bytes',
2811 signature: 'EthereumTransactionTransactionSignature'2802 signature: 'EthereumTransactionTransactionSignature'
2812 },2803 },
2813 /**2804 /**
2814 * Lookup329: ethereum::transaction::TransactionAction2805 * Lookup328: ethereum::transaction::TransactionAction
2815 **/2806 **/
2816 EthereumTransactionTransactionAction: {2807 EthereumTransactionTransactionAction: {
2817 _enum: {2808 _enum: {
2818 Call: 'H160',2809 Call: 'H160',
2819 Create: 'Null'2810 Create: 'Null'
2820 }2811 }
2821 },2812 },
2822 /**2813 /**
2823 * Lookup330: ethereum::transaction::TransactionSignature2814 * Lookup329: ethereum::transaction::TransactionSignature
2824 **/2815 **/
2825 EthereumTransactionTransactionSignature: {2816 EthereumTransactionTransactionSignature: {
2826 v: 'u64',2817 v: 'u64',
2827 r: 'H256',2818 r: 'H256',
2828 s: 'H256'2819 s: 'H256'
2829 },2820 },
2830 /**2821 /**
2831 * Lookup332: ethereum::transaction::EIP2930Transaction2822 * Lookup331: ethereum::transaction::EIP2930Transaction
2832 **/2823 **/
2833 EthereumTransactionEip2930Transaction: {2824 EthereumTransactionEip2930Transaction: {
2834 chainId: 'u64',2825 chainId: 'u64',
2835 nonce: 'U256',2826 nonce: 'U256',
2843 r: 'H256',2834 r: 'H256',
2844 s: 'H256'2835 s: 'H256'
2845 },2836 },
2846 /**2837 /**
2847 * Lookup334: ethereum::transaction::AccessListItem2838 * Lookup333: ethereum::transaction::AccessListItem
2848 **/2839 **/
2849 EthereumTransactionAccessListItem: {2840 EthereumTransactionAccessListItem: {
2850 address: 'H160',2841 address: 'H160',
2851 storageKeys: 'Vec<H256>'2842 storageKeys: 'Vec<H256>'
2852 },2843 },
2853 /**2844 /**
2854 * Lookup335: ethereum::transaction::EIP1559Transaction2845 * Lookup334: ethereum::transaction::EIP1559Transaction
2855 **/2846 **/
2856 EthereumTransactionEip1559Transaction: {2847 EthereumTransactionEip1559Transaction: {
2857 chainId: 'u64',2848 chainId: 'u64',
2858 nonce: 'U256',2849 nonce: 'U256',
2867 r: 'H256',2858 r: 'H256',
2868 s: 'H256'2859 s: 'H256'
2869 },2860 },
2870 /**2861 /**
2871 * Lookup336: pallet_evm_migration::pallet::Call<T>2862 * Lookup335: pallet_evm_migration::pallet::Call<T>
2872 **/2863 **/
2873 PalletEvmMigrationCall: {2864 PalletEvmMigrationCall: {
2874 _enum: {2865 _enum: {
2875 begin: {2866 begin: {
2891 }2882 }
2892 }2883 }
2893 },2884 },
2894 /**2885 /**
2895 * Lookup340: pallet_maintenance::pallet::Call<T>2886 * Lookup339: pallet_maintenance::pallet::Call<T>
2896 **/2887 **/
2897 PalletMaintenanceCall: {2888 PalletMaintenanceCall: {
2898 _enum: ['enable', 'disable']2889 _enum: ['enable', 'disable']
2899 },2890 },
2900 /**2891 /**
2901 * Lookup341: pallet_test_utils::pallet::Call<T>2892 * Lookup340: pallet_test_utils::pallet::Call<T>
2902 **/2893 **/
2903 PalletTestUtilsCall: {2894 PalletTestUtilsCall: {
2904 _enum: {2895 _enum: {
2905 enable: 'Null',2896 enable: 'Null',
2916 }2907 }
2917 }2908 }
2918 },2909 },
2919 /**2910 /**
2920 * Lookup343: pallet_sudo::pallet::Error<T>2911 * Lookup342: pallet_sudo::pallet::Error<T>
2921 **/2912 **/
2922 PalletSudoError: {2913 PalletSudoError: {
2923 _enum: ['RequireSudo']2914 _enum: ['RequireSudo']
2924 },2915 },
2925 /**2916 /**
2926 * Lookup345: orml_vesting::module::Error<T>2917 * Lookup344: orml_vesting::module::Error<T>
2927 **/2918 **/
2928 OrmlVestingModuleError: {2919 OrmlVestingModuleError: {
2929 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']2920 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']
2930 },2921 },
2931 /**2922 /**
2932 * Lookup346: orml_xtokens::module::Error<T>2923 * Lookup345: orml_xtokens::module::Error<T>
2933 **/2924 **/
2934 OrmlXtokensModuleError: {2925 OrmlXtokensModuleError: {
2935 _enum: ['AssetHasNoReserve', 'NotCrossChainTransfer', 'InvalidDest', 'NotCrossChainTransferableCurrency', 'UnweighableMessage', 'XcmExecutionFailed', 'CannotReanchor', 'InvalidAncestry', 'InvalidAsset', 'DestinationNotInvertible', 'BadVersion', 'DistinctReserveForAssetAndFee', 'ZeroFee', 'ZeroAmount', 'TooManyAssetsBeingSent', 'AssetIndexNonExistent', 'FeeNotEnough', 'NotSupportedMultiLocation', 'MinXcmFeeNotDefined']2926 _enum: ['AssetHasNoReserve', 'NotCrossChainTransfer', 'InvalidDest', 'NotCrossChainTransferableCurrency', 'UnweighableMessage', 'XcmExecutionFailed', 'CannotReanchor', 'InvalidAncestry', 'InvalidAsset', 'DestinationNotInvertible', 'BadVersion', 'DistinctReserveForAssetAndFee', 'ZeroFee', 'ZeroAmount', 'TooManyAssetsBeingSent', 'AssetIndexNonExistent', 'FeeNotEnough', 'NotSupportedMultiLocation', 'MinXcmFeeNotDefined']
2936 },2927 },
2937 /**2928 /**
2938 * Lookup349: orml_tokens::BalanceLock<Balance>2929 * Lookup348: orml_tokens::BalanceLock<Balance>
2939 **/2930 **/
2940 OrmlTokensBalanceLock: {2931 OrmlTokensBalanceLock: {
2941 id: '[u8;8]',2932 id: '[u8;8]',
2942 amount: 'u128'2933 amount: 'u128'
2943 },2934 },
2944 /**2935 /**
2945 * Lookup351: orml_tokens::AccountData<Balance>2936 * Lookup350: orml_tokens::AccountData<Balance>
2946 **/2937 **/
2947 OrmlTokensAccountData: {2938 OrmlTokensAccountData: {
2948 free: 'u128',2939 free: 'u128',
2949 reserved: 'u128',2940 reserved: 'u128',
2950 frozen: 'u128'2941 frozen: 'u128'
2951 },2942 },
2952 /**2943 /**
2953 * Lookup353: orml_tokens::ReserveData<ReserveIdentifier, Balance>2944 * Lookup352: orml_tokens::ReserveData<ReserveIdentifier, Balance>
2954 **/2945 **/
2955 OrmlTokensReserveData: {2946 OrmlTokensReserveData: {
2956 id: 'Null',2947 id: 'Null',
2957 amount: 'u128'2948 amount: 'u128'
2958 },2949 },
2959 /**2950 /**
2960 * Lookup355: orml_tokens::module::Error<T>2951 * Lookup354: orml_tokens::module::Error<T>
2961 **/2952 **/
2962 OrmlTokensModuleError: {2953 OrmlTokensModuleError: {
2963 _enum: ['BalanceTooLow', 'AmountIntoBalanceFailed', 'LiquidityRestrictions', 'MaxLocksExceeded', 'KeepAlive', 'ExistentialDeposit', 'DeadAccount', 'TooManyReserves']2954 _enum: ['BalanceTooLow', 'AmountIntoBalanceFailed', 'LiquidityRestrictions', 'MaxLocksExceeded', 'KeepAlive', 'ExistentialDeposit', 'DeadAccount', 'TooManyReserves']
2964 },2955 },
2965 /**2956 /**
2966 * Lookup357: cumulus_pallet_xcmp_queue::InboundChannelDetails2957 * Lookup356: cumulus_pallet_xcmp_queue::InboundChannelDetails
2967 **/2958 **/
2968 CumulusPalletXcmpQueueInboundChannelDetails: {2959 CumulusPalletXcmpQueueInboundChannelDetails: {
2969 sender: 'u32',2960 sender: 'u32',
2970 state: 'CumulusPalletXcmpQueueInboundState',2961 state: 'CumulusPalletXcmpQueueInboundState',
2971 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'2962 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'
2972 },2963 },
2973 /**2964 /**
2974 * Lookup358: cumulus_pallet_xcmp_queue::InboundState2965 * Lookup357: cumulus_pallet_xcmp_queue::InboundState
2975 **/2966 **/
2976 CumulusPalletXcmpQueueInboundState: {2967 CumulusPalletXcmpQueueInboundState: {
2977 _enum: ['Ok', 'Suspended']2968 _enum: ['Ok', 'Suspended']
2978 },2969 },
2979 /**2970 /**
2980 * Lookup361: polkadot_parachain::primitives::XcmpMessageFormat2971 * Lookup360: polkadot_parachain::primitives::XcmpMessageFormat
2981 **/2972 **/
2982 PolkadotParachainPrimitivesXcmpMessageFormat: {2973 PolkadotParachainPrimitivesXcmpMessageFormat: {
2983 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']2974 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']
2984 },2975 },
2985 /**2976 /**
2986 * Lookup364: cumulus_pallet_xcmp_queue::OutboundChannelDetails2977 * Lookup363: cumulus_pallet_xcmp_queue::OutboundChannelDetails
2987 **/2978 **/
2988 CumulusPalletXcmpQueueOutboundChannelDetails: {2979 CumulusPalletXcmpQueueOutboundChannelDetails: {
2989 recipient: 'u32',2980 recipient: 'u32',
2990 state: 'CumulusPalletXcmpQueueOutboundState',2981 state: 'CumulusPalletXcmpQueueOutboundState',
2991 signalsExist: 'bool',2982 signalsExist: 'bool',
2992 firstIndex: 'u16',2983 firstIndex: 'u16',
2993 lastIndex: 'u16'2984 lastIndex: 'u16'
2994 },2985 },
2995 /**2986 /**
2996 * Lookup365: cumulus_pallet_xcmp_queue::OutboundState2987 * Lookup364: cumulus_pallet_xcmp_queue::OutboundState
2997 **/2988 **/
2998 CumulusPalletXcmpQueueOutboundState: {2989 CumulusPalletXcmpQueueOutboundState: {
2999 _enum: ['Ok', 'Suspended']2990 _enum: ['Ok', 'Suspended']
3000 },2991 },
3001 /**2992 /**
3002 * Lookup367: cumulus_pallet_xcmp_queue::QueueConfigData2993 * Lookup366: cumulus_pallet_xcmp_queue::QueueConfigData
3003 **/2994 **/
3004 CumulusPalletXcmpQueueQueueConfigData: {2995 CumulusPalletXcmpQueueQueueConfigData: {
3005 suspendThreshold: 'u32',2996 suspendThreshold: 'u32',
3006 dropThreshold: 'u32',2997 dropThreshold: 'u32',
3009 weightRestrictDecay: 'SpWeightsWeightV2Weight',3000 weightRestrictDecay: 'SpWeightsWeightV2Weight',
3010 xcmpMaxIndividualWeight: 'SpWeightsWeightV2Weight'3001 xcmpMaxIndividualWeight: 'SpWeightsWeightV2Weight'
3011 },3002 },
3012 /**3003 /**
3013 * Lookup369: cumulus_pallet_xcmp_queue::pallet::Error<T>3004 * Lookup368: cumulus_pallet_xcmp_queue::pallet::Error<T>
3014 **/3005 **/
3015 CumulusPalletXcmpQueueError: {3006 CumulusPalletXcmpQueueError: {
3016 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']3007 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']
3017 },3008 },
3018 /**3009 /**
3019 * Lookup370: pallet_xcm::pallet::Error<T>3010 * Lookup369: pallet_xcm::pallet::Error<T>
3020 **/3011 **/
3021 PalletXcmError: {3012 PalletXcmError: {
3022 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']3013 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']
3023 },3014 },
3024 /**3015 /**
3025 * Lookup371: cumulus_pallet_xcm::pallet::Error<T>3016 * Lookup370: cumulus_pallet_xcm::pallet::Error<T>
3026 **/3017 **/
3027 CumulusPalletXcmError: 'Null',3018 CumulusPalletXcmError: 'Null',
3028 /**3019 /**
3029 * Lookup372: cumulus_pallet_dmp_queue::ConfigData3020 * Lookup371: cumulus_pallet_dmp_queue::ConfigData
3030 **/3021 **/
3031 CumulusPalletDmpQueueConfigData: {3022 CumulusPalletDmpQueueConfigData: {
3032 maxIndividual: 'SpWeightsWeightV2Weight'3023 maxIndividual: 'SpWeightsWeightV2Weight'
3033 },3024 },
3034 /**3025 /**
3035 * Lookup373: cumulus_pallet_dmp_queue::PageIndexData3026 * Lookup372: cumulus_pallet_dmp_queue::PageIndexData
3036 **/3027 **/
3037 CumulusPalletDmpQueuePageIndexData: {3028 CumulusPalletDmpQueuePageIndexData: {
3038 beginUsed: 'u32',3029 beginUsed: 'u32',
3039 endUsed: 'u32',3030 endUsed: 'u32',
3040 overweightCount: 'u64'3031 overweightCount: 'u64'
3041 },3032 },
3042 /**3033 /**
3043 * Lookup376: cumulus_pallet_dmp_queue::pallet::Error<T>3034 * Lookup375: cumulus_pallet_dmp_queue::pallet::Error<T>
3044 **/3035 **/
3045 CumulusPalletDmpQueueError: {3036 CumulusPalletDmpQueueError: {
3046 _enum: ['Unknown', 'OverLimit']3037 _enum: ['Unknown', 'OverLimit']
3047 },3038 },
3048 /**3039 /**
3049 * Lookup380: pallet_unique::Error<T>3040 * Lookup379: pallet_unique::Error<T>
3050 **/3041 **/
3051 PalletUniqueError: {3042 PalletUniqueError: {
3052 _enum: ['CollectionDecimalPointLimitExceeded', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']3043 _enum: ['CollectionDecimalPointLimitExceeded', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']
3053 },3044 },
3054 /**3045 /**
3055 * Lookup381: pallet_configuration::pallet::Error<T>3046 * Lookup380: pallet_configuration::pallet::Error<T>
3056 **/3047 **/
3057 PalletConfigurationError: {3048 PalletConfigurationError: {
3058 _enum: ['InconsistentConfiguration']3049 _enum: ['InconsistentConfiguration']
3059 },3050 },
3060 /**3051 /**
3061 * Lookup382: up_data_structs::Collection<sp_core::crypto::AccountId32>3052 * Lookup381: up_data_structs::Collection<sp_core::crypto::AccountId32>
3062 **/3053 **/
3063 UpDataStructsCollection: {3054 UpDataStructsCollection: {
3064 owner: 'AccountId32',3055 owner: 'AccountId32',
3065 mode: 'UpDataStructsCollectionMode',3056 mode: 'UpDataStructsCollectionMode',
3071 permissions: 'UpDataStructsCollectionPermissions',3062 permissions: 'UpDataStructsCollectionPermissions',
3072 flags: '[u8;1]'3063 flags: '[u8;1]'
3073 },3064 },
3074 /**3065 /**
3075 * Lookup383: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>3066 * Lookup382: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
3076 **/3067 **/
3077 UpDataStructsSponsorshipStateAccountId32: {3068 UpDataStructsSponsorshipStateAccountId32: {
3078 _enum: {3069 _enum: {
3079 Disabled: 'Null',3070 Disabled: 'Null',
3080 Unconfirmed: 'AccountId32',3071 Unconfirmed: 'AccountId32',
3081 Confirmed: 'AccountId32'3072 Confirmed: 'AccountId32'
3082 }3073 }
3083 },3074 },
3084 /**3075 /**
3085 * Lookup385: up_data_structs::Properties3076 * Lookup384: up_data_structs::Properties
3086 **/3077 **/
3087 UpDataStructsProperties: {3078 UpDataStructsProperties: {
3088 map: 'UpDataStructsPropertiesMapBoundedVec',3079 map: 'UpDataStructsPropertiesMapBoundedVec',
3089 consumedSpace: 'u32',3080 consumedSpace: 'u32',
3090 spaceLimit: 'u32'3081 spaceLimit: 'u32'
3091 },3082 },
3092 /**3083 /**
3093 * Lookup386: up_data_structs::PropertiesMap<sp_core::bounded::bounded_vec::BoundedVec<T, S>>3084 * Lookup385: up_data_structs::PropertiesMap<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
3094 **/3085 **/
3095 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',3086 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',
3096 /**3087 /**
3097 * Lookup391: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>3088 * Lookup390: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>
3098 **/3089 **/
3099 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',3090 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',
3100 /**3091 /**
3101 * Lookup398: up_data_structs::CollectionStats3092 * Lookup397: up_data_structs::CollectionStats
3102 **/3093 **/
3103 UpDataStructsCollectionStats: {3094 UpDataStructsCollectionStats: {
3104 created: 'u32',3095 created: 'u32',
3105 destroyed: 'u32',3096 destroyed: 'u32',
3106 alive: 'u32'3097 alive: 'u32'
3107 },3098 },
3108 /**3099 /**
3109 * Lookup399: up_data_structs::TokenChild3100 * Lookup398: up_data_structs::TokenChild
3110 **/3101 **/
3111 UpDataStructsTokenChild: {3102 UpDataStructsTokenChild: {
3112 token: 'u32',3103 token: 'u32',
3113 collection: 'u32'3104 collection: 'u32'
3114 },3105 },
3115 /**3106 /**
3116 * Lookup400: PhantomType::up_data_structs<T>3107 * Lookup399: PhantomType::up_data_structs<T>
3117 **/3108 **/
3118 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',3109 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',
3119 /**3110 /**
3120 * Lookup402: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>3111 * Lookup401: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
3121 **/3112 **/
3122 UpDataStructsTokenData: {3113 UpDataStructsTokenData: {
3123 properties: 'Vec<UpDataStructsProperty>',3114 properties: 'Vec<UpDataStructsProperty>',
3124 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>',3115 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>',
3125 pieces: 'u128'3116 pieces: 'u128'
3126 },3117 },
3127 /**3118 /**
3128 * Lookup404: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>3119 * Lookup403: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
3129 **/3120 **/
3130 UpDataStructsRpcCollection: {3121 UpDataStructsRpcCollection: {
3131 owner: 'AccountId32',3122 owner: 'AccountId32',
3132 mode: 'UpDataStructsCollectionMode',3123 mode: 'UpDataStructsCollectionMode',
3141 readOnly: 'bool',3132 readOnly: 'bool',
3142 flags: 'UpDataStructsRpcCollectionFlags'3133 flags: 'UpDataStructsRpcCollectionFlags'
3143 },3134 },
3144 /**3135 /**
3145 * Lookup405: up_data_structs::RpcCollectionFlags3136 * Lookup404: up_data_structs::RpcCollectionFlags
3146 **/3137 **/
3147 UpDataStructsRpcCollectionFlags: {3138 UpDataStructsRpcCollectionFlags: {
3148 foreign: 'bool',3139 foreign: 'bool',
3149 erc721metadata: 'bool'3140 erc721metadata: 'bool'
3150 },3141 },
3151 /**3142 /**
3152 * Lookup406: rmrk_traits::collection::CollectionInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>3143 * Lookup405: rmrk_traits::collection::CollectionInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>
3153 **/3144 **/
3154 RmrkTraitsCollectionCollectionInfo: {3145 RmrkTraitsCollectionCollectionInfo: {
3155 issuer: 'AccountId32',3146 issuer: 'AccountId32',
3156 metadata: 'Bytes',3147 metadata: 'Bytes',
3157 max: 'Option<u32>',3148 max: 'Option<u32>',
3158 symbol: 'Bytes',3149 symbol: 'Bytes',
3159 nftsCount: 'u32'3150 nftsCount: 'u32'
3160 },3151 },
3161 /**3152 /**
3162 * Lookup407: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, sp_core::bounded::bounded_vec::BoundedVec<T, S>>3153 * Lookup406: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
3163 **/3154 **/
3164 RmrkTraitsNftNftInfo: {3155 RmrkTraitsNftNftInfo: {
3165 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',3156 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',
3166 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',3157 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',
3167 metadata: 'Bytes',3158 metadata: 'Bytes',
3168 equipped: 'bool',3159 equipped: 'bool',
3169 pending: 'bool'3160 pending: 'bool'
3170 },3161 },
3171 /**3162 /**
3172 * Lookup409: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>3163 * Lookup408: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>
3173 **/3164 **/
3174 RmrkTraitsNftRoyaltyInfo: {3165 RmrkTraitsNftRoyaltyInfo: {
3175 recipient: 'AccountId32',3166 recipient: 'AccountId32',
3176 amount: 'Permill'3167 amount: 'Permill'
3177 },3168 },
3178 /**3169 /**
3179 * Lookup410: rmrk_traits::resource::ResourceInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>3170 * Lookup409: rmrk_traits::resource::ResourceInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
3180 **/3171 **/
3181 RmrkTraitsResourceResourceInfo: {3172 RmrkTraitsResourceResourceInfo: {
3182 id: 'u32',3173 id: 'u32',
3183 resource: 'RmrkTraitsResourceResourceTypes',3174 resource: 'RmrkTraitsResourceResourceTypes',
3184 pending: 'bool',3175 pending: 'bool',
3185 pendingRemoval: 'bool'3176 pendingRemoval: 'bool'
3186 },3177 },
3187 /**3178 /**
3188 * Lookup411: rmrk_traits::property::PropertyInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>3179 * Lookup410: rmrk_traits::property::PropertyInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
3189 **/3180 **/
3190 RmrkTraitsPropertyPropertyInfo: {3181 RmrkTraitsPropertyPropertyInfo: {
3191 key: 'Bytes',3182 key: 'Bytes',
3192 value: 'Bytes'3183 value: 'Bytes'
3193 },3184 },
3194 /**3185 /**
3195 * Lookup412: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, sp_core::bounded::bounded_vec::BoundedVec<T, S>>3186 * Lookup411: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
3196 **/3187 **/
3197 RmrkTraitsBaseBaseInfo: {3188 RmrkTraitsBaseBaseInfo: {
3198 issuer: 'AccountId32',3189 issuer: 'AccountId32',
3199 baseType: 'Bytes',3190 baseType: 'Bytes',
3200 symbol: 'Bytes'3191 symbol: 'Bytes'
3201 },3192 },
3202 /**3193 /**
3203 * Lookup413: rmrk_traits::nft::NftChild3194 * Lookup412: rmrk_traits::nft::NftChild
3204 **/3195 **/
3205 RmrkTraitsNftNftChild: {3196 RmrkTraitsNftNftChild: {
3206 collectionId: 'u32',3197 collectionId: 'u32',
3207 nftId: 'u32'3198 nftId: 'u32'
3208 },3199 },
3209 /**3200 /**
3210 * Lookup415: pallet_common::pallet::Error<T>3201 * Lookup414: pallet_common::pallet::Error<T>
3211 **/3202 **/
3212 PalletCommonError: {3203 PalletCommonError: {
3213 _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal', 'ConfirmSponsorshipFail', 'UserIsNotCollectionAdmin']3204 _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal', 'ConfirmSponsorshipFail', 'UserIsNotCollectionAdmin']
3214 },3205 },
3215 /**3206 /**
3216 * Lookup417: pallet_fungible::pallet::Error<T>3207 * Lookup416: pallet_fungible::pallet::Error<T>
3217 **/3208 **/
3218 PalletFungibleError: {3209 PalletFungibleError: {
3219 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed', 'SettingAllowanceForAllNotAllowed', 'FungibleTokensAreAlwaysValid']3210 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed', 'SettingAllowanceForAllNotAllowed', 'FungibleTokensAreAlwaysValid']
3220 },3211 },
3221 /**3212 /**
3222 * Lookup418: pallet_refungible::ItemData3213 * Lookup417: pallet_refungible::ItemData
3223 **/3214 **/
3224 PalletRefungibleItemData: {3215 PalletRefungibleItemData: {
3225 constData: 'Bytes'3216 constData: 'Bytes'
3226 },3217 },
3227 /**3218 /**
3228 * Lookup423: pallet_refungible::pallet::Error<T>3219 * Lookup422: pallet_refungible::pallet::Error<T>
3229 **/3220 **/
3230 PalletRefungibleError: {3221 PalletRefungibleError: {
3231 _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']3222 _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']
3232 },3223 },
3233 /**3224 /**
3234 * Lookup424: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>3225 * Lookup423: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
3235 **/3226 **/
3236 PalletNonfungibleItemData: {3227 PalletNonfungibleItemData: {
3237 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'3228 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
3238 },3229 },
3239 /**3230 /**
3240 * Lookup426: up_data_structs::PropertyScope3231 * Lookup425: up_data_structs::PropertyScope
3241 **/3232 **/
3242 UpDataStructsPropertyScope: {3233 UpDataStructsPropertyScope: {
3243 _enum: ['None', 'Rmrk']3234 _enum: ['None', 'Rmrk']
3244 },3235 },
3245 /**3236 /**
3246 * Lookup428: pallet_nonfungible::pallet::Error<T>3237 * Lookup427: pallet_nonfungible::pallet::Error<T>
3247 **/3238 **/
3248 PalletNonfungibleError: {3239 PalletNonfungibleError: {
3249 _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']3240 _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']
3250 },3241 },
3251 /**3242 /**
3252 * Lookup429: pallet_structure::pallet::Error<T>3243 * Lookup428: pallet_structure::pallet::Error<T>
3253 **/3244 **/
3254 PalletStructureError: {3245 PalletStructureError: {
3255 _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound']3246 _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound']
3256 },3247 },
3257 /**3248 /**
3258 * Lookup430: pallet_rmrk_core::pallet::Error<T>3249 * Lookup429: pallet_rmrk_core::pallet::Error<T>
3259 **/3250 **/
3260 PalletRmrkCoreError: {3251 PalletRmrkCoreError: {
3261 _enum: ['CorruptedCollectionType', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId']3252 _enum: ['CorruptedCollectionType', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId']
3262 },3253 },
3263 /**3254 /**
3264 * Lookup432: pallet_rmrk_equip::pallet::Error<T>3255 * Lookup431: pallet_rmrk_equip::pallet::Error<T>
3265 **/3256 **/
3266 PalletRmrkEquipError: {3257 PalletRmrkEquipError: {
3267 _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst', 'PartDoesntExist', 'NoEquippableOnFixedPart']3258 _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst', 'PartDoesntExist', 'NoEquippableOnFixedPart']
3268 },3259 },
3269 /**3260 /**
3270 * Lookup438: pallet_app_promotion::pallet::Error<T>3261 * Lookup437: pallet_app_promotion::pallet::Error<T>
3271 **/3262 **/
3272 PalletAppPromotionError: {3263 PalletAppPromotionError: {
3273 _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'IncorrectLockedBalanceOperation']3264 _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'IncorrectLockedBalanceOperation']
3274 },3265 },
3275 /**3266 /**
3276 * Lookup439: pallet_foreign_assets::module::Error<T>3267 * Lookup438: pallet_foreign_assets::module::Error<T>
3277 **/3268 **/
3278 PalletForeignAssetsModuleError: {3269 PalletForeignAssetsModuleError: {
3279 _enum: ['BadLocation', 'MultiLocationExisted', 'AssetIdNotExists', 'AssetIdExisted']3270 _enum: ['BadLocation', 'MultiLocationExisted', 'AssetIdNotExists', 'AssetIdExisted']
3280 },3271 },
3281 /**3272 /**
3282 * Lookup441: pallet_evm::pallet::Error<T>3273 * Lookup440: pallet_evm::pallet::Error<T>
3283 **/3274 **/
3284 PalletEvmError: {3275 PalletEvmError: {
3285 _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce', 'GasLimitTooLow', 'GasLimitTooHigh', 'Undefined', 'Reentrancy']3276 _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce', 'GasLimitTooLow', 'GasLimitTooHigh', 'Undefined', 'Reentrancy', 'TransactionMustComeFromEOA']
3286 },3277 },
3287 /**3278 /**
3288 * Lookup444: fp_rpc::TransactionStatus3279 * Lookup443: fp_rpc::TransactionStatus
3289 **/3280 **/
3290 FpRpcTransactionStatus: {3281 FpRpcTransactionStatus: {
3291 transactionHash: 'H256',3282 transactionHash: 'H256',
3292 transactionIndex: 'u32',3283 transactionIndex: 'u32',
3296 logs: 'Vec<EthereumLog>',3287 logs: 'Vec<EthereumLog>',
3297 logsBloom: 'EthbloomBloom'3288 logsBloom: 'EthbloomBloom'
3298 },3289 },
3299 /**3290 /**
3300 * Lookup446: ethbloom::Bloom3291 * Lookup445: ethbloom::Bloom
3301 **/3292 **/
3302 EthbloomBloom: '[u8;256]',3293 EthbloomBloom: '[u8;256]',
3303 /**3294 /**
3304 * Lookup448: ethereum::receipt::ReceiptV33295 * Lookup447: ethereum::receipt::ReceiptV3
3305 **/3296 **/
3306 EthereumReceiptReceiptV3: {3297 EthereumReceiptReceiptV3: {
3307 _enum: {3298 _enum: {
3308 Legacy: 'EthereumReceiptEip658ReceiptData',3299 Legacy: 'EthereumReceiptEip658ReceiptData',
3309 EIP2930: 'EthereumReceiptEip658ReceiptData',3300 EIP2930: 'EthereumReceiptEip658ReceiptData',
3310 EIP1559: 'EthereumReceiptEip658ReceiptData'3301 EIP1559: 'EthereumReceiptEip658ReceiptData'
3311 }3302 }
3312 },3303 },
3313 /**3304 /**
3314 * Lookup449: ethereum::receipt::EIP658ReceiptData3305 * Lookup448: ethereum::receipt::EIP658ReceiptData
3315 **/3306 **/
3316 EthereumReceiptEip658ReceiptData: {3307 EthereumReceiptEip658ReceiptData: {
3317 statusCode: 'u8',3308 statusCode: 'u8',
3318 usedGas: 'U256',3309 usedGas: 'U256',
3319 logsBloom: 'EthbloomBloom',3310 logsBloom: 'EthbloomBloom',
3320 logs: 'Vec<EthereumLog>'3311 logs: 'Vec<EthereumLog>'
3321 },3312 },
3322 /**3313 /**
3323 * Lookup450: ethereum::block::Block<ethereum::transaction::TransactionV2>3314 * Lookup449: ethereum::block::Block<ethereum::transaction::TransactionV2>
3324 **/3315 **/
3325 EthereumBlock: {3316 EthereumBlock: {
3326 header: 'EthereumHeader',3317 header: 'EthereumHeader',
3327 transactions: 'Vec<EthereumTransactionTransactionV2>',3318 transactions: 'Vec<EthereumTransactionTransactionV2>',
3328 ommers: 'Vec<EthereumHeader>'3319 ommers: 'Vec<EthereumHeader>'
3329 },3320 },
3330 /**3321 /**
3331 * Lookup451: ethereum::header::Header3322 * Lookup450: ethereum::header::Header
3332 **/3323 **/
3333 EthereumHeader: {3324 EthereumHeader: {
3334 parentHash: 'H256',3325 parentHash: 'H256',
3335 ommersHash: 'H256',3326 ommersHash: 'H256',
3347 mixHash: 'H256',3338 mixHash: 'H256',
3348 nonce: 'EthereumTypesHashH64'3339 nonce: 'EthereumTypesHashH64'
3349 },3340 },
3350 /**3341 /**
3351 * Lookup452: ethereum_types::hash::H643342 * Lookup451: ethereum_types::hash::H64
3352 **/3343 **/
3353 EthereumTypesHashH64: '[u8;8]',3344 EthereumTypesHashH64: '[u8;8]',
3354 /**3345 /**
3355 * Lookup457: pallet_ethereum::pallet::Error<T>3346 * Lookup456: pallet_ethereum::pallet::Error<T>
3356 **/3347 **/
3357 PalletEthereumError: {3348 PalletEthereumError: {
3358 _enum: ['InvalidSignature', 'PreLogExists']3349 _enum: ['InvalidSignature', 'PreLogExists']
3359 },3350 },
3360 /**3351 /**
3361 * Lookup458: pallet_evm_coder_substrate::pallet::Error<T>3352 * Lookup457: pallet_evm_coder_substrate::pallet::Error<T>
3362 **/3353 **/
3363 PalletEvmCoderSubstrateError: {3354 PalletEvmCoderSubstrateError: {
3364 _enum: ['OutOfGas', 'OutOfFund']3355 _enum: ['OutOfGas', 'OutOfFund']
3365 },3356 },
3366 /**3357 /**
3367 * Lookup459: up_data_structs::SponsorshipState<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>3358 * Lookup458: up_data_structs::SponsorshipState<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
3368 **/3359 **/
3369 UpDataStructsSponsorshipStateBasicCrossAccountIdRepr: {3360 UpDataStructsSponsorshipStateBasicCrossAccountIdRepr: {
3370 _enum: {3361 _enum: {
3371 Disabled: 'Null',3362 Disabled: 'Null',
3372 Unconfirmed: 'PalletEvmAccountBasicCrossAccountIdRepr',3363 Unconfirmed: 'PalletEvmAccountBasicCrossAccountIdRepr',
3373 Confirmed: 'PalletEvmAccountBasicCrossAccountIdRepr'3364 Confirmed: 'PalletEvmAccountBasicCrossAccountIdRepr'
3374 }3365 }
3375 },3366 },
3376 /**3367 /**
3377 * Lookup460: pallet_evm_contract_helpers::SponsoringModeT3368 * Lookup459: pallet_evm_contract_helpers::SponsoringModeT
3378 **/3369 **/
3379 PalletEvmContractHelpersSponsoringModeT: {3370 PalletEvmContractHelpersSponsoringModeT: {
3380 _enum: ['Disabled', 'Allowlisted', 'Generous']3371 _enum: ['Disabled', 'Allowlisted', 'Generous']
3381 },3372 },
3382 /**3373 /**
3383 * Lookup466: pallet_evm_contract_helpers::pallet::Error<T>3374 * Lookup465: pallet_evm_contract_helpers::pallet::Error<T>
3384 **/3375 **/
3385 PalletEvmContractHelpersError: {3376 PalletEvmContractHelpersError: {
3386 _enum: ['NoPermission', 'NoPendingSponsor', 'TooManyMethodsHaveSponsoredLimit']3377 _enum: ['NoPermission', 'NoPendingSponsor', 'TooManyMethodsHaveSponsoredLimit']
3387 },3378 },
3388 /**3379 /**
3389 * Lookup467: pallet_evm_migration::pallet::Error<T>3380 * Lookup466: pallet_evm_migration::pallet::Error<T>
3390 **/3381 **/
3391 PalletEvmMigrationError: {3382 PalletEvmMigrationError: {
3392 _enum: ['AccountNotEmpty', 'AccountIsNotMigrating', 'BadEvent']3383 _enum: ['AccountNotEmpty', 'AccountIsNotMigrating', 'BadEvent']
3393 },3384 },
3394 /**3385 /**
3395 * Lookup468: pallet_maintenance::pallet::Error<T>3386 * Lookup467: pallet_maintenance::pallet::Error<T>
3396 **/3387 **/
3397 PalletMaintenanceError: 'Null',3388 PalletMaintenanceError: 'Null',
3398 /**3389 /**
3399 * Lookup469: pallet_test_utils::pallet::Error<T>3390 * Lookup468: pallet_test_utils::pallet::Error<T>
3400 **/3391 **/
3401 PalletTestUtilsError: {3392 PalletTestUtilsError: {
3402 _enum: ['TestPalletDisabled', 'TriggerRollback']3393 _enum: ['TestPalletDisabled', 'TriggerRollback']
3403 },3394 },
3404 /**3395 /**
3405 * Lookup471: sp_runtime::MultiSignature3396 * Lookup470: sp_runtime::MultiSignature
3406 **/3397 **/
3407 SpRuntimeMultiSignature: {3398 SpRuntimeMultiSignature: {
3408 _enum: {3399 _enum: {
3409 Ed25519: 'SpCoreEd25519Signature',3400 Ed25519: 'SpCoreEd25519Signature',
3410 Sr25519: 'SpCoreSr25519Signature',3401 Sr25519: 'SpCoreSr25519Signature',
3411 Ecdsa: 'SpCoreEcdsaSignature'3402 Ecdsa: 'SpCoreEcdsaSignature'
3412 }3403 }
3413 },3404 },
3414 /**3405 /**
3415 * Lookup472: sp_core::ed25519::Signature3406 * Lookup471: sp_core::ed25519::Signature
3416 **/3407 **/
3417 SpCoreEd25519Signature: '[u8;64]',3408 SpCoreEd25519Signature: '[u8;64]',
3418 /**3409 /**
3419 * Lookup474: sp_core::sr25519::Signature3410 * Lookup473: sp_core::sr25519::Signature
3420 **/3411 **/
3421 SpCoreSr25519Signature: '[u8;64]',3412 SpCoreSr25519Signature: '[u8;64]',
3422 /**3413 /**
3423 * Lookup475: sp_core::ecdsa::Signature3414 * Lookup474: sp_core::ecdsa::Signature
3424 **/3415 **/
3425 SpCoreEcdsaSignature: '[u8;65]',3416 SpCoreEcdsaSignature: '[u8;65]',
3426 /**3417 /**
3427 * Lookup478: frame_system::extensions::check_spec_version::CheckSpecVersion<T>3418 * Lookup477: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
3428 **/3419 **/
3429 FrameSystemExtensionsCheckSpecVersion: 'Null',3420 FrameSystemExtensionsCheckSpecVersion: 'Null',
3430 /**3421 /**
3431 * Lookup479: frame_system::extensions::check_tx_version::CheckTxVersion<T>3422 * Lookup478: frame_system::extensions::check_tx_version::CheckTxVersion<T>
3432 **/3423 **/
3433 FrameSystemExtensionsCheckTxVersion: 'Null',3424 FrameSystemExtensionsCheckTxVersion: 'Null',
3434 /**3425 /**
3435 * Lookup480: frame_system::extensions::check_genesis::CheckGenesis<T>3426 * Lookup479: frame_system::extensions::check_genesis::CheckGenesis<T>
3436 **/3427 **/
3437 FrameSystemExtensionsCheckGenesis: 'Null',3428 FrameSystemExtensionsCheckGenesis: 'Null',
3438 /**3429 /**
3439 * Lookup483: frame_system::extensions::check_nonce::CheckNonce<T>3430 * Lookup482: frame_system::extensions::check_nonce::CheckNonce<T>
3440 **/3431 **/
3441 FrameSystemExtensionsCheckNonce: 'Compact<u32>',3432 FrameSystemExtensionsCheckNonce: 'Compact<u32>',
3442 /**3433 /**
3443 * Lookup484: frame_system::extensions::check_weight::CheckWeight<T>3434 * Lookup483: frame_system::extensions::check_weight::CheckWeight<T>
3444 **/3435 **/
3445 FrameSystemExtensionsCheckWeight: 'Null',3436 FrameSystemExtensionsCheckWeight: 'Null',
3446 /**3437 /**
3447 * Lookup485: opal_runtime::runtime_common::maintenance::CheckMaintenance3438 * Lookup484: opal_runtime::runtime_common::maintenance::CheckMaintenance
3448 **/3439 **/
3449 OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: 'Null',3440 OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: 'Null',
3450 /**3441 /**
3451 * Lookup486: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>3442 * Lookup485: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
3452 **/3443 **/
3453 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',3444 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',
3454 /**3445 /**
3455 * Lookup487: opal_runtime::Runtime3446 * Lookup486: opal_runtime::Runtime
3456 **/3447 **/
3457 OpalRuntimeRuntime: 'Null',3448 OpalRuntimeRuntime: 'Null',
3458 /**3449 /**
3459 * Lookup488: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>3450 * Lookup487: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>
3460 **/3451 **/
3461 PalletEthereumFakeTransactionFinalizer: 'Null'3452 PalletEthereumFakeTransactionFinalizer: 'Null'
3462};3453};
34633454
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, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, 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, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, 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, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, 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, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, 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, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
 
 declare module '@polkadot/types/types/registry' {
   interface InterfaceTypes {
@@ -97,7 +97,6 @@
     PalletBalancesError: PalletBalancesError;
     PalletBalancesEvent: PalletBalancesEvent;
     PalletBalancesReasons: PalletBalancesReasons;
-    PalletBalancesReleases: PalletBalancesReleases;
     PalletBalancesReserveData: PalletBalancesReserveData;
     PalletCommonError: PalletCommonError;
     PalletCommonEvent: PalletCommonEvent;
modifiedtests/src/interfaces/types-lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -1488,10 +1488,6 @@
 
   /** @name FrameSystemCall (125) */
   interface FrameSystemCall extends Enum {
-    readonly isFillBlock: boolean;
-    readonly asFillBlock: {
-      readonly ratio: Perbill;
-    } & Struct;
     readonly isRemark: boolean;
     readonly asRemark: {
       readonly remark: Bytes;
@@ -1525,24 +1521,24 @@
     readonly asRemarkWithEvent: {
       readonly remark: Bytes;
     } & Struct;
-    readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';
+    readonly type: 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';
   }
 
-  /** @name FrameSystemLimitsBlockWeights (130) */
+  /** @name FrameSystemLimitsBlockWeights (129) */
   interface FrameSystemLimitsBlockWeights extends Struct {
     readonly baseBlock: SpWeightsWeightV2Weight;
     readonly maxBlock: SpWeightsWeightV2Weight;
     readonly perClass: FrameSupportDispatchPerDispatchClassWeightsPerClass;
   }
 
-  /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (131) */
+  /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (130) */
   interface FrameSupportDispatchPerDispatchClassWeightsPerClass extends Struct {
     readonly normal: FrameSystemLimitsWeightsPerClass;
     readonly operational: FrameSystemLimitsWeightsPerClass;
     readonly mandatory: FrameSystemLimitsWeightsPerClass;
   }
 
-  /** @name FrameSystemLimitsWeightsPerClass (132) */
+  /** @name FrameSystemLimitsWeightsPerClass (131) */
   interface FrameSystemLimitsWeightsPerClass extends Struct {
     readonly baseExtrinsic: SpWeightsWeightV2Weight;
     readonly maxExtrinsic: Option<SpWeightsWeightV2Weight>;
@@ -1550,25 +1546,25 @@
     readonly reserved: Option<SpWeightsWeightV2Weight>;
   }
 
-  /** @name FrameSystemLimitsBlockLength (134) */
+  /** @name FrameSystemLimitsBlockLength (133) */
   interface FrameSystemLimitsBlockLength extends Struct {
     readonly max: FrameSupportDispatchPerDispatchClassU32;
   }
 
-  /** @name FrameSupportDispatchPerDispatchClassU32 (135) */
+  /** @name FrameSupportDispatchPerDispatchClassU32 (134) */
   interface FrameSupportDispatchPerDispatchClassU32 extends Struct {
     readonly normal: u32;
     readonly operational: u32;
     readonly mandatory: u32;
   }
 
-  /** @name SpWeightsRuntimeDbWeight (136) */
+  /** @name SpWeightsRuntimeDbWeight (135) */
   interface SpWeightsRuntimeDbWeight extends Struct {
     readonly read: u64;
     readonly write: u64;
   }
 
-  /** @name SpVersionRuntimeVersion (137) */
+  /** @name SpVersionRuntimeVersion (136) */
   interface SpVersionRuntimeVersion extends Struct {
     readonly specName: Text;
     readonly implName: Text;
@@ -1580,7 +1576,7 @@
     readonly stateVersion: u8;
   }
 
-  /** @name FrameSystemError (142) */
+  /** @name FrameSystemError (141) */
   interface FrameSystemError extends Enum {
     readonly isInvalidSpecName: boolean;
     readonly isSpecVersionNeedsToIncrease: boolean;
@@ -1591,7 +1587,7 @@
     readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';
   }
 
-  /** @name PolkadotPrimitivesV2PersistedValidationData (143) */
+  /** @name PolkadotPrimitivesV2PersistedValidationData (142) */
   interface PolkadotPrimitivesV2PersistedValidationData extends Struct {
     readonly parentHead: Bytes;
     readonly relayParentNumber: u32;
@@ -1599,18 +1595,18 @@
     readonly maxPovSize: u32;
   }
 
-  /** @name PolkadotPrimitivesV2UpgradeRestriction (146) */
+  /** @name PolkadotPrimitivesV2UpgradeRestriction (145) */
   interface PolkadotPrimitivesV2UpgradeRestriction extends Enum {
     readonly isPresent: boolean;
     readonly type: 'Present';
   }
 
-  /** @name SpTrieStorageProof (147) */
+  /** @name SpTrieStorageProof (146) */
   interface SpTrieStorageProof extends Struct {
     readonly trieNodes: BTreeSet<Bytes>;
   }
 
-  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (149) */
+  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (148) */
   interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {
     readonly dmqMqcHead: H256;
     readonly relayDispatchQueueSize: ITuple<[u32, u32]>;
@@ -1618,7 +1614,7 @@
     readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV2AbridgedHrmpChannel]>>;
   }
 
-  /** @name PolkadotPrimitivesV2AbridgedHrmpChannel (152) */
+  /** @name PolkadotPrimitivesV2AbridgedHrmpChannel (151) */
   interface PolkadotPrimitivesV2AbridgedHrmpChannel extends Struct {
     readonly maxCapacity: u32;
     readonly maxTotalSize: u32;
@@ -1628,7 +1624,7 @@
     readonly mqcHead: Option<H256>;
   }
 
-  /** @name PolkadotPrimitivesV2AbridgedHostConfiguration (153) */
+  /** @name PolkadotPrimitivesV2AbridgedHostConfiguration (152) */
   interface PolkadotPrimitivesV2AbridgedHostConfiguration extends Struct {
     readonly maxCodeSize: u32;
     readonly maxHeadDataSize: u32;
@@ -1641,13 +1637,13 @@
     readonly validationUpgradeDelay: u32;
   }
 
-  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (159) */
+  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (158) */
   interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {
     readonly recipient: u32;
     readonly data: Bytes;
   }
 
-  /** @name CumulusPalletParachainSystemCall (160) */
+  /** @name CumulusPalletParachainSystemCall (159) */
   interface CumulusPalletParachainSystemCall extends Enum {
     readonly isSetValidationData: boolean;
     readonly asSetValidationData: {
@@ -1668,7 +1664,7 @@
     readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';
   }
 
-  /** @name CumulusPrimitivesParachainInherentParachainInherentData (161) */
+  /** @name CumulusPrimitivesParachainInherentParachainInherentData (160) */
   interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {
     readonly validationData: PolkadotPrimitivesV2PersistedValidationData;
     readonly relayChainState: SpTrieStorageProof;
@@ -1676,19 +1672,19 @@
     readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;
   }
 
-  /** @name PolkadotCorePrimitivesInboundDownwardMessage (163) */
+  /** @name PolkadotCorePrimitivesInboundDownwardMessage (162) */
   interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {
     readonly sentAt: u32;
     readonly msg: Bytes;
   }
 
-  /** @name PolkadotCorePrimitivesInboundHrmpMessage (166) */
+  /** @name PolkadotCorePrimitivesInboundHrmpMessage (165) */
   interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {
     readonly sentAt: u32;
     readonly data: Bytes;
   }
 
-  /** @name CumulusPalletParachainSystemError (169) */
+  /** @name CumulusPalletParachainSystemError (168) */
   interface CumulusPalletParachainSystemError extends Enum {
     readonly isOverlappingUpgrades: boolean;
     readonly isProhibitedByPolkadot: boolean;
@@ -1701,14 +1697,14 @@
     readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';
   }
 
-  /** @name PalletBalancesBalanceLock (171) */
+  /** @name PalletBalancesBalanceLock (170) */
   interface PalletBalancesBalanceLock extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
     readonly reasons: PalletBalancesReasons;
   }
 
-  /** @name PalletBalancesReasons (172) */
+  /** @name PalletBalancesReasons (171) */
   interface PalletBalancesReasons extends Enum {
     readonly isFee: boolean;
     readonly isMisc: boolean;
@@ -1716,20 +1712,13 @@
     readonly type: 'Fee' | 'Misc' | 'All';
   }
 
-  /** @name PalletBalancesReserveData (175) */
+  /** @name PalletBalancesReserveData (174) */
   interface PalletBalancesReserveData extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
-  }
-
-  /** @name PalletBalancesReleases (177) */
-  interface PalletBalancesReleases extends Enum {
-    readonly isV100: boolean;
-    readonly isV200: boolean;
-    readonly type: 'V100' | 'V200';
   }
 
-  /** @name PalletBalancesCall (178) */
+  /** @name PalletBalancesCall (176) */
   interface PalletBalancesCall extends Enum {
     readonly isTransfer: boolean;
     readonly asTransfer: {
@@ -1766,7 +1755,7 @@
     readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';
   }
 
-  /** @name PalletBalancesError (181) */
+  /** @name PalletBalancesError (179) */
   interface PalletBalancesError extends Enum {
     readonly isVestingBalance: boolean;
     readonly isLiquidityRestrictions: boolean;
@@ -1779,7 +1768,7 @@
     readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';
   }
 
-  /** @name PalletTimestampCall (183) */
+  /** @name PalletTimestampCall (181) */
   interface PalletTimestampCall extends Enum {
     readonly isSet: boolean;
     readonly asSet: {
@@ -1788,14 +1777,14 @@
     readonly type: 'Set';
   }
 
-  /** @name PalletTransactionPaymentReleases (185) */
+  /** @name PalletTransactionPaymentReleases (183) */
   interface PalletTransactionPaymentReleases extends Enum {
     readonly isV1Ancient: boolean;
     readonly isV2: boolean;
     readonly type: 'V1Ancient' | 'V2';
   }
 
-  /** @name PalletTreasuryProposal (186) */
+  /** @name PalletTreasuryProposal (184) */
   interface PalletTreasuryProposal extends Struct {
     readonly proposer: AccountId32;
     readonly value: u128;
@@ -1803,7 +1792,7 @@
     readonly bond: u128;
   }
 
-  /** @name PalletTreasuryCall (189) */
+  /** @name PalletTreasuryCall (187) */
   interface PalletTreasuryCall extends Enum {
     readonly isProposeSpend: boolean;
     readonly asProposeSpend: {
@@ -1830,10 +1819,10 @@
     readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal' | 'Spend' | 'RemoveApproval';
   }
 
-  /** @name FrameSupportPalletId (192) */
+  /** @name FrameSupportPalletId (190) */
   interface FrameSupportPalletId extends U8aFixed {}
 
-  /** @name PalletTreasuryError (193) */
+  /** @name PalletTreasuryError (191) */
   interface PalletTreasuryError extends Enum {
     readonly isInsufficientProposersBalance: boolean;
     readonly isInvalidIndex: boolean;
@@ -1843,7 +1832,7 @@
     readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals' | 'InsufficientPermission' | 'ProposalNotApproved';
   }
 
-  /** @name PalletSudoCall (194) */
+  /** @name PalletSudoCall (192) */
   interface PalletSudoCall extends Enum {
     readonly isSudo: boolean;
     readonly asSudo: {
@@ -1866,7 +1855,7 @@
     readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';
   }
 
-  /** @name OrmlVestingModuleCall (196) */
+  /** @name OrmlVestingModuleCall (194) */
   interface OrmlVestingModuleCall extends Enum {
     readonly isClaim: boolean;
     readonly isVestedTransfer: boolean;
@@ -1886,7 +1875,7 @@
     readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';
   }
 
-  /** @name OrmlXtokensModuleCall (198) */
+  /** @name OrmlXtokensModuleCall (196) */
   interface OrmlXtokensModuleCall extends Enum {
     readonly isTransfer: boolean;
     readonly asTransfer: {
@@ -1933,7 +1922,7 @@
     readonly type: 'Transfer' | 'TransferMultiasset' | 'TransferWithFee' | 'TransferMultiassetWithFee' | 'TransferMulticurrencies' | 'TransferMultiassets';
   }
 
-  /** @name XcmVersionedMultiAsset (199) */
+  /** @name XcmVersionedMultiAsset (197) */
   interface XcmVersionedMultiAsset extends Enum {
     readonly isV0: boolean;
     readonly asV0: XcmV0MultiAsset;
@@ -1942,7 +1931,7 @@
     readonly type: 'V0' | 'V1';
   }
 
-  /** @name OrmlTokensModuleCall (202) */
+  /** @name OrmlTokensModuleCall (200) */
   interface OrmlTokensModuleCall extends Enum {
     readonly isTransfer: boolean;
     readonly asTransfer: {
@@ -1979,7 +1968,7 @@
     readonly type: 'Transfer' | 'TransferAll' | 'TransferKeepAlive' | 'ForceTransfer' | 'SetBalance';
   }
 
-  /** @name CumulusPalletXcmpQueueCall (203) */
+  /** @name CumulusPalletXcmpQueueCall (201) */
   interface CumulusPalletXcmpQueueCall extends Enum {
     readonly isServiceOverweight: boolean;
     readonly asServiceOverweight: {
@@ -2015,7 +2004,7 @@
     readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';
   }
 
-  /** @name PalletXcmCall (204) */
+  /** @name PalletXcmCall (202) */
   interface PalletXcmCall extends Enum {
     readonly isSend: boolean;
     readonly asSend: {
@@ -2077,7 +2066,7 @@
     readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';
   }
 
-  /** @name XcmVersionedXcm (205) */
+  /** @name XcmVersionedXcm (203) */
   interface XcmVersionedXcm extends Enum {
     readonly isV0: boolean;
     readonly asV0: XcmV0Xcm;
@@ -2088,7 +2077,7 @@
     readonly type: 'V0' | 'V1' | 'V2';
   }
 
-  /** @name XcmV0Xcm (206) */
+  /** @name XcmV0Xcm (204) */
   interface XcmV0Xcm extends Enum {
     readonly isWithdrawAsset: boolean;
     readonly asWithdrawAsset: {
@@ -2151,7 +2140,7 @@
     readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';
   }
 
-  /** @name XcmV0Order (208) */
+  /** @name XcmV0Order (206) */
   interface XcmV0Order extends Enum {
     readonly isNull: boolean;
     readonly isDepositAsset: boolean;
@@ -2199,14 +2188,14 @@
     readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';
   }
 
-  /** @name XcmV0Response (210) */
+  /** @name XcmV0Response (208) */
   interface XcmV0Response extends Enum {
     readonly isAssets: boolean;
     readonly asAssets: Vec<XcmV0MultiAsset>;
     readonly type: 'Assets';
   }
 
-  /** @name XcmV1Xcm (211) */
+  /** @name XcmV1Xcm (209) */
   interface XcmV1Xcm extends Enum {
     readonly isWithdrawAsset: boolean;
     readonly asWithdrawAsset: {
@@ -2275,7 +2264,7 @@
     readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';
   }
 
-  /** @name XcmV1Order (213) */
+  /** @name XcmV1Order (211) */
   interface XcmV1Order extends Enum {
     readonly isNoop: boolean;
     readonly isDepositAsset: boolean;
@@ -2325,7 +2314,7 @@
     readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';
   }
 
-  /** @name XcmV1Response (215) */
+  /** @name XcmV1Response (213) */
   interface XcmV1Response extends Enum {
     readonly isAssets: boolean;
     readonly asAssets: XcmV1MultiassetMultiAssets;
@@ -2334,10 +2323,10 @@
     readonly type: 'Assets' | 'Version';
   }
 
-  /** @name CumulusPalletXcmCall (229) */
+  /** @name CumulusPalletXcmCall (227) */
   type CumulusPalletXcmCall = Null;
 
-  /** @name CumulusPalletDmpQueueCall (230) */
+  /** @name CumulusPalletDmpQueueCall (228) */
   interface CumulusPalletDmpQueueCall extends Enum {
     readonly isServiceOverweight: boolean;
     readonly asServiceOverweight: {
@@ -2347,7 +2336,7 @@
     readonly type: 'ServiceOverweight';
   }
 
-  /** @name PalletInflationCall (231) */
+  /** @name PalletInflationCall (229) */
   interface PalletInflationCall extends Enum {
     readonly isStartInflation: boolean;
     readonly asStartInflation: {
@@ -2356,7 +2345,7 @@
     readonly type: 'StartInflation';
   }
 
-  /** @name PalletUniqueCall (232) */
+  /** @name PalletUniqueCall (230) */
   interface PalletUniqueCall extends Enum {
     readonly isCreateCollection: boolean;
     readonly asCreateCollection: {
@@ -2529,7 +2518,7 @@
     readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'SetCollectionProperties' | 'DeleteCollectionProperties' | 'SetTokenProperties' | 'DeleteTokenProperties' | 'SetTokenPropertyPermissions' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetCollectionLimits' | 'SetCollectionPermissions' | 'Repartition' | 'SetAllowanceForAll' | 'ForceRepairCollection' | 'ForceRepairItem';
   }
 
-  /** @name UpDataStructsCollectionMode (237) */
+  /** @name UpDataStructsCollectionMode (235) */
   interface UpDataStructsCollectionMode extends Enum {
     readonly isNft: boolean;
     readonly isFungible: boolean;
@@ -2538,7 +2527,7 @@
     readonly type: 'Nft' | 'Fungible' | 'ReFungible';
   }
 
-  /** @name UpDataStructsCreateCollectionData (238) */
+  /** @name UpDataStructsCreateCollectionData (236) */
   interface UpDataStructsCreateCollectionData extends Struct {
     readonly mode: UpDataStructsCollectionMode;
     readonly access: Option<UpDataStructsAccessMode>;
@@ -2552,14 +2541,14 @@
     readonly properties: Vec<UpDataStructsProperty>;
   }
 
-  /** @name UpDataStructsAccessMode (240) */
+  /** @name UpDataStructsAccessMode (238) */
   interface UpDataStructsAccessMode extends Enum {
     readonly isNormal: boolean;
     readonly isAllowList: boolean;
     readonly type: 'Normal' | 'AllowList';
   }
 
-  /** @name UpDataStructsCollectionLimits (242) */
+  /** @name UpDataStructsCollectionLimits (240) */
   interface UpDataStructsCollectionLimits extends Struct {
     readonly accountTokenOwnershipLimit: Option<u32>;
     readonly sponsoredDataSize: Option<u32>;
@@ -2572,7 +2561,7 @@
     readonly transfersEnabled: Option<bool>;
   }
 
-  /** @name UpDataStructsSponsoringRateLimit (244) */
+  /** @name UpDataStructsSponsoringRateLimit (242) */
   interface UpDataStructsSponsoringRateLimit extends Enum {
     readonly isSponsoringDisabled: boolean;
     readonly isBlocks: boolean;
@@ -2580,43 +2569,43 @@
     readonly type: 'SponsoringDisabled' | 'Blocks';
   }
 
-  /** @name UpDataStructsCollectionPermissions (247) */
+  /** @name UpDataStructsCollectionPermissions (245) */
   interface UpDataStructsCollectionPermissions extends Struct {
     readonly access: Option<UpDataStructsAccessMode>;
     readonly mintMode: Option<bool>;
     readonly nesting: Option<UpDataStructsNestingPermissions>;
   }
 
-  /** @name UpDataStructsNestingPermissions (249) */
+  /** @name UpDataStructsNestingPermissions (247) */
   interface UpDataStructsNestingPermissions extends Struct {
     readonly tokenOwner: bool;
     readonly collectionAdmin: bool;
     readonly restricted: Option<UpDataStructsOwnerRestrictedSet>;
   }
 
-  /** @name UpDataStructsOwnerRestrictedSet (251) */
+  /** @name UpDataStructsOwnerRestrictedSet (249) */
   interface UpDataStructsOwnerRestrictedSet extends BTreeSet<u32> {}
 
-  /** @name UpDataStructsPropertyKeyPermission (256) */
+  /** @name UpDataStructsPropertyKeyPermission (254) */
   interface UpDataStructsPropertyKeyPermission extends Struct {
     readonly key: Bytes;
     readonly permission: UpDataStructsPropertyPermission;
   }
 
-  /** @name UpDataStructsPropertyPermission (257) */
+  /** @name UpDataStructsPropertyPermission (255) */
   interface UpDataStructsPropertyPermission extends Struct {
     readonly mutable: bool;
     readonly collectionAdmin: bool;
     readonly tokenOwner: bool;
   }
 
-  /** @name UpDataStructsProperty (260) */
+  /** @name UpDataStructsProperty (258) */
   interface UpDataStructsProperty extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name UpDataStructsCreateItemData (263) */
+  /** @name UpDataStructsCreateItemData (261) */
   interface UpDataStructsCreateItemData extends Enum {
     readonly isNft: boolean;
     readonly asNft: UpDataStructsCreateNftData;
@@ -2627,23 +2616,23 @@
     readonly type: 'Nft' | 'Fungible' | 'ReFungible';
   }
 
-  /** @name UpDataStructsCreateNftData (264) */
+  /** @name UpDataStructsCreateNftData (262) */
   interface UpDataStructsCreateNftData extends Struct {
     readonly properties: Vec<UpDataStructsProperty>;
   }
 
-  /** @name UpDataStructsCreateFungibleData (265) */
+  /** @name UpDataStructsCreateFungibleData (263) */
   interface UpDataStructsCreateFungibleData extends Struct {
     readonly value: u128;
   }
 
-  /** @name UpDataStructsCreateReFungibleData (266) */
+  /** @name UpDataStructsCreateReFungibleData (264) */
   interface UpDataStructsCreateReFungibleData extends Struct {
     readonly pieces: u128;
     readonly properties: Vec<UpDataStructsProperty>;
   }
 
-  /** @name UpDataStructsCreateItemExData (269) */
+  /** @name UpDataStructsCreateItemExData (267) */
   interface UpDataStructsCreateItemExData extends Enum {
     readonly isNft: boolean;
     readonly asNft: Vec<UpDataStructsCreateNftExData>;
@@ -2656,26 +2645,26 @@
     readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';
   }
 
-  /** @name UpDataStructsCreateNftExData (271) */
+  /** @name UpDataStructsCreateNftExData (269) */
   interface UpDataStructsCreateNftExData extends Struct {
     readonly properties: Vec<UpDataStructsProperty>;
     readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name UpDataStructsCreateRefungibleExSingleOwner (278) */
+  /** @name UpDataStructsCreateRefungibleExSingleOwner (276) */
   interface UpDataStructsCreateRefungibleExSingleOwner extends Struct {
     readonly user: PalletEvmAccountBasicCrossAccountIdRepr;
     readonly pieces: u128;
     readonly properties: Vec<UpDataStructsProperty>;
   }
 
-  /** @name UpDataStructsCreateRefungibleExMultipleOwners (280) */
+  /** @name UpDataStructsCreateRefungibleExMultipleOwners (278) */
   interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct {
     readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
     readonly properties: Vec<UpDataStructsProperty>;
   }
 
-  /** @name PalletConfigurationCall (281) */
+  /** @name PalletConfigurationCall (279) */
   interface PalletConfigurationCall extends Enum {
     readonly isSetWeightToFeeCoefficientOverride: boolean;
     readonly asSetWeightToFeeCoefficientOverride: {
@@ -2696,7 +2685,7 @@
     readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride' | 'SetXcmAllowedLocations' | 'SetAppPromotionConfigurationOverride';
   }
 
-  /** @name PalletConfigurationAppPromotionConfiguration (286) */
+  /** @name PalletConfigurationAppPromotionConfiguration (284) */
   interface PalletConfigurationAppPromotionConfiguration extends Struct {
     readonly recalculationInterval: Option<u32>;
     readonly pendingInterval: Option<u32>;
@@ -2704,13 +2693,13 @@
     readonly maxStakersPerCalculation: Option<u8>;
   }
 
-  /** @name PalletTemplateTransactionPaymentCall (289) */
+  /** @name PalletTemplateTransactionPaymentCall (288) */
   type PalletTemplateTransactionPaymentCall = Null;
 
-  /** @name PalletStructureCall (290) */
+  /** @name PalletStructureCall (289) */
   type PalletStructureCall = Null;
 
-  /** @name PalletRmrkCoreCall (291) */
+  /** @name PalletRmrkCoreCall (290) */
   interface PalletRmrkCoreCall extends Enum {
     readonly isCreateCollection: boolean;
     readonly asCreateCollection: {
@@ -2816,7 +2805,7 @@
     readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource';
   }
 
-  /** @name RmrkTraitsResourceResourceTypes (297) */
+  /** @name RmrkTraitsResourceResourceTypes (296) */
   interface RmrkTraitsResourceResourceTypes extends Enum {
     readonly isBasic: boolean;
     readonly asBasic: RmrkTraitsResourceBasicResource;
@@ -2827,7 +2816,7 @@
     readonly type: 'Basic' | 'Composable' | 'Slot';
   }
 
-  /** @name RmrkTraitsResourceBasicResource (299) */
+  /** @name RmrkTraitsResourceBasicResource (298) */
   interface RmrkTraitsResourceBasicResource extends Struct {
     readonly src: Option<Bytes>;
     readonly metadata: Option<Bytes>;
@@ -2835,7 +2824,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name RmrkTraitsResourceComposableResource (301) */
+  /** @name RmrkTraitsResourceComposableResource (300) */
   interface RmrkTraitsResourceComposableResource extends Struct {
     readonly parts: Vec<u32>;
     readonly base: u32;
@@ -2845,7 +2834,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name RmrkTraitsResourceSlotResource (302) */
+  /** @name RmrkTraitsResourceSlotResource (301) */
   interface RmrkTraitsResourceSlotResource extends Struct {
     readonly base: u32;
     readonly src: Option<Bytes>;
@@ -2855,7 +2844,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name PalletRmrkEquipCall (305) */
+  /** @name PalletRmrkEquipCall (304) */
   interface PalletRmrkEquipCall extends Enum {
     readonly isCreateBase: boolean;
     readonly asCreateBase: {
@@ -2877,7 +2866,7 @@
     readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable';
   }
 
-  /** @name RmrkTraitsPartPartType (308) */
+  /** @name RmrkTraitsPartPartType (307) */
   interface RmrkTraitsPartPartType extends Enum {
     readonly isFixedPart: boolean;
     readonly asFixedPart: RmrkTraitsPartFixedPart;
@@ -2886,14 +2875,14 @@
     readonly type: 'FixedPart' | 'SlotPart';
   }
 
-  /** @name RmrkTraitsPartFixedPart (310) */
+  /** @name RmrkTraitsPartFixedPart (309) */
   interface RmrkTraitsPartFixedPart extends Struct {
     readonly id: u32;
     readonly z: u32;
     readonly src: Bytes;
   }
 
-  /** @name RmrkTraitsPartSlotPart (311) */
+  /** @name RmrkTraitsPartSlotPart (310) */
   interface RmrkTraitsPartSlotPart extends Struct {
     readonly id: u32;
     readonly equippable: RmrkTraitsPartEquippableList;
@@ -2901,7 +2890,7 @@
     readonly z: u32;
   }
 
-  /** @name RmrkTraitsPartEquippableList (312) */
+  /** @name RmrkTraitsPartEquippableList (311) */
   interface RmrkTraitsPartEquippableList extends Enum {
     readonly isAll: boolean;
     readonly isEmpty: boolean;
@@ -2910,20 +2899,20 @@
     readonly type: 'All' | 'Empty' | 'Custom';
   }
 
-  /** @name RmrkTraitsTheme (314) */
+  /** @name RmrkTraitsTheme (313) */
   interface RmrkTraitsTheme extends Struct {
     readonly name: Bytes;
     readonly properties: Vec<RmrkTraitsThemeThemeProperty>;
     readonly inherit: bool;
   }
 
-  /** @name RmrkTraitsThemeThemeProperty (316) */
+  /** @name RmrkTraitsThemeThemeProperty (315) */
   interface RmrkTraitsThemeThemeProperty extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name PalletAppPromotionCall (318) */
+  /** @name PalletAppPromotionCall (317) */
   interface PalletAppPromotionCall extends Enum {
     readonly isSetAdminAddress: boolean;
     readonly asSetAdminAddress: {
@@ -2957,7 +2946,7 @@
     readonly type: 'SetAdminAddress' | 'Stake' | 'Unstake' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers';
   }
 
-  /** @name PalletForeignAssetsModuleCall (319) */
+  /** @name PalletForeignAssetsModuleCall (318) */
   interface PalletForeignAssetsModuleCall extends Enum {
     readonly isRegisterForeignAsset: boolean;
     readonly asRegisterForeignAsset: {
@@ -2974,7 +2963,7 @@
     readonly type: 'RegisterForeignAsset' | 'UpdateForeignAsset';
   }
 
-  /** @name PalletEvmCall (320) */
+  /** @name PalletEvmCall (319) */
   interface PalletEvmCall extends Enum {
     readonly isWithdraw: boolean;
     readonly asWithdraw: {
@@ -3019,7 +3008,7 @@
     readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';
   }
 
-  /** @name PalletEthereumCall (326) */
+  /** @name PalletEthereumCall (325) */
   interface PalletEthereumCall extends Enum {
     readonly isTransact: boolean;
     readonly asTransact: {
@@ -3028,7 +3017,7 @@
     readonly type: 'Transact';
   }
 
-  /** @name EthereumTransactionTransactionV2 (327) */
+  /** @name EthereumTransactionTransactionV2 (326) */
   interface EthereumTransactionTransactionV2 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumTransactionLegacyTransaction;
@@ -3039,7 +3028,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumTransactionLegacyTransaction (328) */
+  /** @name EthereumTransactionLegacyTransaction (327) */
   interface EthereumTransactionLegacyTransaction extends Struct {
     readonly nonce: U256;
     readonly gasPrice: U256;
@@ -3050,7 +3039,7 @@
     readonly signature: EthereumTransactionTransactionSignature;
   }
 
-  /** @name EthereumTransactionTransactionAction (329) */
+  /** @name EthereumTransactionTransactionAction (328) */
   interface EthereumTransactionTransactionAction extends Enum {
     readonly isCall: boolean;
     readonly asCall: H160;
@@ -3058,14 +3047,14 @@
     readonly type: 'Call' | 'Create';
   }
 
-  /** @name EthereumTransactionTransactionSignature (330) */
+  /** @name EthereumTransactionTransactionSignature (329) */
   interface EthereumTransactionTransactionSignature extends Struct {
     readonly v: u64;
     readonly r: H256;
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionEip2930Transaction (332) */
+  /** @name EthereumTransactionEip2930Transaction (331) */
   interface EthereumTransactionEip2930Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -3080,13 +3069,13 @@
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionAccessListItem (334) */
+  /** @name EthereumTransactionAccessListItem (333) */
   interface EthereumTransactionAccessListItem extends Struct {
     readonly address: H160;
     readonly storageKeys: Vec<H256>;
   }
 
-  /** @name EthereumTransactionEip1559Transaction (335) */
+  /** @name EthereumTransactionEip1559Transaction (334) */
   interface EthereumTransactionEip1559Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -3102,7 +3091,7 @@
     readonly s: H256;
   }
 
-  /** @name PalletEvmMigrationCall (336) */
+  /** @name PalletEvmMigrationCall (335) */
   interface PalletEvmMigrationCall extends Enum {
     readonly isBegin: boolean;
     readonly asBegin: {
@@ -3129,14 +3118,14 @@
     readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents';
   }
 
-  /** @name PalletMaintenanceCall (340) */
+  /** @name PalletMaintenanceCall (339) */
   interface PalletMaintenanceCall extends Enum {
     readonly isEnable: boolean;
     readonly isDisable: boolean;
     readonly type: 'Enable' | 'Disable';
   }
 
-  /** @name PalletTestUtilsCall (341) */
+  /** @name PalletTestUtilsCall (340) */
   interface PalletTestUtilsCall extends Enum {
     readonly isEnable: boolean;
     readonly isSetTestValue: boolean;
@@ -3156,13 +3145,13 @@
     readonly type: 'Enable' | 'SetTestValue' | 'SetTestValueAndRollback' | 'IncTestValue' | 'JustTakeFee' | 'BatchAll';
   }
 
-  /** @name PalletSudoError (343) */
+  /** @name PalletSudoError (342) */
   interface PalletSudoError extends Enum {
     readonly isRequireSudo: boolean;
     readonly type: 'RequireSudo';
   }
 
-  /** @name OrmlVestingModuleError (345) */
+  /** @name OrmlVestingModuleError (344) */
   interface OrmlVestingModuleError extends Enum {
     readonly isZeroVestingPeriod: boolean;
     readonly isZeroVestingPeriodCount: boolean;
@@ -3173,7 +3162,7 @@
     readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';
   }
 
-  /** @name OrmlXtokensModuleError (346) */
+  /** @name OrmlXtokensModuleError (345) */
   interface OrmlXtokensModuleError extends Enum {
     readonly isAssetHasNoReserve: boolean;
     readonly isNotCrossChainTransfer: boolean;
@@ -3197,26 +3186,26 @@
     readonly type: 'AssetHasNoReserve' | 'NotCrossChainTransfer' | 'InvalidDest' | 'NotCrossChainTransferableCurrency' | 'UnweighableMessage' | 'XcmExecutionFailed' | 'CannotReanchor' | 'InvalidAncestry' | 'InvalidAsset' | 'DestinationNotInvertible' | 'BadVersion' | 'DistinctReserveForAssetAndFee' | 'ZeroFee' | 'ZeroAmount' | 'TooManyAssetsBeingSent' | 'AssetIndexNonExistent' | 'FeeNotEnough' | 'NotSupportedMultiLocation' | 'MinXcmFeeNotDefined';
   }
 
-  /** @name OrmlTokensBalanceLock (349) */
+  /** @name OrmlTokensBalanceLock (348) */
   interface OrmlTokensBalanceLock extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
   }
 
-  /** @name OrmlTokensAccountData (351) */
+  /** @name OrmlTokensAccountData (350) */
   interface OrmlTokensAccountData extends Struct {
     readonly free: u128;
     readonly reserved: u128;
     readonly frozen: u128;
   }
 
-  /** @name OrmlTokensReserveData (353) */
+  /** @name OrmlTokensReserveData (352) */
   interface OrmlTokensReserveData extends Struct {
     readonly id: Null;
     readonly amount: u128;
   }
 
-  /** @name OrmlTokensModuleError (355) */
+  /** @name OrmlTokensModuleError (354) */
   interface OrmlTokensModuleError extends Enum {
     readonly isBalanceTooLow: boolean;
     readonly isAmountIntoBalanceFailed: boolean;
@@ -3229,21 +3218,21 @@
     readonly type: 'BalanceTooLow' | 'AmountIntoBalanceFailed' | 'LiquidityRestrictions' | 'MaxLocksExceeded' | 'KeepAlive' | 'ExistentialDeposit' | 'DeadAccount' | 'TooManyReserves';
   }
 
-  /** @name CumulusPalletXcmpQueueInboundChannelDetails (357) */
+  /** @name CumulusPalletXcmpQueueInboundChannelDetails (356) */
   interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {
     readonly sender: u32;
     readonly state: CumulusPalletXcmpQueueInboundState;
     readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;
   }
 
-  /** @name CumulusPalletXcmpQueueInboundState (358) */
+  /** @name CumulusPalletXcmpQueueInboundState (357) */
   interface CumulusPalletXcmpQueueInboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (361) */
+  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (360) */
   interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {
     readonly isConcatenatedVersionedXcm: boolean;
     readonly isConcatenatedEncodedBlob: boolean;
@@ -3251,7 +3240,7 @@
     readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (364) */
+  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (363) */
   interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {
     readonly recipient: u32;
     readonly state: CumulusPalletXcmpQueueOutboundState;
@@ -3260,14 +3249,14 @@
     readonly lastIndex: u16;
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundState (365) */
+  /** @name CumulusPalletXcmpQueueOutboundState (364) */
   interface CumulusPalletXcmpQueueOutboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name CumulusPalletXcmpQueueQueueConfigData (367) */
+  /** @name CumulusPalletXcmpQueueQueueConfigData (366) */
   interface CumulusPalletXcmpQueueQueueConfigData extends Struct {
     readonly suspendThreshold: u32;
     readonly dropThreshold: u32;
@@ -3277,7 +3266,7 @@
     readonly xcmpMaxIndividualWeight: SpWeightsWeightV2Weight;
   }
 
-  /** @name CumulusPalletXcmpQueueError (369) */
+  /** @name CumulusPalletXcmpQueueError (368) */
   interface CumulusPalletXcmpQueueError extends Enum {
     readonly isFailedToSend: boolean;
     readonly isBadXcmOrigin: boolean;
@@ -3287,7 +3276,7 @@
     readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';
   }
 
-  /** @name PalletXcmError (370) */
+  /** @name PalletXcmError (369) */
   interface PalletXcmError extends Enum {
     readonly isUnreachable: boolean;
     readonly isSendFailure: boolean;
@@ -3305,29 +3294,29 @@
     readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';
   }
 
-  /** @name CumulusPalletXcmError (371) */
+  /** @name CumulusPalletXcmError (370) */
   type CumulusPalletXcmError = Null;
 
-  /** @name CumulusPalletDmpQueueConfigData (372) */
+  /** @name CumulusPalletDmpQueueConfigData (371) */
   interface CumulusPalletDmpQueueConfigData extends Struct {
     readonly maxIndividual: SpWeightsWeightV2Weight;
   }
 
-  /** @name CumulusPalletDmpQueuePageIndexData (373) */
+  /** @name CumulusPalletDmpQueuePageIndexData (372) */
   interface CumulusPalletDmpQueuePageIndexData extends Struct {
     readonly beginUsed: u32;
     readonly endUsed: u32;
     readonly overweightCount: u64;
   }
 
-  /** @name CumulusPalletDmpQueueError (376) */
+  /** @name CumulusPalletDmpQueueError (375) */
   interface CumulusPalletDmpQueueError extends Enum {
     readonly isUnknown: boolean;
     readonly isOverLimit: boolean;
     readonly type: 'Unknown' | 'OverLimit';
   }
 
-  /** @name PalletUniqueError (380) */
+  /** @name PalletUniqueError (379) */
   interface PalletUniqueError extends Enum {
     readonly isCollectionDecimalPointLimitExceeded: boolean;
     readonly isEmptyArgument: boolean;
@@ -3335,13 +3324,13 @@
     readonly type: 'CollectionDecimalPointLimitExceeded' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection';
   }
 
-  /** @name PalletConfigurationError (381) */
+  /** @name PalletConfigurationError (380) */
   interface PalletConfigurationError extends Enum {
     readonly isInconsistentConfiguration: boolean;
     readonly type: 'InconsistentConfiguration';
   }
 
-  /** @name UpDataStructsCollection (382) */
+  /** @name UpDataStructsCollection (381) */
   interface UpDataStructsCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -3354,7 +3343,7 @@
     readonly flags: U8aFixed;
   }
 
-  /** @name UpDataStructsSponsorshipStateAccountId32 (383) */
+  /** @name UpDataStructsSponsorshipStateAccountId32 (382) */
   interface UpDataStructsSponsorshipStateAccountId32 extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -3364,43 +3353,43 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name UpDataStructsProperties (385) */
+  /** @name UpDataStructsProperties (384) */
   interface UpDataStructsProperties extends Struct {
     readonly map: UpDataStructsPropertiesMapBoundedVec;
     readonly consumedSpace: u32;
     readonly spaceLimit: u32;
   }
 
-  /** @name UpDataStructsPropertiesMapBoundedVec (386) */
+  /** @name UpDataStructsPropertiesMapBoundedVec (385) */
   interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}
 
-  /** @name UpDataStructsPropertiesMapPropertyPermission (391) */
+  /** @name UpDataStructsPropertiesMapPropertyPermission (390) */
   interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}
 
-  /** @name UpDataStructsCollectionStats (398) */
+  /** @name UpDataStructsCollectionStats (397) */
   interface UpDataStructsCollectionStats extends Struct {
     readonly created: u32;
     readonly destroyed: u32;
     readonly alive: u32;
   }
 
-  /** @name UpDataStructsTokenChild (399) */
+  /** @name UpDataStructsTokenChild (398) */
   interface UpDataStructsTokenChild extends Struct {
     readonly token: u32;
     readonly collection: u32;
   }
 
-  /** @name PhantomTypeUpDataStructs (400) */
+  /** @name PhantomTypeUpDataStructs (399) */
   interface PhantomTypeUpDataStructs extends Vec<ITuple<[UpDataStructsTokenData, UpDataStructsRpcCollection, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftNftInfo, RmrkTraitsResourceResourceInfo, RmrkTraitsPropertyPropertyInfo, RmrkTraitsBaseBaseInfo, RmrkTraitsPartPartType, RmrkTraitsTheme, RmrkTraitsNftNftChild]>> {}
 
-  /** @name UpDataStructsTokenData (402) */
+  /** @name UpDataStructsTokenData (401) */
   interface UpDataStructsTokenData extends Struct {
     readonly properties: Vec<UpDataStructsProperty>;
     readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
     readonly pieces: u128;
   }
 
-  /** @name UpDataStructsRpcCollection (404) */
+  /** @name UpDataStructsRpcCollection (403) */
   interface UpDataStructsRpcCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -3416,13 +3405,13 @@
     readonly flags: UpDataStructsRpcCollectionFlags;
   }
 
-  /** @name UpDataStructsRpcCollectionFlags (405) */
+  /** @name UpDataStructsRpcCollectionFlags (404) */
   interface UpDataStructsRpcCollectionFlags extends Struct {
     readonly foreign: bool;
     readonly erc721metadata: bool;
   }
 
-  /** @name RmrkTraitsCollectionCollectionInfo (406) */
+  /** @name RmrkTraitsCollectionCollectionInfo (405) */
   interface RmrkTraitsCollectionCollectionInfo extends Struct {
     readonly issuer: AccountId32;
     readonly metadata: Bytes;
@@ -3431,7 +3420,7 @@
     readonly nftsCount: u32;
   }
 
-  /** @name RmrkTraitsNftNftInfo (407) */
+  /** @name RmrkTraitsNftNftInfo (406) */
   interface RmrkTraitsNftNftInfo extends Struct {
     readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple;
     readonly royalty: Option<RmrkTraitsNftRoyaltyInfo>;
@@ -3440,13 +3429,13 @@
     readonly pending: bool;
   }
 
-  /** @name RmrkTraitsNftRoyaltyInfo (409) */
+  /** @name RmrkTraitsNftRoyaltyInfo (408) */
   interface RmrkTraitsNftRoyaltyInfo extends Struct {
     readonly recipient: AccountId32;
     readonly amount: Permill;
   }
 
-  /** @name RmrkTraitsResourceResourceInfo (410) */
+  /** @name RmrkTraitsResourceResourceInfo (409) */
   interface RmrkTraitsResourceResourceInfo extends Struct {
     readonly id: u32;
     readonly resource: RmrkTraitsResourceResourceTypes;
@@ -3454,26 +3443,26 @@
     readonly pendingRemoval: bool;
   }
 
-  /** @name RmrkTraitsPropertyPropertyInfo (411) */
+  /** @name RmrkTraitsPropertyPropertyInfo (410) */
   interface RmrkTraitsPropertyPropertyInfo extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name RmrkTraitsBaseBaseInfo (412) */
+  /** @name RmrkTraitsBaseBaseInfo (411) */
   interface RmrkTraitsBaseBaseInfo extends Struct {
     readonly issuer: AccountId32;
     readonly baseType: Bytes;
     readonly symbol: Bytes;
   }
 
-  /** @name RmrkTraitsNftNftChild (413) */
+  /** @name RmrkTraitsNftNftChild (412) */
   interface RmrkTraitsNftNftChild extends Struct {
     readonly collectionId: u32;
     readonly nftId: u32;
   }
 
-  /** @name PalletCommonError (415) */
+  /** @name PalletCommonError (414) */
   interface PalletCommonError extends Enum {
     readonly isCollectionNotFound: boolean;
     readonly isMustBeTokenOwner: boolean;
@@ -3514,7 +3503,7 @@
     readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal' | 'ConfirmSponsorshipFail' | 'UserIsNotCollectionAdmin';
   }
 
-  /** @name PalletFungibleError (417) */
+  /** @name PalletFungibleError (416) */
   interface PalletFungibleError extends Enum {
     readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isFungibleItemsHaveNoId: boolean;
@@ -3526,12 +3515,12 @@
     readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid';
   }
 
-  /** @name PalletRefungibleItemData (418) */
+  /** @name PalletRefungibleItemData (417) */
   interface PalletRefungibleItemData extends Struct {
     readonly constData: Bytes;
   }
 
-  /** @name PalletRefungibleError (423) */
+  /** @name PalletRefungibleError (422) */
   interface PalletRefungibleError extends Enum {
     readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isWrongRefungiblePieces: boolean;
@@ -3541,19 +3530,19 @@
     readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
   }
 
-  /** @name PalletNonfungibleItemData (424) */
+  /** @name PalletNonfungibleItemData (423) */
   interface PalletNonfungibleItemData extends Struct {
     readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name UpDataStructsPropertyScope (426) */
+  /** @name UpDataStructsPropertyScope (425) */
   interface UpDataStructsPropertyScope extends Enum {
     readonly isNone: boolean;
     readonly isRmrk: boolean;
     readonly type: 'None' | 'Rmrk';
   }
 
-  /** @name PalletNonfungibleError (428) */
+  /** @name PalletNonfungibleError (427) */
   interface PalletNonfungibleError extends Enum {
     readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isNonfungibleItemsHaveNoAmount: boolean;
@@ -3561,7 +3550,7 @@
     readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount' | 'CantBurnNftWithChildren';
   }
 
-  /** @name PalletStructureError (429) */
+  /** @name PalletStructureError (428) */
   interface PalletStructureError extends Enum {
     readonly isOuroborosDetected: boolean;
     readonly isDepthLimit: boolean;
@@ -3570,7 +3559,7 @@
     readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound';
   }
 
-  /** @name PalletRmrkCoreError (430) */
+  /** @name PalletRmrkCoreError (429) */
   interface PalletRmrkCoreError extends Enum {
     readonly isCorruptedCollectionType: boolean;
     readonly isRmrkPropertyKeyIsTooLong: boolean;
@@ -3594,7 +3583,7 @@
     readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId';
   }
 
-  /** @name PalletRmrkEquipError (432) */
+  /** @name PalletRmrkEquipError (431) */
   interface PalletRmrkEquipError extends Enum {
     readonly isPermissionError: boolean;
     readonly isNoAvailableBaseId: boolean;
@@ -3606,7 +3595,7 @@
     readonly type: 'PermissionError' | 'NoAvailableBaseId' | 'NoAvailablePartId' | 'BaseDoesntExist' | 'NeedsDefaultThemeFirst' | 'PartDoesntExist' | 'NoEquippableOnFixedPart';
   }
 
-  /** @name PalletAppPromotionError (438) */
+  /** @name PalletAppPromotionError (437) */
   interface PalletAppPromotionError extends Enum {
     readonly isAdminNotSet: boolean;
     readonly isNoPermission: boolean;
@@ -3617,7 +3606,7 @@
     readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation';
   }
 
-  /** @name PalletForeignAssetsModuleError (439) */
+  /** @name PalletForeignAssetsModuleError (438) */
   interface PalletForeignAssetsModuleError extends Enum {
     readonly isBadLocation: boolean;
     readonly isMultiLocationExisted: boolean;
@@ -3626,7 +3615,7 @@
     readonly type: 'BadLocation' | 'MultiLocationExisted' | 'AssetIdNotExists' | 'AssetIdExisted';
   }
 
-  /** @name PalletEvmError (441) */
+  /** @name PalletEvmError (440) */
   interface PalletEvmError extends Enum {
     readonly isBalanceLow: boolean;
     readonly isFeeOverflow: boolean;
@@ -3638,10 +3627,11 @@
     readonly isGasLimitTooHigh: boolean;
     readonly isUndefined: boolean;
     readonly isReentrancy: boolean;
-    readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy';
+    readonly isTransactionMustComeFromEOA: boolean;
+    readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy' | 'TransactionMustComeFromEOA';
   }
 
-  /** @name FpRpcTransactionStatus (444) */
+  /** @name FpRpcTransactionStatus (443) */
   interface FpRpcTransactionStatus extends Struct {
     readonly transactionHash: H256;
     readonly transactionIndex: u32;
@@ -3652,10 +3642,10 @@
     readonly logsBloom: EthbloomBloom;
   }
 
-  /** @name EthbloomBloom (446) */
+  /** @name EthbloomBloom (445) */
   interface EthbloomBloom extends U8aFixed {}
 
-  /** @name EthereumReceiptReceiptV3 (448) */
+  /** @name EthereumReceiptReceiptV3 (447) */
   interface EthereumReceiptReceiptV3 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumReceiptEip658ReceiptData;
@@ -3666,7 +3656,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumReceiptEip658ReceiptData (449) */
+  /** @name EthereumReceiptEip658ReceiptData (448) */
   interface EthereumReceiptEip658ReceiptData extends Struct {
     readonly statusCode: u8;
     readonly usedGas: U256;
@@ -3674,14 +3664,14 @@
     readonly logs: Vec<EthereumLog>;
   }
 
-  /** @name EthereumBlock (450) */
+  /** @name EthereumBlock (449) */
   interface EthereumBlock extends Struct {
     readonly header: EthereumHeader;
     readonly transactions: Vec<EthereumTransactionTransactionV2>;
     readonly ommers: Vec<EthereumHeader>;
   }
 
-  /** @name EthereumHeader (451) */
+  /** @name EthereumHeader (450) */
   interface EthereumHeader extends Struct {
     readonly parentHash: H256;
     readonly ommersHash: H256;
@@ -3700,24 +3690,24 @@
     readonly nonce: EthereumTypesHashH64;
   }
 
-  /** @name EthereumTypesHashH64 (452) */
+  /** @name EthereumTypesHashH64 (451) */
   interface EthereumTypesHashH64 extends U8aFixed {}
 
-  /** @name PalletEthereumError (457) */
+  /** @name PalletEthereumError (456) */
   interface PalletEthereumError extends Enum {
     readonly isInvalidSignature: boolean;
     readonly isPreLogExists: boolean;
     readonly type: 'InvalidSignature' | 'PreLogExists';
   }
 
-  /** @name PalletEvmCoderSubstrateError (458) */
+  /** @name PalletEvmCoderSubstrateError (457) */
   interface PalletEvmCoderSubstrateError extends Enum {
     readonly isOutOfGas: boolean;
     readonly isOutOfFund: boolean;
     readonly type: 'OutOfGas' | 'OutOfFund';
   }
 
-  /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (459) */
+  /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (458) */
   interface UpDataStructsSponsorshipStateBasicCrossAccountIdRepr extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -3727,7 +3717,7 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name PalletEvmContractHelpersSponsoringModeT (460) */
+  /** @name PalletEvmContractHelpersSponsoringModeT (459) */
   interface PalletEvmContractHelpersSponsoringModeT extends Enum {
     readonly isDisabled: boolean;
     readonly isAllowlisted: boolean;
@@ -3735,7 +3725,7 @@
     readonly type: 'Disabled' | 'Allowlisted' | 'Generous';
   }
 
-  /** @name PalletEvmContractHelpersError (466) */
+  /** @name PalletEvmContractHelpersError (465) */
   interface PalletEvmContractHelpersError extends Enum {
     readonly isNoPermission: boolean;
     readonly isNoPendingSponsor: boolean;
@@ -3743,7 +3733,7 @@
     readonly type: 'NoPermission' | 'NoPendingSponsor' | 'TooManyMethodsHaveSponsoredLimit';
   }
 
-  /** @name PalletEvmMigrationError (467) */
+  /** @name PalletEvmMigrationError (466) */
   interface PalletEvmMigrationError extends Enum {
     readonly isAccountNotEmpty: boolean;
     readonly isAccountIsNotMigrating: boolean;
@@ -3751,17 +3741,17 @@
     readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating' | 'BadEvent';
   }
 
-  /** @name PalletMaintenanceError (468) */
+  /** @name PalletMaintenanceError (467) */
   type PalletMaintenanceError = Null;
 
-  /** @name PalletTestUtilsError (469) */
+  /** @name PalletTestUtilsError (468) */
   interface PalletTestUtilsError extends Enum {
     readonly isTestPalletDisabled: boolean;
     readonly isTriggerRollback: boolean;
     readonly type: 'TestPalletDisabled' | 'TriggerRollback';
   }
 
-  /** @name SpRuntimeMultiSignature (471) */
+  /** @name SpRuntimeMultiSignature (470) */
   interface SpRuntimeMultiSignature extends Enum {
     readonly isEd25519: boolean;
     readonly asEd25519: SpCoreEd25519Signature;
@@ -3772,40 +3762,40 @@
     readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';
   }
 
-  /** @name SpCoreEd25519Signature (472) */
+  /** @name SpCoreEd25519Signature (471) */
   interface SpCoreEd25519Signature extends U8aFixed {}
 
-  /** @name SpCoreSr25519Signature (474) */
+  /** @name SpCoreSr25519Signature (473) */
   interface SpCoreSr25519Signature extends U8aFixed {}
 
-  /** @name SpCoreEcdsaSignature (475) */
+  /** @name SpCoreEcdsaSignature (474) */
   interface SpCoreEcdsaSignature extends U8aFixed {}
 
-  /** @name FrameSystemExtensionsCheckSpecVersion (478) */
+  /** @name FrameSystemExtensionsCheckSpecVersion (477) */
   type FrameSystemExtensionsCheckSpecVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckTxVersion (479) */
+  /** @name FrameSystemExtensionsCheckTxVersion (478) */
   type FrameSystemExtensionsCheckTxVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckGenesis (480) */
+  /** @name FrameSystemExtensionsCheckGenesis (479) */
   type FrameSystemExtensionsCheckGenesis = Null;
 
-  /** @name FrameSystemExtensionsCheckNonce (483) */
+  /** @name FrameSystemExtensionsCheckNonce (482) */
   interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}
 
-  /** @name FrameSystemExtensionsCheckWeight (484) */
+  /** @name FrameSystemExtensionsCheckWeight (483) */
   type FrameSystemExtensionsCheckWeight = Null;
 
-  /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (485) */
+  /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (484) */
   type OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance = Null;
 
-  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (486) */
+  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (485) */
   interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
 
-  /** @name OpalRuntimeRuntime (487) */
+  /** @name OpalRuntimeRuntime (486) */
   type OpalRuntimeRuntime = Null;
 
-  /** @name PalletEthereumFakeTransactionFinalizer (488) */
+  /** @name PalletEthereumFakeTransactionFinalizer (487) */
   type PalletEthereumFakeTransactionFinalizer = Null;
 
 } // declare module