git.delta.rocks / unique-network / refs/commits / 0d95470f91b8

difftreelog

Merge pull request #470 from UniqueNetwork/feature/rework-bulk-refungible-mint

Yaroslav Bolyukin2022-08-10parents: #467da92 #16c0f79.patch.diff
in: master
Rework bulk refungible mint

26 files changed

modifiedCargo.lockdiffbeforeafterboth
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -5722,7 +5722,7 @@
 
 [[package]]
 name = "pallet-common"
-version = "0.1.3"
+version = "0.1.4"
 dependencies = [
  "ethereum",
  "evm-coder",
@@ -5869,7 +5869,7 @@
 
 [[package]]
 name = "pallet-evm-coder-substrate"
-version = "0.1.0"
+version = "0.1.1"
 dependencies = [
  "ethereum",
  "evm-coder",
@@ -5887,7 +5887,7 @@
 
 [[package]]
 name = "pallet-evm-contract-helpers"
-version = "0.1.0"
+version = "0.1.1"
 dependencies = [
  "evm-coder",
  "fp-evm-mapping",
@@ -6189,7 +6189,7 @@
 
 [[package]]
 name = "pallet-nonfungible"
-version = "0.1.2"
+version = "0.1.3"
 dependencies = [
  "ethereum",
  "evm-coder",
@@ -6311,8 +6311,9 @@
 
 [[package]]
 name = "pallet-refungible"
-version = "0.2.1"
+version = "0.2.2"
 dependencies = [
+ "derivative",
  "ethereum",
  "evm-coder",
  "frame-benchmarking",
@@ -6333,7 +6334,7 @@
 
 [[package]]
 name = "pallet-rmrk-core"
-version = "0.1.0"
+version = "0.1.1"
 dependencies = [
  "derivative",
  "frame-benchmarking",
@@ -6354,7 +6355,7 @@
 
 [[package]]
 name = "pallet-rmrk-equip"
-version = "0.1.0"
+version = "0.1.1"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6484,7 +6485,7 @@
 
 [[package]]
 name = "pallet-structure"
-version = "0.1.0"
+version = "0.1.1"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6629,7 +6630,7 @@
 
 [[package]]
 name = "pallet-unique"
-version = "0.1.1"
+version = "0.1.2"
 dependencies = [
  "ethereum",
  "evm-coder",
@@ -12732,7 +12733,7 @@
 
 [[package]]
 name = "up-data-structs"
-version = "0.2.0"
+version = "0.2.1"
 dependencies = [
  "derivative",
  "frame-support",
@@ -12750,7 +12751,7 @@
 
 [[package]]
 name = "up-rpc"
-version = "0.1.1"
+version = "0.1.2"
 dependencies = [
  "pallet-common",
  "pallet-evm",
modifiedpallets/common/Cargo.tomldiffbeforeafterboth
--- a/pallets/common/Cargo.toml
+++ b/pallets/common/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-common"
-version = "0.1.3"
+version = "0.1.4"
 license = "GPLv3"
 edition = "2021"
 
modifiedpallets/evm-coder-substrate/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-coder-substrate/Cargo.toml
+++ b/pallets/evm-coder-substrate/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-evm-coder-substrate"
-version = "0.1.0"
+version = "0.1.1"
 license = "GPLv3"
 edition = "2021"
 
modifiedpallets/evm-contract-helpers/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-contract-helpers/Cargo.toml
+++ b/pallets/evm-contract-helpers/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-evm-contract-helpers"
-version = "0.1.0"
+version = "0.1.1"
 license = "GPLv3"
 edition = "2021"
 
modifiedpallets/inflation/Cargo.tomldiffbeforeafterboth
--- a/pallets/inflation/Cargo.toml
+++ b/pallets/inflation/Cargo.toml
@@ -9,7 +9,7 @@
 license = 'GPLv3'
 name = 'pallet-inflation'
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.1.0'
+version = "0.1.0"
 
 [package.metadata.docs.rs]
 targets = ['x86_64-unknown-linux-gnu']
modifiedpallets/nonfungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/nonfungible/Cargo.toml
+++ b/pallets/nonfungible/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-nonfungible"
-version = "0.1.2"
+version = "0.1.3"
 license = "GPLv3"
 edition = "2021"
 
modifiedpallets/proxy-rmrk-core/Cargo.tomldiffbeforeafterboth
--- a/pallets/proxy-rmrk-core/Cargo.toml
+++ b/pallets/proxy-rmrk-core/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-rmrk-core"
-version = "0.1.0"
+version = "0.1.1"
 license = "GPLv3"
 edition = "2021"
 
modifiedpallets/proxy-rmrk-equip/Cargo.tomldiffbeforeafterboth
--- a/pallets/proxy-rmrk-equip/Cargo.toml
+++ b/pallets/proxy-rmrk-equip/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-rmrk-equip"
-version = "0.1.0"
+version = "0.1.1"
 license = "GPLv3"
 edition = "2021"
 
modifiedpallets/refungible/CHANGELOG.mddiffbeforeafterboth
--- a/pallets/refungible/CHANGELOG.md
+++ b/pallets/refungible/CHANGELOG.md
@@ -2,6 +2,25 @@
 
 All notable changes to this project will be documented in this file.
 
+<!-- bureaucrate goes here -->
+## [v0.2.2] 2022-08-04
+
+### Product changes
+
+- Now RefungibleMultipleItems may only receive single user on type level.
+
+### Added features
+
+- Implement property RPC 7bf45b532e32daa91f03c157b58874d21b42ae1f
+
+### Other changes
+
+- refactor: Disallow invalid bulk mints 53fec71cf728dddd012257b407ea30441e699f88
+
+`create_multiple_items_ex` was allowing invalid (that will be always
+rejected at runtime level) refungible mint extrinsics, by passing
+multiple users into `RefungibleMultipleItems` call.
+
 ## [v0.2.1] - 2022-07-27
 
 ### New features
modifiedpallets/refungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/refungible/Cargo.toml
+++ b/pallets/refungible/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-refungible"
-version = "0.2.1"
+version = "0.2.2"
 license = "GPLv3"
 edition = "2021"
 
@@ -28,6 +28,7 @@
 sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+derivative = { version = "2.2.0", features = ["use_core"] }
 
 [features]
 default = ["std"]
modifiedpallets/refungible/src/common.rsdiffbeforeafterboth
--- a/pallets/refungible/src/common.rs
+++ b/pallets/refungible/src/common.rs
@@ -19,8 +19,9 @@
 use sp_std::collections::btree_map::BTreeMap;
 use frame_support::{dispatch::DispatchResultWithPostInfo, ensure, fail, weights::Weight, traits::Get};
 use up_data_structs::{
-	CollectionId, TokenId, CreateItemExData, CreateRefungibleExData, budget::Budget, Property,
-	PropertyKey, PropertyValue, PropertyKeyPermission, CreateItemData, CollectionPropertiesVec,
+	CollectionId, TokenId, CreateItemExData, budget::Budget, Property, PropertyKey, PropertyValue,
+	PropertyKeyPermission, CollectionPropertiesVec, CreateRefungibleExMultipleOwners,
+	CreateRefungibleExSingleOwner,
 };
 use pallet_common::{
 	CommonCollectionOperations, CommonWeightInfo, RefungibleExtensions, with_weight,
@@ -32,7 +33,7 @@
 
 use crate::{
 	AccountBalance, Allowance, Balance, Config, Error, Owned, Pallet, RefungibleHandle,
-	SelfWeightOf, TokenData, weights::WeightInfo, TokensMinted, TotalSupply,
+	SelfWeightOf, weights::WeightInfo, TokensMinted, TotalSupply, CreateItemData,
 };
 
 macro_rules! max_weight_of {
@@ -58,11 +59,11 @@
 		<SelfWeightOf<T>>::create_item()
 	}
 
-	fn create_multiple_items(data: &[CreateItemData]) -> Weight {
+	fn create_multiple_items(data: &[up_data_structs::CreateItemData]) -> Weight {
 		<SelfWeightOf<T>>::create_multiple_items(data.len() as u32).saturating_add(
 			data.iter()
 				.map(|data| match data {
-					CreateItemData::ReFungible(rft_data) => {
+					up_data_structs::CreateItemData::ReFungible(rft_data) => {
 						properties_weight::<T>(&rft_data.properties)
 					}
 					_ => 0,
@@ -152,9 +153,9 @@
 fn map_create_data<T: Config>(
 	data: up_data_structs::CreateItemData,
 	to: &T::CrossAccountId,
-) -> Result<CreateRefungibleExData<T::CrossAccountId>, DispatchError> {
+) -> Result<CreateItemData<T::CrossAccountId>, DispatchError> {
 	match data {
-		up_data_structs::CreateItemData::ReFungible(data) => Ok(CreateRefungibleExData {
+		up_data_structs::CreateItemData::ReFungible(data) => Ok(CreateItemData {
 			users: {
 				let mut out = BTreeMap::new();
 				out.insert(to.clone(), data.pieces);
@@ -214,12 +215,26 @@
 	) -> DispatchResultWithPostInfo {
 		let weight = <CommonWeights<T>>::create_multiple_items_ex(&data);
 		let data = match data {
-			CreateItemExData::RefungibleMultipleOwners(r) => vec![r],
-			CreateItemExData::RefungibleMultipleItems(r)
-				if r.iter().all(|i| i.users.len() == 1) =>
-			{
-				r.into_inner()
-			}
+			CreateItemExData::RefungibleMultipleOwners(CreateRefungibleExMultipleOwners {
+				users,
+				properties,
+			}) => vec![CreateItemData { users, properties }],
+			CreateItemExData::RefungibleMultipleItems(r) => r
+				.into_inner()
+				.into_iter()
+				.map(
+					|CreateRefungibleExSingleOwner {
+					     user,
+					     pieces,
+					     properties,
+					 }| CreateItemData {
+						users: BTreeMap::from([(user, pieces)])
+							.try_into()
+							.expect("limit >= 1"),
+						properties,
+					},
+				)
+				.collect(),
 			_ => fail!(<Error<T>>::NotRefungibleDataUsedToMintFungibleCollectionToken),
 		};
 
@@ -442,16 +457,31 @@
 		<Pallet<T>>::token_owners(self.id, token).unwrap_or_default()
 	}
 
-	fn token_property(&self, _token_id: TokenId, _key: &PropertyKey) -> Option<PropertyValue> {
-		None
+	fn token_property(&self, token_id: TokenId, key: &PropertyKey) -> Option<PropertyValue> {
+		<Pallet<T>>::token_properties((self.id, token_id))
+			.get(key)
+			.cloned()
 	}
 
-	fn token_properties(
-		&self,
-		_token_id: TokenId,
-		_keys: Option<Vec<PropertyKey>>,
-	) -> Vec<Property> {
-		Vec::new()
+	fn token_properties(&self, token_id: TokenId, keys: Option<Vec<PropertyKey>>) -> Vec<Property> {
+		let properties = <Pallet<T>>::token_properties((self.id, token_id));
+
+		keys.map(|keys| {
+			keys.into_iter()
+				.filter_map(|key| {
+					properties.get(&key).map(|value| Property {
+						key,
+						value: value.clone(),
+					})
+				})
+				.collect()
+		})
+		.unwrap_or_else(|| {
+			properties
+				.into_iter()
+				.map(|(key, value)| Property { key, value })
+				.collect()
+		})
 	}
 
 	fn total_supply(&self) -> u32 {
modifiedpallets/refungible/src/erc.rsdiffbeforeafterboth
--- a/pallets/refungible/src/erc.rs
+++ b/pallets/refungible/src/erc.rs
@@ -27,7 +27,7 @@
 	convert::TryInto,
 };
 use evm_coder::{ToLog, execution::*, generate_stubgen, solidity, solidity_interface, types::*, weight};
-use frame_support::{BoundedBTreeMap, BoundedVec};
+use frame_support::BoundedBTreeMap;
 use pallet_common::{
 	CollectionHandle, CollectionPropertyPermissions,
 	erc::{
@@ -494,7 +494,7 @@
 		<Pallet<T>>::create_item(
 			self,
 			&caller,
-			CreateItemData::<T> {
+			CreateItemData::<T::CrossAccountId> {
 				users,
 				properties: CollectionPropertiesVec::default(),
 			},
@@ -560,7 +560,7 @@
 		<Pallet<T>>::create_item(
 			self,
 			&caller,
-			CreateItemData::<T> { users, properties },
+			CreateItemData::<T::CrossAccountId> { users, properties },
 			&budget,
 		)
 		.map_err(dispatch_to_evm::<T>)?;
@@ -717,7 +717,7 @@
 			.collect::<BTreeMap<_, _>>()
 			.try_into()
 			.unwrap();
-		let create_item_data = CreateItemData::<T> {
+		let create_item_data = CreateItemData::<T::CrossAccountId> {
 			users,
 			properties: CollectionPropertiesVec::default(),
 		};
@@ -777,7 +777,7 @@
 				})
 				.map_err(|e| Error::Revert(alloc::format!("Can't add property: {:?}", e)))?;
 
-			let create_item_data = CreateItemData::<T> {
+			let create_item_data = CreateItemData::<T::CrossAccountId> {
 				users: users.clone(),
 				properties,
 			};
modifiedpallets/refungible/src/lib.rsdiffbeforeafterboth
--- a/pallets/refungible/src/lib.rs
+++ b/pallets/refungible/src/lib.rs
@@ -93,7 +93,9 @@
 use codec::{Encode, Decode, MaxEncodedLen};
 use core::ops::Deref;
 use evm_coder::ToLog;
-use frame_support::{BoundedVec, ensure, fail, storage::with_transaction, transactional};
+use frame_support::{
+	BoundedVec, ensure, fail, storage::with_transaction, transactional, pallet_prelude::ConstU32,
+};
 use pallet_evm::{account::CrossAccountId, Pallet as PalletEvm};
 use pallet_evm_coder_substrate::WithRecorder;
 use pallet_common::{
@@ -106,11 +108,13 @@
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult, TransactionOutcome};
 use sp_std::{vec::Vec, vec, collections::btree_map::BTreeMap};
 use up_data_structs::{
-	AccessMode, budget::Budget, CollectionId, CreateCollectionData, CreateRefungibleExData,
-	CustomDataLimit, mapping::TokenAddressMapping, MAX_REFUNGIBLE_PIECES, TokenId, Property,
+	AccessMode, budget::Budget, CollectionId, CreateCollectionData, CustomDataLimit,
+	mapping::TokenAddressMapping, MAX_REFUNGIBLE_PIECES, MAX_ITEMS_PER_BATCH, TokenId, Property,
 	PropertyKey, PropertyKeyPermission, PropertyPermission, PropertyScope, PropertyValue,
-	TrySetProperty,
+	TrySetProperty, CollectionPropertiesVec,
 };
+use frame_support::BoundedBTreeMap;
+use derivative::Derivative;
 
 pub use pallet::*;
 #[cfg(feature = "runtime-benchmarks")]
@@ -120,8 +124,13 @@
 pub mod erc_token;
 pub mod weights;
 
-pub type CreateItemData<T> =
-	CreateRefungibleExData<<T as pallet_evm::account::Config>::CrossAccountId>;
+#[derive(Derivative, Clone)]
+pub struct CreateItemData<CrossAccountId> {
+	#[derivative(Debug(format_with = "bounded::map_debug"))]
+	pub users: BoundedBTreeMap<CrossAccountId, u128, ConstU32<MAX_ITEMS_PER_BATCH>>,
+	#[derivative(Debug(format_with = "bounded::vec_debug"))]
+	pub properties: CollectionPropertiesVec,
+}
 pub(crate) type SelfWeightOf<T> = <T as Config>::WeightInfo;
 
 /// Token data, stored independently from other data used to describe it
@@ -873,7 +882,7 @@
 	pub fn create_multiple_items(
 		collection: &RefungibleHandle<T>,
 		sender: &T::CrossAccountId,
-		data: Vec<CreateItemData<T>>,
+		data: Vec<CreateItemData<T::CrossAccountId>>,
 		nesting_budget: &dyn Budget,
 	) -> DispatchResult {
 		if !collection.is_owner_or_admin(sender) {
@@ -1213,7 +1222,7 @@
 	pub fn create_item(
 		collection: &RefungibleHandle<T>,
 		sender: &T::CrossAccountId,
-		data: CreateItemData<T>,
+		data: CreateItemData<T::CrossAccountId>,
 		nesting_budget: &dyn Budget,
 	) -> DispatchResult {
 		Self::create_multiple_items(collection, sender, vec![data], nesting_budget)
modifiedpallets/structure/Cargo.tomldiffbeforeafterboth
--- a/pallets/structure/Cargo.toml
+++ b/pallets/structure/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-structure"
-version = "0.1.0"
+version = "0.1.1"
 edition = "2021"
 
 [dependencies]
modifiedpallets/unique/Cargo.tomldiffbeforeafterboth
--- a/pallets/unique/Cargo.toml
+++ b/pallets/unique/Cargo.toml
@@ -9,7 +9,7 @@
 license = 'GPLv3'
 name = 'pallet-unique'
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.1.1'
+version = "0.1.2"
 
 [package.metadata.docs.rs]
 targets = ['x86_64-unknown-linux-gnu']
modifiedprimitives/data-structs/CHANGELOG.mddiffbeforeafterboth
--- a/primitives/data-structs/CHANGELOG.md
+++ b/primitives/data-structs/CHANGELOG.md
@@ -2,6 +2,21 @@
 
 All notable changes to this project will be documented in this file.
 
+<!-- bureaucrate goes here -->
+## [v0.2.1] 2022-08-04
+
+### Product changes
+
+- Now RefungibleMultipleItems may only receive single user on type level.
+
+### Other changes
+
+- refactor: Disallow invalid bulk mints 53fec71cf728dddd012257b407ea30441e699f88
+
+`create_multiple_items_ex` was allowing invalid (that will be always
+rejected at runtime level) refungible mint extrinsics, by passing
+multiple users into `RefungibleMultipleItems` call.
+
 ## [v0.2.0] - 2022-08-01
 ### Deprecated
 - `CreateReFungibleData::const_data`
@@ -11,4 +26,4 @@
 - Type aliases `CollectionName`, `CollectionDescription`, `CollectionTokenPrefix`
 ## [v0.1.1] - 2022-07-22
 ### Added
-- Аields with properties to `CreateReFungibleData` and `CreateRefungibleExData`.
\ No newline at end of file
+- Аields with properties to `CreateReFungibleData` and `CreateRefungibleExData`.
modifiedprimitives/data-structs/Cargo.tomldiffbeforeafterboth
--- a/primitives/data-structs/Cargo.toml
+++ b/primitives/data-structs/Cargo.toml
@@ -6,7 +6,7 @@
 license = 'GPLv3'
 homepage = "https://unique.network"
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.2.0'
+version = "0.2.1"
 
 [dependencies]
 scale-info = { version = "2.0.1", default-features = false, features = [
modifiedprimitives/data-structs/src/lib.rsdiffbeforeafterboth
--- a/primitives/data-structs/src/lib.rs
+++ b/primitives/data-structs/src/lib.rs
@@ -826,13 +826,23 @@
 /// Extended data for create ReFungible item.
 #[derive(Encode, Decode, MaxEncodedLen, PartialEq, Clone, TypeInfo, Derivative)]
 #[derivative(Debug(bound = "CrossAccountId: fmt::Debug + Ord"))]
-pub struct CreateRefungibleExData<CrossAccountId> {
+pub struct CreateRefungibleExMultipleOwners<CrossAccountId> {
 	#[derivative(Debug(format_with = "bounded::map_debug"))]
 	pub users: BoundedBTreeMap<CrossAccountId, u128, ConstU32<MAX_ITEMS_PER_BATCH>>,
 	#[derivative(Debug(format_with = "bounded::vec_debug"))]
 	pub properties: CollectionPropertiesVec,
 }
 
+/// Extended data for create ReFungible item.
+#[derive(Encode, Decode, MaxEncodedLen, PartialEq, Clone, TypeInfo, Derivative)]
+#[derivative(Debug(bound = "CrossAccountId: fmt::Debug"))]
+pub struct CreateRefungibleExSingleOwner<CrossAccountId> {
+	pub user: CrossAccountId,
+	pub pieces: u128,
+	#[derivative(Debug(format_with = "bounded::vec_debug"))]
+	pub properties: CollectionPropertiesVec,
+}
+
 /// Unified extended data for creating item.
 #[derive(Encode, Decode, MaxEncodedLen, PartialEq, Clone, TypeInfo, Derivative)]
 #[derivative(Debug(bound = "CrossAccountId: fmt::Debug + Ord"))]
@@ -853,12 +863,12 @@
 	/// many tokens, each may have only one owner
 	RefungibleMultipleItems(
 		#[derivative(Debug(format_with = "bounded::vec_debug"))]
-		BoundedVec<CreateRefungibleExData<CrossAccountId>, ConstU32<MAX_ITEMS_PER_BATCH>>,
+		BoundedVec<CreateRefungibleExSingleOwner<CrossAccountId>, ConstU32<MAX_ITEMS_PER_BATCH>>,
 	),
 
 	/// Extended data for create ReFungible item in case of
 	/// single token, which may have many owners
-	RefungibleMultipleOwners(CreateRefungibleExData<CrossAccountId>),
+	RefungibleMultipleOwners(CreateRefungibleExMultipleOwners<CrossAccountId>),
 }
 
 impl From<CreateNftData> for CreateItemData {
modifiedprimitives/rmrk-traits/Cargo.tomldiffbeforeafterboth
--- a/primitives/rmrk-traits/Cargo.toml
+++ b/primitives/rmrk-traits/Cargo.toml
@@ -6,7 +6,7 @@
 license = 'GPLv3'
 homepage = "https://unique.network"
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.1.0'
+version = "0.1.0"
 
 [dependencies]
 scale-info = { version = "2.0.1", default-features = false, features = ["derive"] }
modifiedprimitives/rpc/Cargo.tomldiffbeforeafterboth
--- a/primitives/rpc/Cargo.toml
+++ b/primitives/rpc/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "up-rpc"
-version = "0.1.1"
+version = "0.1.2"
 license = "GPLv3"
 edition = "2021"
 
modifiedtests/src/createMultipleItemsEx.test.tsdiffbeforeafterboth
--- a/tests/src/createMultipleItemsEx.test.ts
+++ b/tests/src/createMultipleItemsEx.test.ts
@@ -16,9 +16,9 @@
 
 import {expect} from 'chai';
 import usingApi, {executeTransaction} from './substrate/substrate-api';
-import {addCollectionAdminExpectSuccess, createCollectionExpectSuccess, createCollectionWithPropsExpectSuccess, getBalance, getLastTokenId} from './util/helpers';
+import {addCollectionAdminExpectSuccess, createCollectionExpectSuccess, createCollectionWithPropsExpectSuccess, getBalance, getLastTokenId, getTokenProperties} from './util/helpers';
 
-describe('Integration Test: createMultipleItemsEx', () => {
+describe.only('Integration Test: createMultipleItemsEx', () => {
   it('can initialize multiple NFT with different owners', async () => {
     const collection = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
     await usingApi(async (api, privateKeyWrapper) => {
@@ -134,12 +134,11 @@
       const alice = privateKeyWrapper('//Alice');
       const bob = privateKeyWrapper('//Bob');
 
-      const users = new Map();
-      users.set(JSON.stringify({Substrate: alice.address}), 50);
-      users.set(JSON.stringify({Substrate: bob.address}), 100);
-
       await executeTransaction(api, alice, api.tx.unique.createMultipleItemsEx(collection, {
-        Fungible: users,
+        Fungible: new Map([
+          [JSON.stringify({Substrate: alice.address}), 50],
+          [JSON.stringify({Substrate: bob.address}), 100],
+        ]),
       }));
 
       expect(await getBalance(api, collection, alice.address, 0)).to.equal(50n);
@@ -148,52 +147,71 @@
   });
 
   it('can initialize an RFT with multiple owners', async () => {
-    const collection = await createCollectionExpectSuccess({mode: {type: 'ReFungible'}});
     await usingApi(async (api, privateKeyWrapper) => {
       const alice = privateKeyWrapper('//Alice');
       const bob = privateKeyWrapper('//Bob');
-
-      const users = new Map();
-      users.set(JSON.stringify({Substrate: alice.address}), 1);
-      users.set(JSON.stringify({Substrate: bob.address}), 2);
+      const collection = await createCollectionExpectSuccess({mode: {type: 'ReFungible'}});
+      await executeTransaction(
+        api,
+        alice,
+        api.tx.unique.setTokenPropertyPermissions(collection, [{key: 'data', permission: {tokenOwner: true}}]),
+      );
 
       await executeTransaction(api, alice, api.tx.unique.createMultipleItemsEx(collection, {
         RefungibleMultipleOwners: {
-          users: users,
+          users: new Map([
+            [JSON.stringify({Substrate: alice.address}), 1],
+            [JSON.stringify({Substrate: bob.address}), 2],
+          ]),
+          properties: [
+            {key: 'data', value: 'testValue'},
+          ],
         },
       }));
-      
+
       const itemsListIndexAfter = await getLastTokenId(api, collection);
       expect(itemsListIndexAfter).to.be.equal(1);
 
       expect(await getBalance(api, collection, alice.address, 1)).to.be.equal(1n);
       expect(await getBalance(api, collection, bob.address, 1)).to.be.equal(2n);
+      expect((await getTokenProperties(api, collection, 1, ['data']))[0].value).to.be.equal('testValue');
     });
   });
 
   it('can initialize multiple RFTs with the same owner', async () => {
-    const collection = await createCollectionExpectSuccess({mode: {type: 'ReFungible'}});
     await usingApi(async (api, privateKeyWrapper) => {
       const alice = privateKeyWrapper('//Alice');
-
-      const item1User = new Map();
-      item1User.set(JSON.stringify({Substrate: alice.address}), 1);
-
-      const item2User = new Map();
-      item2User.set(JSON.stringify({Substrate: alice.address}), 3);
+      const collection = await createCollectionExpectSuccess({mode: {type: 'ReFungible'}});
+      await executeTransaction(
+        api,
+        alice,
+        api.tx.unique.setTokenPropertyPermissions(collection, [{key: 'data', permission: {tokenOwner: true}}]),
+      );
 
       await executeTransaction(api, alice, api.tx.unique.createMultipleItemsEx(collection, {
         RefungibleMultipleItems: [
-          {users: item1User},
-          {users: item2User},
+          {
+            user: {Substrate: alice.address}, pieces: 1,
+            properties: [
+              {key: 'data', value: 'testValue1'},
+            ],
+          },
+          {
+            user: {Substrate: alice.address}, pieces: 3,
+            properties: [
+              {key: 'data', value: 'testValue2'},
+            ],
+          },
         ],
       }));
-      
+
       const itemsListIndexAfter = await getLastTokenId(api, collection);
       expect(itemsListIndexAfter).to.be.equal(2);
 
       expect(await getBalance(api, collection, alice.address, 1)).to.be.equal(1n);
       expect(await getBalance(api, collection, alice.address, 2)).to.be.equal(3n);
+      expect((await getTokenProperties(api, collection, 1, ['data']))[0].value).to.be.equal('testValue1');
+      expect((await getTokenProperties(api, collection, 2, ['data']))[0].value).to.be.equal('testValue2');
     });
   });
 });
@@ -373,7 +391,7 @@
 
   it('fails when trying to set multiple owners when creating multiple refungibles', async () => {
     const collection = await createCollectionExpectSuccess({mode: {type: 'ReFungible'}});
-    
+
     await usingApi(async (api, privateKeyWrapper) => {
       const alice = privateKeyWrapper('//Alice');
       const bob = privateKeyWrapper('//Bob');
modifiedtests/src/interfaces/augment-types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-types.ts
+++ b/tests/src/interfaces/augment-types.ts
@@ -1,7 +1,7 @@
 // Auto-generated via `yarn polkadot-types-from-defs`, do not edit
 /* eslint-disable */
 
-import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, 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, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, 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, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, 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, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, 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, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, 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, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default';
 import type { Data, StorageKey } from '@polkadot/types';
 import type { BitVec, Bool, Bytes, I128, I16, I256, I32, I64, I8, Json, Null, OptionBool, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, 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';
@@ -1216,7 +1216,8 @@
     UpDataStructsCreateNftData: UpDataStructsCreateNftData;
     UpDataStructsCreateNftExData: UpDataStructsCreateNftExData;
     UpDataStructsCreateReFungibleData: UpDataStructsCreateReFungibleData;
-    UpDataStructsCreateRefungibleExData: UpDataStructsCreateRefungibleExData;
+    UpDataStructsCreateRefungibleExMultipleOwners: UpDataStructsCreateRefungibleExMultipleOwners;
+    UpDataStructsCreateRefungibleExSingleOwner: UpDataStructsCreateRefungibleExSingleOwner;
     UpDataStructsNestingPermissions: UpDataStructsNestingPermissions;
     UpDataStructsOwnerRestrictedSet: UpDataStructsOwnerRestrictedSet;
     UpDataStructsProperties: UpDataStructsProperties;
modifiedtests/src/interfaces/default/types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/default/types.ts
+++ b/tests/src/interfaces/default/types.ts
@@ -2439,9 +2439,9 @@
   readonly isFungible: boolean;
   readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr,u128>;
   readonly isRefungibleMultipleItems: boolean;
-  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;
+  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExSingleOwner>;
   readonly isRefungibleMultipleOwners: boolean;
-  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;
+  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExMultipleOwners;
   readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';
 }
 
@@ -2462,12 +2462,19 @@
   readonly properties: Vec<UpDataStructsProperty>;
 }
 
-/** @name UpDataStructsCreateRefungibleExData */
-export interface UpDataStructsCreateRefungibleExData extends Struct {
+/** @name UpDataStructsCreateRefungibleExMultipleOwners */
+export interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct {
   readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
   readonly properties: Vec<UpDataStructsProperty>;
 }
 
+/** @name UpDataStructsCreateRefungibleExSingleOwner */
+export interface UpDataStructsCreateRefungibleExSingleOwner extends Struct {
+  readonly user: PalletEvmAccountBasicCrossAccountIdRepr;
+  readonly pieces: u128;
+  readonly properties: Vec<UpDataStructsProperty>;
+}
+
 /** @name UpDataStructsNestingPermissions */
 export interface UpDataStructsNestingPermissions extends Struct {
   readonly tokenOwner: bool;
modifiedtests/src/interfaces/lookup.tsdiffbeforeafterboth
1511 _enum: {1511 _enum: {
1512 NFT: 'Vec<UpDataStructsCreateNftExData>',1512 NFT: 'Vec<UpDataStructsCreateNftExData>',
1513 Fungible: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',1513 Fungible: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',
1514 RefungibleMultipleItems: 'Vec<UpDataStructsCreateRefungibleExData>',1514 RefungibleMultipleItems: 'Vec<UpDataStructsCreateRefungibleExSingleOwner>',
1515 RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExData'1515 RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExMultipleOwners'
1516 }1516 }
1517 },1517 },
1518 /**1518 /**
1522 properties: 'Vec<UpDataStructsProperty>',1522 properties: 'Vec<UpDataStructsProperty>',
1523 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'1523 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
1524 },1524 },
1525 /**1525 /**
1526 * Lookup201: up_data_structs::CreateRefungibleExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>1526 * Lookup201: up_data_structs::CreateRefungibleExSingleOwner<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
1527 **/1527 **/
1528 UpDataStructsCreateRefungibleExSingleOwner: {
1529 user: 'PalletEvmAccountBasicCrossAccountIdRepr',
1530 pieces: 'u128',
1531 properties: 'Vec<UpDataStructsProperty>'
1532 },
1533 /**
1534 * Lookup203: up_data_structs::CreateRefungibleExMultipleOwners<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
1535 **/
1528 UpDataStructsCreateRefungibleExData: {1536 UpDataStructsCreateRefungibleExMultipleOwners: {
1529 users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',1537 users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',
1530 properties: 'Vec<UpDataStructsProperty>'1538 properties: 'Vec<UpDataStructsProperty>'
1531 },1539 },
1532 /**1540 /**
1533 * Lookup203: pallet_unique_scheduler::pallet::Call<T>1541 * Lookup204: pallet_unique_scheduler::pallet::Call<T>
1534 **/1542 **/
1535 PalletUniqueSchedulerCall: {1543 PalletUniqueSchedulerCall: {
1536 _enum: {1544 _enum: {
1537 schedule_named: {1545 schedule_named: {
1553 }1561 }
1554 }1562 }
1555 },1563 },
1556 /**1564 /**
1557 * Lookup205: frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>1565 * Lookup206: frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>
1558 **/1566 **/
1559 FrameSupportScheduleMaybeHashed: {1567 FrameSupportScheduleMaybeHashed: {
1560 _enum: {1568 _enum: {
1561 Value: 'Call',1569 Value: 'Call',
1562 Hash: 'H256'1570 Hash: 'H256'
1563 }1571 }
1564 },1572 },
1565 /**1573 /**
1566 * Lookup206: pallet_template_transaction_payment::Call<T>1574 * Lookup207: pallet_template_transaction_payment::Call<T>
1567 **/1575 **/
1568 PalletTemplateTransactionPaymentCall: 'Null',1576 PalletTemplateTransactionPaymentCall: 'Null',
1569 /**1577 /**
1570 * Lookup207: pallet_structure::pallet::Call<T>1578 * Lookup208: pallet_structure::pallet::Call<T>
1571 **/1579 **/
1572 PalletStructureCall: 'Null',1580 PalletStructureCall: 'Null',
1573 /**1581 /**
1574 * Lookup208: pallet_rmrk_core::pallet::Call<T>1582 * Lookup209: pallet_rmrk_core::pallet::Call<T>
1575 **/1583 **/
1576 PalletRmrkCoreCall: {1584 PalletRmrkCoreCall: {
1577 _enum: {1585 _enum: {
1578 create_collection: {1586 create_collection: {
1661 }1669 }
1662 }1670 }
1663 },1671 },
1664 /**1672 /**
1665 * Lookup214: rmrk_traits::resource::ResourceTypes<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1673 * Lookup215: rmrk_traits::resource::ResourceTypes<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>
1666 **/1674 **/
1667 RmrkTraitsResourceResourceTypes: {1675 RmrkTraitsResourceResourceTypes: {
1668 _enum: {1676 _enum: {
1669 Basic: 'RmrkTraitsResourceBasicResource',1677 Basic: 'RmrkTraitsResourceBasicResource',
1670 Composable: 'RmrkTraitsResourceComposableResource',1678 Composable: 'RmrkTraitsResourceComposableResource',
1671 Slot: 'RmrkTraitsResourceSlotResource'1679 Slot: 'RmrkTraitsResourceSlotResource'
1672 }1680 }
1673 },1681 },
1674 /**1682 /**
1675 * Lookup216: rmrk_traits::resource::BasicResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1683 * Lookup217: rmrk_traits::resource::BasicResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>
1676 **/1684 **/
1677 RmrkTraitsResourceBasicResource: {1685 RmrkTraitsResourceBasicResource: {
1678 src: 'Option<Bytes>',1686 src: 'Option<Bytes>',
1679 metadata: 'Option<Bytes>',1687 metadata: 'Option<Bytes>',
1680 license: 'Option<Bytes>',1688 license: 'Option<Bytes>',
1681 thumb: 'Option<Bytes>'1689 thumb: 'Option<Bytes>'
1682 },1690 },
1683 /**1691 /**
1684 * Lookup218: rmrk_traits::resource::ComposableResource<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1692 * Lookup219: rmrk_traits::resource::ComposableResource<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>
1685 **/1693 **/
1686 RmrkTraitsResourceComposableResource: {1694 RmrkTraitsResourceComposableResource: {
1687 parts: 'Vec<u32>',1695 parts: 'Vec<u32>',
1688 base: 'u32',1696 base: 'u32',
1691 license: 'Option<Bytes>',1699 license: 'Option<Bytes>',
1692 thumb: 'Option<Bytes>'1700 thumb: 'Option<Bytes>'
1693 },1701 },
1694 /**1702 /**
1695 * Lookup219: rmrk_traits::resource::SlotResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1703 * Lookup220: rmrk_traits::resource::SlotResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>
1696 **/1704 **/
1697 RmrkTraitsResourceSlotResource: {1705 RmrkTraitsResourceSlotResource: {
1698 base: 'u32',1706 base: 'u32',
1699 src: 'Option<Bytes>',1707 src: 'Option<Bytes>',
1702 license: 'Option<Bytes>',1710 license: 'Option<Bytes>',
1703 thumb: 'Option<Bytes>'1711 thumb: 'Option<Bytes>'
1704 },1712 },
1705 /**1713 /**
1706 * Lookup221: rmrk_traits::nft::AccountIdOrCollectionNftTuple<sp_core::crypto::AccountId32>1714 * Lookup222: rmrk_traits::nft::AccountIdOrCollectionNftTuple<sp_core::crypto::AccountId32>
1707 **/1715 **/
1708 RmrkTraitsNftAccountIdOrCollectionNftTuple: {1716 RmrkTraitsNftAccountIdOrCollectionNftTuple: {
1709 _enum: {1717 _enum: {
1710 AccountId: 'AccountId32',1718 AccountId: 'AccountId32',
1711 CollectionAndNftTuple: '(u32,u32)'1719 CollectionAndNftTuple: '(u32,u32)'
1712 }1720 }
1713 },1721 },
1714 /**1722 /**
1715 * Lookup225: pallet_rmrk_equip::pallet::Call<T>1723 * Lookup226: pallet_rmrk_equip::pallet::Call<T>
1716 **/1724 **/
1717 PalletRmrkEquipCall: {1725 PalletRmrkEquipCall: {
1718 _enum: {1726 _enum: {
1719 create_base: {1727 create_base: {
1732 }1740 }
1733 }1741 }
1734 },1742 },
1735 /**1743 /**
1736 * Lookup228: rmrk_traits::part::PartType<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1744 * Lookup229: rmrk_traits::part::PartType<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>
1737 **/1745 **/
1738 RmrkTraitsPartPartType: {1746 RmrkTraitsPartPartType: {
1739 _enum: {1747 _enum: {
1740 FixedPart: 'RmrkTraitsPartFixedPart',1748 FixedPart: 'RmrkTraitsPartFixedPart',
1741 SlotPart: 'RmrkTraitsPartSlotPart'1749 SlotPart: 'RmrkTraitsPartSlotPart'
1742 }1750 }
1743 },1751 },
1744 /**1752 /**
1745 * Lookup230: rmrk_traits::part::FixedPart<frame_support::storage::bounded_vec::BoundedVec<T, S>>1753 * Lookup231: rmrk_traits::part::FixedPart<frame_support::storage::bounded_vec::BoundedVec<T, S>>
1746 **/1754 **/
1747 RmrkTraitsPartFixedPart: {1755 RmrkTraitsPartFixedPart: {
1748 id: 'u32',1756 id: 'u32',
1749 z: 'u32',1757 z: 'u32',
1750 src: 'Bytes'1758 src: 'Bytes'
1751 },1759 },
1752 /**1760 /**
1753 * Lookup231: rmrk_traits::part::SlotPart<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1761 * Lookup232: rmrk_traits::part::SlotPart<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>
1754 **/1762 **/
1755 RmrkTraitsPartSlotPart: {1763 RmrkTraitsPartSlotPart: {
1756 id: 'u32',1764 id: 'u32',
1757 equippable: 'RmrkTraitsPartEquippableList',1765 equippable: 'RmrkTraitsPartEquippableList',
1758 src: 'Bytes',1766 src: 'Bytes',
1759 z: 'u32'1767 z: 'u32'
1760 },1768 },
1761 /**1769 /**
1762 * Lookup232: rmrk_traits::part::EquippableList<frame_support::storage::bounded_vec::BoundedVec<T, S>>1770 * Lookup233: rmrk_traits::part::EquippableList<frame_support::storage::bounded_vec::BoundedVec<T, S>>
1763 **/1771 **/
1764 RmrkTraitsPartEquippableList: {1772 RmrkTraitsPartEquippableList: {
1765 _enum: {1773 _enum: {
1766 All: 'Null',1774 All: 'Null',
1767 Empty: 'Null',1775 Empty: 'Null',
1768 Custom: 'Vec<u32>'1776 Custom: 'Vec<u32>'
1769 }1777 }
1770 },1778 },
1771 /**1779 /**
1772 * Lookup234: rmrk_traits::theme::Theme<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>, S>>1780 * Lookup235: rmrk_traits::theme::Theme<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>, S>>
1773 **/1781 **/
1774 RmrkTraitsTheme: {1782 RmrkTraitsTheme: {
1775 name: 'Bytes',1783 name: 'Bytes',
1776 properties: 'Vec<RmrkTraitsThemeThemeProperty>',1784 properties: 'Vec<RmrkTraitsThemeThemeProperty>',
1777 inherit: 'bool'1785 inherit: 'bool'
1778 },1786 },
1779 /**1787 /**
1780 * Lookup236: rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>1788 * Lookup237: rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>
1781 **/1789 **/
1782 RmrkTraitsThemeThemeProperty: {1790 RmrkTraitsThemeThemeProperty: {
1783 key: 'Bytes',1791 key: 'Bytes',
1784 value: 'Bytes'1792 value: 'Bytes'
1785 },1793 },
1786 /**1794 /**
1787 * Lookup238: pallet_evm::pallet::Call<T>1795 * Lookup239: pallet_evm::pallet::Call<T>
1788 **/1796 **/
1789 PalletEvmCall: {1797 PalletEvmCall: {
1790 _enum: {1798 _enum: {
1791 withdraw: {1799 withdraw: {
1826 }1834 }
1827 }1835 }
1828 },1836 },
1829 /**1837 /**
1830 * Lookup244: pallet_ethereum::pallet::Call<T>1838 * Lookup245: pallet_ethereum::pallet::Call<T>
1831 **/1839 **/
1832 PalletEthereumCall: {1840 PalletEthereumCall: {
1833 _enum: {1841 _enum: {
1834 transact: {1842 transact: {
1835 transaction: 'EthereumTransactionTransactionV2'1843 transaction: 'EthereumTransactionTransactionV2'
1836 }1844 }
1837 }1845 }
1838 },1846 },
1839 /**1847 /**
1840 * Lookup245: ethereum::transaction::TransactionV21848 * Lookup246: ethereum::transaction::TransactionV2
1841 **/1849 **/
1842 EthereumTransactionTransactionV2: {1850 EthereumTransactionTransactionV2: {
1843 _enum: {1851 _enum: {
1844 Legacy: 'EthereumTransactionLegacyTransaction',1852 Legacy: 'EthereumTransactionLegacyTransaction',
1845 EIP2930: 'EthereumTransactionEip2930Transaction',1853 EIP2930: 'EthereumTransactionEip2930Transaction',
1846 EIP1559: 'EthereumTransactionEip1559Transaction'1854 EIP1559: 'EthereumTransactionEip1559Transaction'
1847 }1855 }
1848 },1856 },
1849 /**1857 /**
1850 * Lookup246: ethereum::transaction::LegacyTransaction1858 * Lookup247: ethereum::transaction::LegacyTransaction
1851 **/1859 **/
1852 EthereumTransactionLegacyTransaction: {1860 EthereumTransactionLegacyTransaction: {
1853 nonce: 'U256',1861 nonce: 'U256',
1854 gasPrice: 'U256',1862 gasPrice: 'U256',
1858 input: 'Bytes',1866 input: 'Bytes',
1859 signature: 'EthereumTransactionTransactionSignature'1867 signature: 'EthereumTransactionTransactionSignature'
1860 },1868 },
1861 /**1869 /**
1862 * Lookup247: ethereum::transaction::TransactionAction1870 * Lookup248: ethereum::transaction::TransactionAction
1863 **/1871 **/
1864 EthereumTransactionTransactionAction: {1872 EthereumTransactionTransactionAction: {
1865 _enum: {1873 _enum: {
1866 Call: 'H160',1874 Call: 'H160',
1867 Create: 'Null'1875 Create: 'Null'
1868 }1876 }
1869 },1877 },
1870 /**1878 /**
1871 * Lookup248: ethereum::transaction::TransactionSignature1879 * Lookup249: ethereum::transaction::TransactionSignature
1872 **/1880 **/
1873 EthereumTransactionTransactionSignature: {1881 EthereumTransactionTransactionSignature: {
1874 v: 'u64',1882 v: 'u64',
1875 r: 'H256',1883 r: 'H256',
1876 s: 'H256'1884 s: 'H256'
1877 },1885 },
1878 /**1886 /**
1879 * Lookup250: ethereum::transaction::EIP2930Transaction1887 * Lookup251: ethereum::transaction::EIP2930Transaction
1880 **/1888 **/
1881 EthereumTransactionEip2930Transaction: {1889 EthereumTransactionEip2930Transaction: {
1882 chainId: 'u64',1890 chainId: 'u64',
1883 nonce: 'U256',1891 nonce: 'U256',
1891 r: 'H256',1899 r: 'H256',
1892 s: 'H256'1900 s: 'H256'
1893 },1901 },
1894 /**1902 /**
1895 * Lookup252: ethereum::transaction::AccessListItem1903 * Lookup253: ethereum::transaction::AccessListItem
1896 **/1904 **/
1897 EthereumTransactionAccessListItem: {1905 EthereumTransactionAccessListItem: {
1898 address: 'H160',1906 address: 'H160',
1899 storageKeys: 'Vec<H256>'1907 storageKeys: 'Vec<H256>'
1900 },1908 },
1901 /**1909 /**
1902 * Lookup253: ethereum::transaction::EIP1559Transaction1910 * Lookup254: ethereum::transaction::EIP1559Transaction
1903 **/1911 **/
1904 EthereumTransactionEip1559Transaction: {1912 EthereumTransactionEip1559Transaction: {
1905 chainId: 'u64',1913 chainId: 'u64',
1906 nonce: 'U256',1914 nonce: 'U256',
1915 r: 'H256',1923 r: 'H256',
1916 s: 'H256'1924 s: 'H256'
1917 },1925 },
1918 /**1926 /**
1919 * Lookup254: pallet_evm_migration::pallet::Call<T>1927 * Lookup255: pallet_evm_migration::pallet::Call<T>
1920 **/1928 **/
1921 PalletEvmMigrationCall: {1929 PalletEvmMigrationCall: {
1922 _enum: {1930 _enum: {
1923 begin: {1931 begin: {
1933 }1941 }
1934 }1942 }
1935 },1943 },
1936 /**1944 /**
1937 * Lookup257: pallet_sudo::pallet::Event<T>1945 * Lookup258: pallet_sudo::pallet::Event<T>
1938 **/1946 **/
1939 PalletSudoEvent: {1947 PalletSudoEvent: {
1940 _enum: {1948 _enum: {
1941 Sudid: {1949 Sudid: {
1949 }1957 }
1950 }1958 }
1951 },1959 },
1952 /**1960 /**
1953 * Lookup259: sp_runtime::DispatchError1961 * Lookup260: sp_runtime::DispatchError
1954 **/1962 **/
1955 SpRuntimeDispatchError: {1963 SpRuntimeDispatchError: {
1956 _enum: {1964 _enum: {
1957 Other: 'Null',1965 Other: 'Null',
1966 Transactional: 'SpRuntimeTransactionalError'1974 Transactional: 'SpRuntimeTransactionalError'
1967 }1975 }
1968 },1976 },
1969 /**1977 /**
1970 * Lookup260: sp_runtime::ModuleError1978 * Lookup261: sp_runtime::ModuleError
1971 **/1979 **/
1972 SpRuntimeModuleError: {1980 SpRuntimeModuleError: {
1973 index: 'u8',1981 index: 'u8',
1974 error: '[u8;4]'1982 error: '[u8;4]'
1975 },1983 },
1976 /**1984 /**
1977 * Lookup261: sp_runtime::TokenError1985 * Lookup262: sp_runtime::TokenError
1978 **/1986 **/
1979 SpRuntimeTokenError: {1987 SpRuntimeTokenError: {
1980 _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported']1988 _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported']
1981 },1989 },
1982 /**1990 /**
1983 * Lookup262: sp_runtime::ArithmeticError1991 * Lookup263: sp_runtime::ArithmeticError
1984 **/1992 **/
1985 SpRuntimeArithmeticError: {1993 SpRuntimeArithmeticError: {
1986 _enum: ['Underflow', 'Overflow', 'DivisionByZero']1994 _enum: ['Underflow', 'Overflow', 'DivisionByZero']
1987 },1995 },
1988 /**1996 /**
1989 * Lookup263: sp_runtime::TransactionalError1997 * Lookup264: sp_runtime::TransactionalError
1990 **/1998 **/
1991 SpRuntimeTransactionalError: {1999 SpRuntimeTransactionalError: {
1992 _enum: ['LimitReached', 'NoLayer']2000 _enum: ['LimitReached', 'NoLayer']
1993 },2001 },
1994 /**2002 /**
1995 * Lookup264: pallet_sudo::pallet::Error<T>2003 * Lookup265: pallet_sudo::pallet::Error<T>
1996 **/2004 **/
1997 PalletSudoError: {2005 PalletSudoError: {
1998 _enum: ['RequireSudo']2006 _enum: ['RequireSudo']
1999 },2007 },
2000 /**2008 /**
2001 * Lookup265: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>2009 * Lookup266: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>
2002 **/2010 **/
2003 FrameSystemAccountInfo: {2011 FrameSystemAccountInfo: {
2004 nonce: 'u32',2012 nonce: 'u32',
2005 consumers: 'u32',2013 consumers: 'u32',
2006 providers: 'u32',2014 providers: 'u32',
2007 sufficients: 'u32',2015 sufficients: 'u32',
2008 data: 'PalletBalancesAccountData'2016 data: 'PalletBalancesAccountData'
2009 },2017 },
2010 /**2018 /**
2011 * Lookup266: frame_support::weights::PerDispatchClass<T>2019 * Lookup267: frame_support::weights::PerDispatchClass<T>
2012 **/2020 **/
2013 FrameSupportWeightsPerDispatchClassU64: {2021 FrameSupportWeightsPerDispatchClassU64: {
2014 normal: 'u64',2022 normal: 'u64',
2015 operational: 'u64',2023 operational: 'u64',
2016 mandatory: 'u64'2024 mandatory: 'u64'
2017 },2025 },
2018 /**2026 /**
2019 * Lookup267: sp_runtime::generic::digest::Digest2027 * Lookup268: sp_runtime::generic::digest::Digest
2020 **/2028 **/
2021 SpRuntimeDigest: {2029 SpRuntimeDigest: {
2022 logs: 'Vec<SpRuntimeDigestDigestItem>'2030 logs: 'Vec<SpRuntimeDigestDigestItem>'
2023 },2031 },
2024 /**2032 /**
2025 * Lookup269: sp_runtime::generic::digest::DigestItem2033 * Lookup270: sp_runtime::generic::digest::DigestItem
2026 **/2034 **/
2027 SpRuntimeDigestDigestItem: {2035 SpRuntimeDigestDigestItem: {
2028 _enum: {2036 _enum: {
2029 Other: 'Bytes',2037 Other: 'Bytes',
2037 RuntimeEnvironmentUpdated: 'Null'2045 RuntimeEnvironmentUpdated: 'Null'
2038 }2046 }
2039 },2047 },
2040 /**2048 /**
2041 * Lookup271: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>2049 * Lookup272: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>
2042 **/2050 **/
2043 FrameSystemEventRecord: {2051 FrameSystemEventRecord: {
2044 phase: 'FrameSystemPhase',2052 phase: 'FrameSystemPhase',
2045 event: 'Event',2053 event: 'Event',
2046 topics: 'Vec<H256>'2054 topics: 'Vec<H256>'
2047 },2055 },
2048 /**2056 /**
2049 * Lookup273: frame_system::pallet::Event<T>2057 * Lookup274: frame_system::pallet::Event<T>
2050 **/2058 **/
2051 FrameSystemEvent: {2059 FrameSystemEvent: {
2052 _enum: {2060 _enum: {
2053 ExtrinsicSuccess: {2061 ExtrinsicSuccess: {
2073 }2081 }
2074 }2082 }
2075 },2083 },
2076 /**2084 /**
2077 * Lookup274: frame_support::weights::DispatchInfo2085 * Lookup275: frame_support::weights::DispatchInfo
2078 **/2086 **/
2079 FrameSupportWeightsDispatchInfo: {2087 FrameSupportWeightsDispatchInfo: {
2080 weight: 'u64',2088 weight: 'u64',
2081 class: 'FrameSupportWeightsDispatchClass',2089 class: 'FrameSupportWeightsDispatchClass',
2082 paysFee: 'FrameSupportWeightsPays'2090 paysFee: 'FrameSupportWeightsPays'
2083 },2091 },
2084 /**2092 /**
2085 * Lookup275: frame_support::weights::DispatchClass2093 * Lookup276: frame_support::weights::DispatchClass
2086 **/2094 **/
2087 FrameSupportWeightsDispatchClass: {2095 FrameSupportWeightsDispatchClass: {
2088 _enum: ['Normal', 'Operational', 'Mandatory']2096 _enum: ['Normal', 'Operational', 'Mandatory']
2089 },2097 },
2090 /**2098 /**
2091 * Lookup276: frame_support::weights::Pays2099 * Lookup277: frame_support::weights::Pays
2092 **/2100 **/
2093 FrameSupportWeightsPays: {2101 FrameSupportWeightsPays: {
2094 _enum: ['Yes', 'No']2102 _enum: ['Yes', 'No']
2095 },2103 },
2096 /**2104 /**
2097 * Lookup277: orml_vesting::module::Event<T>2105 * Lookup278: orml_vesting::module::Event<T>
2098 **/2106 **/
2099 OrmlVestingModuleEvent: {2107 OrmlVestingModuleEvent: {
2100 _enum: {2108 _enum: {
2101 VestingScheduleAdded: {2109 VestingScheduleAdded: {
2112 }2120 }
2113 }2121 }
2114 },2122 },
2115 /**2123 /**
2116 * Lookup278: cumulus_pallet_xcmp_queue::pallet::Event<T>2124 * Lookup279: cumulus_pallet_xcmp_queue::pallet::Event<T>
2117 **/2125 **/
2118 CumulusPalletXcmpQueueEvent: {2126 CumulusPalletXcmpQueueEvent: {
2119 _enum: {2127 _enum: {
2120 Success: 'Option<H256>',2128 Success: 'Option<H256>',
2127 OverweightServiced: '(u64,u64)'2135 OverweightServiced: '(u64,u64)'
2128 }2136 }
2129 },2137 },
2130 /**2138 /**
2131 * Lookup279: pallet_xcm::pallet::Event<T>2139 * Lookup280: pallet_xcm::pallet::Event<T>
2132 **/2140 **/
2133 PalletXcmEvent: {2141 PalletXcmEvent: {
2134 _enum: {2142 _enum: {
2135 Attempted: 'XcmV2TraitsOutcome',2143 Attempted: 'XcmV2TraitsOutcome',
2150 NotifyTargetMigrationFail: '(XcmVersionedMultiLocation,u64)'2158 NotifyTargetMigrationFail: '(XcmVersionedMultiLocation,u64)'
2151 }2159 }
2152 },2160 },
2153 /**2161 /**
2154 * Lookup280: xcm::v2::traits::Outcome2162 * Lookup281: xcm::v2::traits::Outcome
2155 **/2163 **/
2156 XcmV2TraitsOutcome: {2164 XcmV2TraitsOutcome: {
2157 _enum: {2165 _enum: {
2158 Complete: 'u64',2166 Complete: 'u64',
2159 Incomplete: '(u64,XcmV2TraitsError)',2167 Incomplete: '(u64,XcmV2TraitsError)',
2160 Error: 'XcmV2TraitsError'2168 Error: 'XcmV2TraitsError'
2161 }2169 }
2162 },2170 },
2163 /**2171 /**
2164 * Lookup282: cumulus_pallet_xcm::pallet::Event<T>2172 * Lookup283: cumulus_pallet_xcm::pallet::Event<T>
2165 **/2173 **/
2166 CumulusPalletXcmEvent: {2174 CumulusPalletXcmEvent: {
2167 _enum: {2175 _enum: {
2168 InvalidFormat: '[u8;8]',2176 InvalidFormat: '[u8;8]',
2169 UnsupportedVersion: '[u8;8]',2177 UnsupportedVersion: '[u8;8]',
2170 ExecutedDownward: '([u8;8],XcmV2TraitsOutcome)'2178 ExecutedDownward: '([u8;8],XcmV2TraitsOutcome)'
2171 }2179 }
2172 },2180 },
2173 /**2181 /**
2174 * Lookup283: cumulus_pallet_dmp_queue::pallet::Event<T>2182 * Lookup284: cumulus_pallet_dmp_queue::pallet::Event<T>
2175 **/2183 **/
2176 CumulusPalletDmpQueueEvent: {2184 CumulusPalletDmpQueueEvent: {
2177 _enum: {2185 _enum: {
2178 InvalidFormat: {2186 InvalidFormat: {
2201 }2209 }
2202 }2210 }
2203 },2211 },
2204 /**2212 /**
2205 * Lookup284: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2213 * Lookup285: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
2206 **/2214 **/
2207 PalletUniqueRawEvent: {2215 PalletUniqueRawEvent: {
2208 _enum: {2216 _enum: {
2209 CollectionSponsorRemoved: 'u32',2217 CollectionSponsorRemoved: 'u32',
2218 CollectionPermissionSet: 'u32'2226 CollectionPermissionSet: 'u32'
2219 }2227 }
2220 },2228 },
2221 /**2229 /**
2222 * Lookup285: pallet_unique_scheduler::pallet::Event<T>2230 * Lookup286: pallet_unique_scheduler::pallet::Event<T>
2223 **/2231 **/
2224 PalletUniqueSchedulerEvent: {2232 PalletUniqueSchedulerEvent: {
2225 _enum: {2233 _enum: {
2226 Scheduled: {2234 Scheduled: {
2243 }2251 }
2244 }2252 }
2245 },2253 },
2246 /**2254 /**
2247 * Lookup287: frame_support::traits::schedule::LookupError2255 * Lookup288: frame_support::traits::schedule::LookupError
2248 **/2256 **/
2249 FrameSupportScheduleLookupError: {2257 FrameSupportScheduleLookupError: {
2250 _enum: ['Unknown', 'BadFormat']2258 _enum: ['Unknown', 'BadFormat']
2251 },2259 },
2252 /**2260 /**
2253 * Lookup288: pallet_common::pallet::Event<T>2261 * Lookup289: pallet_common::pallet::Event<T>
2254 **/2262 **/
2255 PalletCommonEvent: {2263 PalletCommonEvent: {
2256 _enum: {2264 _enum: {
2257 CollectionCreated: '(u32,u8,AccountId32)',2265 CollectionCreated: '(u32,u8,AccountId32)',
2267 PropertyPermissionSet: '(u32,Bytes)'2275 PropertyPermissionSet: '(u32,Bytes)'
2268 }2276 }
2269 },2277 },
2270 /**2278 /**
2271 * Lookup289: pallet_structure::pallet::Event<T>2279 * Lookup290: pallet_structure::pallet::Event<T>
2272 **/2280 **/
2273 PalletStructureEvent: {2281 PalletStructureEvent: {
2274 _enum: {2282 _enum: {
2275 Executed: 'Result<Null, SpRuntimeDispatchError>'2283 Executed: 'Result<Null, SpRuntimeDispatchError>'
2276 }2284 }
2277 },2285 },
2278 /**2286 /**
2279 * Lookup290: pallet_rmrk_core::pallet::Event<T>2287 * Lookup291: pallet_rmrk_core::pallet::Event<T>
2280 **/2288 **/
2281 PalletRmrkCoreEvent: {2289 PalletRmrkCoreEvent: {
2282 _enum: {2290 _enum: {
2283 CollectionCreated: {2291 CollectionCreated: {
2352 }2360 }
2353 }2361 }
2354 },2362 },
2355 /**2363 /**
2356 * Lookup291: pallet_rmrk_equip::pallet::Event<T>2364 * Lookup292: pallet_rmrk_equip::pallet::Event<T>
2357 **/2365 **/
2358 PalletRmrkEquipEvent: {2366 PalletRmrkEquipEvent: {
2359 _enum: {2367 _enum: {
2360 BaseCreated: {2368 BaseCreated: {
2367 }2375 }
2368 }2376 }
2369 },2377 },
2370 /**2378 /**
2371 * Lookup292: pallet_evm::pallet::Event<T>2379 * Lookup293: pallet_evm::pallet::Event<T>
2372 **/2380 **/
2373 PalletEvmEvent: {2381 PalletEvmEvent: {
2374 _enum: {2382 _enum: {
2375 Log: 'EthereumLog',2383 Log: 'EthereumLog',
2381 BalanceWithdraw: '(AccountId32,H160,U256)'2389 BalanceWithdraw: '(AccountId32,H160,U256)'
2382 }2390 }
2383 },2391 },
2384 /**2392 /**
2385 * Lookup293: ethereum::log::Log2393 * Lookup294: ethereum::log::Log
2386 **/2394 **/
2387 EthereumLog: {2395 EthereumLog: {
2388 address: 'H160',2396 address: 'H160',
2389 topics: 'Vec<H256>',2397 topics: 'Vec<H256>',
2390 data: 'Bytes'2398 data: 'Bytes'
2391 },2399 },
2392 /**2400 /**
2393 * Lookup294: pallet_ethereum::pallet::Event2401 * Lookup295: pallet_ethereum::pallet::Event
2394 **/2402 **/
2395 PalletEthereumEvent: {2403 PalletEthereumEvent: {
2396 _enum: {2404 _enum: {
2397 Executed: '(H160,H160,H256,EvmCoreErrorExitReason)'2405 Executed: '(H160,H160,H256,EvmCoreErrorExitReason)'
2398 }2406 }
2399 },2407 },
2400 /**2408 /**
2401 * Lookup295: evm_core::error::ExitReason2409 * Lookup296: evm_core::error::ExitReason
2402 **/2410 **/
2403 EvmCoreErrorExitReason: {2411 EvmCoreErrorExitReason: {
2404 _enum: {2412 _enum: {
2405 Succeed: 'EvmCoreErrorExitSucceed',2413 Succeed: 'EvmCoreErrorExitSucceed',
2408 Fatal: 'EvmCoreErrorExitFatal'2416 Fatal: 'EvmCoreErrorExitFatal'
2409 }2417 }
2410 },2418 },
2411 /**2419 /**
2412 * Lookup296: evm_core::error::ExitSucceed2420 * Lookup297: evm_core::error::ExitSucceed
2413 **/2421 **/
2414 EvmCoreErrorExitSucceed: {2422 EvmCoreErrorExitSucceed: {
2415 _enum: ['Stopped', 'Returned', 'Suicided']2423 _enum: ['Stopped', 'Returned', 'Suicided']
2416 },2424 },
2417 /**2425 /**
2418 * Lookup297: evm_core::error::ExitError2426 * Lookup298: evm_core::error::ExitError
2419 **/2427 **/
2420 EvmCoreErrorExitError: {2428 EvmCoreErrorExitError: {
2421 _enum: {2429 _enum: {
2422 StackUnderflow: 'Null',2430 StackUnderflow: 'Null',
2436 InvalidCode: 'Null'2444 InvalidCode: 'Null'
2437 }2445 }
2438 },2446 },
2439 /**2447 /**
2440 * Lookup300: evm_core::error::ExitRevert2448 * Lookup301: evm_core::error::ExitRevert
2441 **/2449 **/
2442 EvmCoreErrorExitRevert: {2450 EvmCoreErrorExitRevert: {
2443 _enum: ['Reverted']2451 _enum: ['Reverted']
2444 },2452 },
2445 /**2453 /**
2446 * Lookup301: evm_core::error::ExitFatal2454 * Lookup302: evm_core::error::ExitFatal
2447 **/2455 **/
2448 EvmCoreErrorExitFatal: {2456 EvmCoreErrorExitFatal: {
2449 _enum: {2457 _enum: {
2450 NotSupported: 'Null',2458 NotSupported: 'Null',
2453 Other: 'Text'2461 Other: 'Text'
2454 }2462 }
2455 },2463 },
2456 /**2464 /**
2457 * Lookup302: frame_system::Phase2465 * Lookup303: frame_system::Phase
2458 **/2466 **/
2459 FrameSystemPhase: {2467 FrameSystemPhase: {
2460 _enum: {2468 _enum: {
2461 ApplyExtrinsic: 'u32',2469 ApplyExtrinsic: 'u32',
2462 Finalization: 'Null',2470 Finalization: 'Null',
2463 Initialization: 'Null'2471 Initialization: 'Null'
2464 }2472 }
2465 },2473 },
2466 /**2474 /**
2467 * Lookup304: frame_system::LastRuntimeUpgradeInfo2475 * Lookup305: frame_system::LastRuntimeUpgradeInfo
2468 **/2476 **/
2469 FrameSystemLastRuntimeUpgradeInfo: {2477 FrameSystemLastRuntimeUpgradeInfo: {
2470 specVersion: 'Compact<u32>',2478 specVersion: 'Compact<u32>',
2471 specName: 'Text'2479 specName: 'Text'
2472 },2480 },
2473 /**2481 /**
2474 * Lookup305: frame_system::limits::BlockWeights2482 * Lookup306: frame_system::limits::BlockWeights
2475 **/2483 **/
2476 FrameSystemLimitsBlockWeights: {2484 FrameSystemLimitsBlockWeights: {
2477 baseBlock: 'u64',2485 baseBlock: 'u64',
2478 maxBlock: 'u64',2486 maxBlock: 'u64',
2479 perClass: 'FrameSupportWeightsPerDispatchClassWeightsPerClass'2487 perClass: 'FrameSupportWeightsPerDispatchClassWeightsPerClass'
2480 },2488 },
2481 /**2489 /**
2482 * Lookup306: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>2490 * Lookup307: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>
2483 **/2491 **/
2484 FrameSupportWeightsPerDispatchClassWeightsPerClass: {2492 FrameSupportWeightsPerDispatchClassWeightsPerClass: {
2485 normal: 'FrameSystemLimitsWeightsPerClass',2493 normal: 'FrameSystemLimitsWeightsPerClass',
2486 operational: 'FrameSystemLimitsWeightsPerClass',2494 operational: 'FrameSystemLimitsWeightsPerClass',
2487 mandatory: 'FrameSystemLimitsWeightsPerClass'2495 mandatory: 'FrameSystemLimitsWeightsPerClass'
2488 },2496 },
2489 /**2497 /**
2490 * Lookup307: frame_system::limits::WeightsPerClass2498 * Lookup308: frame_system::limits::WeightsPerClass
2491 **/2499 **/
2492 FrameSystemLimitsWeightsPerClass: {2500 FrameSystemLimitsWeightsPerClass: {
2493 baseExtrinsic: 'u64',2501 baseExtrinsic: 'u64',
2494 maxExtrinsic: 'Option<u64>',2502 maxExtrinsic: 'Option<u64>',
2495 maxTotal: 'Option<u64>',2503 maxTotal: 'Option<u64>',
2496 reserved: 'Option<u64>'2504 reserved: 'Option<u64>'
2497 },2505 },
2498 /**2506 /**
2499 * Lookup309: frame_system::limits::BlockLength2507 * Lookup310: frame_system::limits::BlockLength
2500 **/2508 **/
2501 FrameSystemLimitsBlockLength: {2509 FrameSystemLimitsBlockLength: {
2502 max: 'FrameSupportWeightsPerDispatchClassU32'2510 max: 'FrameSupportWeightsPerDispatchClassU32'
2503 },2511 },
2504 /**2512 /**
2505 * Lookup310: frame_support::weights::PerDispatchClass<T>2513 * Lookup311: frame_support::weights::PerDispatchClass<T>
2506 **/2514 **/
2507 FrameSupportWeightsPerDispatchClassU32: {2515 FrameSupportWeightsPerDispatchClassU32: {
2508 normal: 'u32',2516 normal: 'u32',
2509 operational: 'u32',2517 operational: 'u32',
2510 mandatory: 'u32'2518 mandatory: 'u32'
2511 },2519 },
2512 /**2520 /**
2513 * Lookup311: frame_support::weights::RuntimeDbWeight2521 * Lookup312: frame_support::weights::RuntimeDbWeight
2514 **/2522 **/
2515 FrameSupportWeightsRuntimeDbWeight: {2523 FrameSupportWeightsRuntimeDbWeight: {
2516 read: 'u64',2524 read: 'u64',
2517 write: 'u64'2525 write: 'u64'
2518 },2526 },
2519 /**2527 /**
2520 * Lookup312: sp_version::RuntimeVersion2528 * Lookup313: sp_version::RuntimeVersion
2521 **/2529 **/
2522 SpVersionRuntimeVersion: {2530 SpVersionRuntimeVersion: {
2523 specName: 'Text',2531 specName: 'Text',
2524 implName: 'Text',2532 implName: 'Text',
2529 transactionVersion: 'u32',2537 transactionVersion: 'u32',
2530 stateVersion: 'u8'2538 stateVersion: 'u8'
2531 },2539 },
2532 /**2540 /**
2533 * Lookup316: frame_system::pallet::Error<T>2541 * Lookup317: frame_system::pallet::Error<T>
2534 **/2542 **/
2535 FrameSystemError: {2543 FrameSystemError: {
2536 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']2544 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']
2537 },2545 },
2538 /**2546 /**
2539 * Lookup318: orml_vesting::module::Error<T>2547 * Lookup319: orml_vesting::module::Error<T>
2540 **/2548 **/
2541 OrmlVestingModuleError: {2549 OrmlVestingModuleError: {
2542 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']2550 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']
2543 },2551 },
2544 /**2552 /**
2545 * Lookup320: cumulus_pallet_xcmp_queue::InboundChannelDetails2553 * Lookup321: cumulus_pallet_xcmp_queue::InboundChannelDetails
2546 **/2554 **/
2547 CumulusPalletXcmpQueueInboundChannelDetails: {2555 CumulusPalletXcmpQueueInboundChannelDetails: {
2548 sender: 'u32',2556 sender: 'u32',
2549 state: 'CumulusPalletXcmpQueueInboundState',2557 state: 'CumulusPalletXcmpQueueInboundState',
2550 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'2558 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'
2551 },2559 },
2552 /**2560 /**
2553 * Lookup321: cumulus_pallet_xcmp_queue::InboundState2561 * Lookup322: cumulus_pallet_xcmp_queue::InboundState
2554 **/2562 **/
2555 CumulusPalletXcmpQueueInboundState: {2563 CumulusPalletXcmpQueueInboundState: {
2556 _enum: ['Ok', 'Suspended']2564 _enum: ['Ok', 'Suspended']
2557 },2565 },
2558 /**2566 /**
2559 * Lookup324: polkadot_parachain::primitives::XcmpMessageFormat2567 * Lookup325: polkadot_parachain::primitives::XcmpMessageFormat
2560 **/2568 **/
2561 PolkadotParachainPrimitivesXcmpMessageFormat: {2569 PolkadotParachainPrimitivesXcmpMessageFormat: {
2562 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']2570 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']
2563 },2571 },
2564 /**2572 /**
2565 * Lookup327: cumulus_pallet_xcmp_queue::OutboundChannelDetails2573 * Lookup328: cumulus_pallet_xcmp_queue::OutboundChannelDetails
2566 **/2574 **/
2567 CumulusPalletXcmpQueueOutboundChannelDetails: {2575 CumulusPalletXcmpQueueOutboundChannelDetails: {
2568 recipient: 'u32',2576 recipient: 'u32',
2569 state: 'CumulusPalletXcmpQueueOutboundState',2577 state: 'CumulusPalletXcmpQueueOutboundState',
2570 signalsExist: 'bool',2578 signalsExist: 'bool',
2571 firstIndex: 'u16',2579 firstIndex: 'u16',
2572 lastIndex: 'u16'2580 lastIndex: 'u16'
2573 },2581 },
2574 /**2582 /**
2575 * Lookup328: cumulus_pallet_xcmp_queue::OutboundState2583 * Lookup329: cumulus_pallet_xcmp_queue::OutboundState
2576 **/2584 **/
2577 CumulusPalletXcmpQueueOutboundState: {2585 CumulusPalletXcmpQueueOutboundState: {
2578 _enum: ['Ok', 'Suspended']2586 _enum: ['Ok', 'Suspended']
2579 },2587 },
2580 /**2588 /**
2581 * Lookup330: cumulus_pallet_xcmp_queue::QueueConfigData2589 * Lookup331: cumulus_pallet_xcmp_queue::QueueConfigData
2582 **/2590 **/
2583 CumulusPalletXcmpQueueQueueConfigData: {2591 CumulusPalletXcmpQueueQueueConfigData: {
2584 suspendThreshold: 'u32',2592 suspendThreshold: 'u32',
2585 dropThreshold: 'u32',2593 dropThreshold: 'u32',
2588 weightRestrictDecay: 'u64',2596 weightRestrictDecay: 'u64',
2589 xcmpMaxIndividualWeight: 'u64'2597 xcmpMaxIndividualWeight: 'u64'
2590 },2598 },
2591 /**2599 /**
2592 * Lookup332: cumulus_pallet_xcmp_queue::pallet::Error<T>2600 * Lookup333: cumulus_pallet_xcmp_queue::pallet::Error<T>
2593 **/2601 **/
2594 CumulusPalletXcmpQueueError: {2602 CumulusPalletXcmpQueueError: {
2595 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']2603 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']
2596 },2604 },
2597 /**2605 /**
2598 * Lookup333: pallet_xcm::pallet::Error<T>2606 * Lookup334: pallet_xcm::pallet::Error<T>
2599 **/2607 **/
2600 PalletXcmError: {2608 PalletXcmError: {
2601 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']2609 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']
2602 },2610 },
2603 /**2611 /**
2604 * Lookup334: cumulus_pallet_xcm::pallet::Error<T>2612 * Lookup335: cumulus_pallet_xcm::pallet::Error<T>
2605 **/2613 **/
2606 CumulusPalletXcmError: 'Null',2614 CumulusPalletXcmError: 'Null',
2607 /**2615 /**
2608 * Lookup335: cumulus_pallet_dmp_queue::ConfigData2616 * Lookup336: cumulus_pallet_dmp_queue::ConfigData
2609 **/2617 **/
2610 CumulusPalletDmpQueueConfigData: {2618 CumulusPalletDmpQueueConfigData: {
2611 maxIndividual: 'u64'2619 maxIndividual: 'u64'
2612 },2620 },
2613 /**2621 /**
2614 * Lookup336: cumulus_pallet_dmp_queue::PageIndexData2622 * Lookup337: cumulus_pallet_dmp_queue::PageIndexData
2615 **/2623 **/
2616 CumulusPalletDmpQueuePageIndexData: {2624 CumulusPalletDmpQueuePageIndexData: {
2617 beginUsed: 'u32',2625 beginUsed: 'u32',
2618 endUsed: 'u32',2626 endUsed: 'u32',
2619 overweightCount: 'u64'2627 overweightCount: 'u64'
2620 },2628 },
2621 /**2629 /**
2622 * Lookup339: cumulus_pallet_dmp_queue::pallet::Error<T>2630 * Lookup340: cumulus_pallet_dmp_queue::pallet::Error<T>
2623 **/2631 **/
2624 CumulusPalletDmpQueueError: {2632 CumulusPalletDmpQueueError: {
2625 _enum: ['Unknown', 'OverLimit']2633 _enum: ['Unknown', 'OverLimit']
2626 },2634 },
2627 /**2635 /**
2628 * Lookup343: pallet_unique::Error<T>2636 * Lookup344: pallet_unique::Error<T>
2629 **/2637 **/
2630 PalletUniqueError: {2638 PalletUniqueError: {
2631 _enum: ['CollectionDecimalPointLimitExceeded', 'ConfirmUnsetSponsorFail', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']2639 _enum: ['CollectionDecimalPointLimitExceeded', 'ConfirmUnsetSponsorFail', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']
2632 },2640 },
2633 /**2641 /**
2634 * Lookup346: pallet_unique_scheduler::ScheduledV3<frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>2642 * Lookup347: pallet_unique_scheduler::ScheduledV3<frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>
2635 **/2643 **/
2636 PalletUniqueSchedulerScheduledV3: {2644 PalletUniqueSchedulerScheduledV3: {
2637 maybeId: 'Option<[u8;16]>',2645 maybeId: 'Option<[u8;16]>',
2638 priority: 'u8',2646 priority: 'u8',
2639 call: 'FrameSupportScheduleMaybeHashed',2647 call: 'FrameSupportScheduleMaybeHashed',
2640 maybePeriodic: 'Option<(u32,u32)>',2648 maybePeriodic: 'Option<(u32,u32)>',
2641 origin: 'OpalRuntimeOriginCaller'2649 origin: 'OpalRuntimeOriginCaller'
2642 },2650 },
2643 /**2651 /**
2644 * Lookup347: opal_runtime::OriginCaller2652 * Lookup348: opal_runtime::OriginCaller
2645 **/2653 **/
2646 OpalRuntimeOriginCaller: {2654 OpalRuntimeOriginCaller: {
2647 _enum: {2655 _enum: {
2648 __Unused0: 'Null',2656 __Unused0: 'Null',
2749 Ethereum: 'PalletEthereumRawOrigin'2757 Ethereum: 'PalletEthereumRawOrigin'
2750 }2758 }
2751 },2759 },
2752 /**2760 /**
2753 * Lookup348: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>2761 * Lookup349: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>
2754 **/2762 **/
2755 FrameSupportDispatchRawOrigin: {2763 FrameSupportDispatchRawOrigin: {
2756 _enum: {2764 _enum: {
2757 Root: 'Null',2765 Root: 'Null',
2758 Signed: 'AccountId32',2766 Signed: 'AccountId32',
2759 None: 'Null'2767 None: 'Null'
2760 }2768 }
2761 },2769 },
2762 /**2770 /**
2763 * Lookup349: pallet_xcm::pallet::Origin2771 * Lookup350: pallet_xcm::pallet::Origin
2764 **/2772 **/
2765 PalletXcmOrigin: {2773 PalletXcmOrigin: {
2766 _enum: {2774 _enum: {
2767 Xcm: 'XcmV1MultiLocation',2775 Xcm: 'XcmV1MultiLocation',
2768 Response: 'XcmV1MultiLocation'2776 Response: 'XcmV1MultiLocation'
2769 }2777 }
2770 },2778 },
2771 /**2779 /**
2772 * Lookup350: cumulus_pallet_xcm::pallet::Origin2780 * Lookup351: cumulus_pallet_xcm::pallet::Origin
2773 **/2781 **/
2774 CumulusPalletXcmOrigin: {2782 CumulusPalletXcmOrigin: {
2775 _enum: {2783 _enum: {
2776 Relay: 'Null',2784 Relay: 'Null',
2777 SiblingParachain: 'u32'2785 SiblingParachain: 'u32'
2778 }2786 }
2779 },2787 },
2780 /**2788 /**
2781 * Lookup351: pallet_ethereum::RawOrigin2789 * Lookup352: pallet_ethereum::RawOrigin
2782 **/2790 **/
2783 PalletEthereumRawOrigin: {2791 PalletEthereumRawOrigin: {
2784 _enum: {2792 _enum: {
2785 EthereumTransaction: 'H160'2793 EthereumTransaction: 'H160'
2786 }2794 }
2787 },2795 },
2788 /**2796 /**
2789 * Lookup352: sp_core::Void2797 * Lookup353: sp_core::Void
2790 **/2798 **/
2791 SpCoreVoid: 'Null',2799 SpCoreVoid: 'Null',
2792 /**2800 /**
2793 * Lookup353: pallet_unique_scheduler::pallet::Error<T>2801 * Lookup354: pallet_unique_scheduler::pallet::Error<T>
2794 **/2802 **/
2795 PalletUniqueSchedulerError: {2803 PalletUniqueSchedulerError: {
2796 _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange']2804 _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange']
2797 },2805 },
2798 /**2806 /**
2799 * Lookup354: up_data_structs::Collection<sp_core::crypto::AccountId32>2807 * Lookup355: up_data_structs::Collection<sp_core::crypto::AccountId32>
2800 **/2808 **/
2801 UpDataStructsCollection: {2809 UpDataStructsCollection: {
2802 owner: 'AccountId32',2810 owner: 'AccountId32',
2803 mode: 'UpDataStructsCollectionMode',2811 mode: 'UpDataStructsCollectionMode',
2809 permissions: 'UpDataStructsCollectionPermissions',2817 permissions: 'UpDataStructsCollectionPermissions',
2810 externalCollection: 'bool'2818 externalCollection: 'bool'
2811 },2819 },
2812 /**2820 /**
2813 * Lookup355: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>2821 * Lookup356: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
2814 **/2822 **/
2815 UpDataStructsSponsorshipState: {2823 UpDataStructsSponsorshipState: {
2816 _enum: {2824 _enum: {
2817 Disabled: 'Null',2825 Disabled: 'Null',
2818 Unconfirmed: 'AccountId32',2826 Unconfirmed: 'AccountId32',
2819 Confirmed: 'AccountId32'2827 Confirmed: 'AccountId32'
2820 }2828 }
2821 },2829 },
2822 /**2830 /**
2823 * Lookup356: up_data_structs::Properties2831 * Lookup357: up_data_structs::Properties
2824 **/2832 **/
2825 UpDataStructsProperties: {2833 UpDataStructsProperties: {
2826 map: 'UpDataStructsPropertiesMapBoundedVec',2834 map: 'UpDataStructsPropertiesMapBoundedVec',
2827 consumedSpace: 'u32',2835 consumedSpace: 'u32',
2828 spaceLimit: 'u32'2836 spaceLimit: 'u32'
2829 },2837 },
2830 /**2838 /**
2831 * Lookup357: up_data_structs::PropertiesMap<frame_support::storage::bounded_vec::BoundedVec<T, S>>2839 * Lookup358: up_data_structs::PropertiesMap<frame_support::storage::bounded_vec::BoundedVec<T, S>>
2832 **/2840 **/
2833 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',2841 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',
2834 /**2842 /**
2835 * Lookup362: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>2843 * Lookup363: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>
2836 **/2844 **/
2837 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',2845 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',
2838 /**2846 /**
2839 * Lookup369: up_data_structs::CollectionStats2847 * Lookup370: up_data_structs::CollectionStats
2840 **/2848 **/
2841 UpDataStructsCollectionStats: {2849 UpDataStructsCollectionStats: {
2842 created: 'u32',2850 created: 'u32',
2843 destroyed: 'u32',2851 destroyed: 'u32',
2844 alive: 'u32'2852 alive: 'u32'
2845 },2853 },
2846 /**2854 /**
2847 * Lookup370: up_data_structs::TokenChild2855 * Lookup371: up_data_structs::TokenChild
2848 **/2856 **/
2849 UpDataStructsTokenChild: {2857 UpDataStructsTokenChild: {
2850 token: 'u32',2858 token: 'u32',
2851 collection: 'u32'2859 collection: 'u32'
2852 },2860 },
2853 /**2861 /**
2854 * Lookup371: PhantomType::up_data_structs<T>2862 * Lookup372: PhantomType::up_data_structs<T>
2855 **/2863 **/
2856 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',2864 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',
2857 /**2865 /**
2858 * Lookup373: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2866 * Lookup374: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
2859 **/2867 **/
2860 UpDataStructsTokenData: {2868 UpDataStructsTokenData: {
2861 properties: 'Vec<UpDataStructsProperty>',2869 properties: 'Vec<UpDataStructsProperty>',
2862 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>',2870 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>',
2863 pieces: 'u128'2871 pieces: 'u128'
2864 },2872 },
2865 /**2873 /**
2866 * Lookup375: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>2874 * Lookup376: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
2867 **/2875 **/
2868 UpDataStructsRpcCollection: {2876 UpDataStructsRpcCollection: {
2869 owner: 'AccountId32',2877 owner: 'AccountId32',
2870 mode: 'UpDataStructsCollectionMode',2878 mode: 'UpDataStructsCollectionMode',
2878 properties: 'Vec<UpDataStructsProperty>',2886 properties: 'Vec<UpDataStructsProperty>',
2879 readOnly: 'bool'2887 readOnly: 'bool'
2880 },2888 },
2881 /**2889 /**
2882 * Lookup376: rmrk_traits::collection::CollectionInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>2890 * Lookup377: rmrk_traits::collection::CollectionInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>
2883 **/2891 **/
2884 RmrkTraitsCollectionCollectionInfo: {2892 RmrkTraitsCollectionCollectionInfo: {
2885 issuer: 'AccountId32',2893 issuer: 'AccountId32',
2886 metadata: 'Bytes',2894 metadata: 'Bytes',
2887 max: 'Option<u32>',2895 max: 'Option<u32>',
2888 symbol: 'Bytes',2896 symbol: 'Bytes',
2889 nftsCount: 'u32'2897 nftsCount: 'u32'
2890 },2898 },
2891 /**2899 /**
2892 * Lookup377: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, frame_support::storage::bounded_vec::BoundedVec<T, S>>2900 * Lookup378: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, frame_support::storage::bounded_vec::BoundedVec<T, S>>
2893 **/2901 **/
2894 RmrkTraitsNftNftInfo: {2902 RmrkTraitsNftNftInfo: {
2895 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',2903 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',
2896 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',2904 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',
2897 metadata: 'Bytes',2905 metadata: 'Bytes',
2898 equipped: 'bool',2906 equipped: 'bool',
2899 pending: 'bool'2907 pending: 'bool'
2900 },2908 },
2901 /**2909 /**
2902 * Lookup379: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>2910 * Lookup380: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>
2903 **/2911 **/
2904 RmrkTraitsNftRoyaltyInfo: {2912 RmrkTraitsNftRoyaltyInfo: {
2905 recipient: 'AccountId32',2913 recipient: 'AccountId32',
2906 amount: 'Permill'2914 amount: 'Permill'
2907 },2915 },
2908 /**2916 /**
2909 * Lookup380: rmrk_traits::resource::ResourceInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2917 * Lookup381: rmrk_traits::resource::ResourceInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>
2910 **/2918 **/
2911 RmrkTraitsResourceResourceInfo: {2919 RmrkTraitsResourceResourceInfo: {
2912 id: 'u32',2920 id: 'u32',
2913 resource: 'RmrkTraitsResourceResourceTypes',2921 resource: 'RmrkTraitsResourceResourceTypes',
2914 pending: 'bool',2922 pending: 'bool',
2915 pendingRemoval: 'bool'2923 pendingRemoval: 'bool'
2916 },2924 },
2917 /**2925 /**
2918 * Lookup381: rmrk_traits::property::PropertyInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2926 * Lookup382: rmrk_traits::property::PropertyInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>
2919 **/2927 **/
2920 RmrkTraitsPropertyPropertyInfo: {2928 RmrkTraitsPropertyPropertyInfo: {
2921 key: 'Bytes',2929 key: 'Bytes',
2922 value: 'Bytes'2930 value: 'Bytes'
2923 },2931 },
2924 /**2932 /**
2925 * Lookup382: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, frame_support::storage::bounded_vec::BoundedVec<T, S>>2933 * Lookup383: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, frame_support::storage::bounded_vec::BoundedVec<T, S>>
2926 **/2934 **/
2927 RmrkTraitsBaseBaseInfo: {2935 RmrkTraitsBaseBaseInfo: {
2928 issuer: 'AccountId32',2936 issuer: 'AccountId32',
2929 baseType: 'Bytes',2937 baseType: 'Bytes',
2930 symbol: 'Bytes'2938 symbol: 'Bytes'
2931 },2939 },
2932 /**2940 /**
2933 * Lookup383: rmrk_traits::nft::NftChild2941 * Lookup384: rmrk_traits::nft::NftChild
2934 **/2942 **/
2935 RmrkTraitsNftNftChild: {2943 RmrkTraitsNftNftChild: {
2936 collectionId: 'u32',2944 collectionId: 'u32',
2937 nftId: 'u32'2945 nftId: 'u32'
2938 },2946 },
2939 /**2947 /**
2940 * Lookup385: pallet_common::pallet::Error<T>2948 * Lookup386: pallet_common::pallet::Error<T>
2941 **/2949 **/
2942 PalletCommonError: {2950 PalletCommonError: {
2943 _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']2951 _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']
2944 },2952 },
2945 /**2953 /**
2946 * Lookup387: pallet_fungible::pallet::Error<T>2954 * Lookup388: pallet_fungible::pallet::Error<T>
2947 **/2955 **/
2948 PalletFungibleError: {2956 PalletFungibleError: {
2949 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2957 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed']
2950 },2958 },
2951 /**2959 /**
2952 * Lookup388: pallet_refungible::ItemData2960 * Lookup389: pallet_refungible::ItemData
2953 **/2961 **/
2954 PalletRefungibleItemData: {2962 PalletRefungibleItemData: {
2955 constData: 'Bytes'2963 constData: 'Bytes'
2956 },2964 },
2957 /**2965 /**
2958 * Lookup393: pallet_refungible::pallet::Error<T>2966 * Lookup394: pallet_refungible::pallet::Error<T>
2959 **/2967 **/
2960 PalletRefungibleError: {2968 PalletRefungibleError: {
2961 _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2969 _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']
2962 },2970 },
2963 /**2971 /**
2964 * Lookup394: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2972 * Lookup395: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
2965 **/2973 **/
2966 PalletNonfungibleItemData: {2974 PalletNonfungibleItemData: {
2967 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'2975 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
2968 },2976 },
2969 /**2977 /**
2970 * Lookup396: up_data_structs::PropertyScope2978 * Lookup397: up_data_structs::PropertyScope
2971 **/2979 **/
2972 UpDataStructsPropertyScope: {2980 UpDataStructsPropertyScope: {
2973 _enum: ['None', 'Rmrk']2981 _enum: ['None', 'Rmrk']
2974 },2982 },
2975 /**2983 /**
2976 * Lookup398: pallet_nonfungible::pallet::Error<T>2984 * Lookup399: pallet_nonfungible::pallet::Error<T>
2977 **/2985 **/
2978 PalletNonfungibleError: {2986 PalletNonfungibleError: {
2979 _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']2987 _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']
2980 },2988 },
2981 /**2989 /**
2982 * Lookup399: pallet_structure::pallet::Error<T>2990 * Lookup400: pallet_structure::pallet::Error<T>
2983 **/2991 **/
2984 PalletStructureError: {2992 PalletStructureError: {
2985 _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound']2993 _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound']
2986 },2994 },
2987 /**2995 /**
2988 * Lookup400: pallet_rmrk_core::pallet::Error<T>2996 * Lookup401: pallet_rmrk_core::pallet::Error<T>
2989 **/2997 **/
2990 PalletRmrkCoreError: {2998 PalletRmrkCoreError: {
2991 _enum: ['CorruptedCollectionType', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId']2999 _enum: ['CorruptedCollectionType', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId']
2992 },3000 },
2993 /**3001 /**
2994 * Lookup402: pallet_rmrk_equip::pallet::Error<T>3002 * Lookup403: pallet_rmrk_equip::pallet::Error<T>
2995 **/3003 **/
2996 PalletRmrkEquipError: {3004 PalletRmrkEquipError: {
2997 _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst', 'PartDoesntExist', 'NoEquippableOnFixedPart']3005 _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst', 'PartDoesntExist', 'NoEquippableOnFixedPart']
2998 },3006 },
2999 /**3007 /**
3000 * Lookup405: pallet_evm::pallet::Error<T>3008 * Lookup406: pallet_evm::pallet::Error<T>
3001 **/3009 **/
3002 PalletEvmError: {3010 PalletEvmError: {
3003 _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce']3011 _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce']
3004 },3012 },
3005 /**3013 /**
3006 * Lookup408: fp_rpc::TransactionStatus3014 * Lookup409: fp_rpc::TransactionStatus
3007 **/3015 **/
3008 FpRpcTransactionStatus: {3016 FpRpcTransactionStatus: {
3009 transactionHash: 'H256',3017 transactionHash: 'H256',
3010 transactionIndex: 'u32',3018 transactionIndex: 'u32',
3014 logs: 'Vec<EthereumLog>',3022 logs: 'Vec<EthereumLog>',
3015 logsBloom: 'EthbloomBloom'3023 logsBloom: 'EthbloomBloom'
3016 },3024 },
3017 /**3025 /**
3018 * Lookup410: ethbloom::Bloom3026 * Lookup411: ethbloom::Bloom
3019 **/3027 **/
3020 EthbloomBloom: '[u8;256]',3028 EthbloomBloom: '[u8;256]',
3021 /**3029 /**
3022 * Lookup412: ethereum::receipt::ReceiptV33030 * Lookup413: ethereum::receipt::ReceiptV3
3023 **/3031 **/
3024 EthereumReceiptReceiptV3: {3032 EthereumReceiptReceiptV3: {
3025 _enum: {3033 _enum: {
3026 Legacy: 'EthereumReceiptEip658ReceiptData',3034 Legacy: 'EthereumReceiptEip658ReceiptData',
3027 EIP2930: 'EthereumReceiptEip658ReceiptData',3035 EIP2930: 'EthereumReceiptEip658ReceiptData',
3028 EIP1559: 'EthereumReceiptEip658ReceiptData'3036 EIP1559: 'EthereumReceiptEip658ReceiptData'
3029 }3037 }
3030 },3038 },
3031 /**3039 /**
3032 * Lookup413: ethereum::receipt::EIP658ReceiptData3040 * Lookup414: ethereum::receipt::EIP658ReceiptData
3033 **/3041 **/
3034 EthereumReceiptEip658ReceiptData: {3042 EthereumReceiptEip658ReceiptData: {
3035 statusCode: 'u8',3043 statusCode: 'u8',
3036 usedGas: 'U256',3044 usedGas: 'U256',
3037 logsBloom: 'EthbloomBloom',3045 logsBloom: 'EthbloomBloom',
3038 logs: 'Vec<EthereumLog>'3046 logs: 'Vec<EthereumLog>'
3039 },3047 },
3040 /**3048 /**
3041 * Lookup414: ethereum::block::Block<ethereum::transaction::TransactionV2>3049 * Lookup415: ethereum::block::Block<ethereum::transaction::TransactionV2>
3042 **/3050 **/
3043 EthereumBlock: {3051 EthereumBlock: {
3044 header: 'EthereumHeader',3052 header: 'EthereumHeader',
3045 transactions: 'Vec<EthereumTransactionTransactionV2>',3053 transactions: 'Vec<EthereumTransactionTransactionV2>',
3046 ommers: 'Vec<EthereumHeader>'3054 ommers: 'Vec<EthereumHeader>'
3047 },3055 },
3048 /**3056 /**
3049 * Lookup415: ethereum::header::Header3057 * Lookup416: ethereum::header::Header
3050 **/3058 **/
3051 EthereumHeader: {3059 EthereumHeader: {
3052 parentHash: 'H256',3060 parentHash: 'H256',
3053 ommersHash: 'H256',3061 ommersHash: 'H256',
3065 mixHash: 'H256',3073 mixHash: 'H256',
3066 nonce: 'EthereumTypesHashH64'3074 nonce: 'EthereumTypesHashH64'
3067 },3075 },
3068 /**3076 /**
3069 * Lookup416: ethereum_types::hash::H643077 * Lookup417: ethereum_types::hash::H64
3070 **/3078 **/
3071 EthereumTypesHashH64: '[u8;8]',3079 EthereumTypesHashH64: '[u8;8]',
3072 /**3080 /**
3073 * Lookup421: pallet_ethereum::pallet::Error<T>3081 * Lookup422: pallet_ethereum::pallet::Error<T>
3074 **/3082 **/
3075 PalletEthereumError: {3083 PalletEthereumError: {
3076 _enum: ['InvalidSignature', 'PreLogExists']3084 _enum: ['InvalidSignature', 'PreLogExists']
3077 },3085 },
3078 /**3086 /**
3079 * Lookup422: pallet_evm_coder_substrate::pallet::Error<T>3087 * Lookup423: pallet_evm_coder_substrate::pallet::Error<T>
3080 **/3088 **/
3081 PalletEvmCoderSubstrateError: {3089 PalletEvmCoderSubstrateError: {
3082 _enum: ['OutOfGas', 'OutOfFund']3090 _enum: ['OutOfGas', 'OutOfFund']
3083 },3091 },
3084 /**3092 /**
3085 * Lookup423: pallet_evm_contract_helpers::SponsoringModeT3093 * Lookup424: pallet_evm_contract_helpers::SponsoringModeT
3086 **/3094 **/
3087 PalletEvmContractHelpersSponsoringModeT: {3095 PalletEvmContractHelpersSponsoringModeT: {
3088 _enum: ['Disabled', 'Allowlisted', 'Generous']3096 _enum: ['Disabled', 'Allowlisted', 'Generous']
3089 },3097 },
3090 /**3098 /**
3091 * Lookup425: pallet_evm_contract_helpers::pallet::Error<T>3099 * Lookup426: pallet_evm_contract_helpers::pallet::Error<T>
3092 **/3100 **/
3093 PalletEvmContractHelpersError: {3101 PalletEvmContractHelpersError: {
3094 _enum: ['NoPermission']3102 _enum: ['NoPermission']
3095 },3103 },
3096 /**3104 /**
3097 * Lookup426: pallet_evm_migration::pallet::Error<T>3105 * Lookup427: pallet_evm_migration::pallet::Error<T>
3098 **/3106 **/
3099 PalletEvmMigrationError: {3107 PalletEvmMigrationError: {
3100 _enum: ['AccountNotEmpty', 'AccountIsNotMigrating']3108 _enum: ['AccountNotEmpty', 'AccountIsNotMigrating']
3101 },3109 },
3102 /**3110 /**
3103 * Lookup428: sp_runtime::MultiSignature3111 * Lookup429: sp_runtime::MultiSignature
3104 **/3112 **/
3105 SpRuntimeMultiSignature: {3113 SpRuntimeMultiSignature: {
3106 _enum: {3114 _enum: {
3107 Ed25519: 'SpCoreEd25519Signature',3115 Ed25519: 'SpCoreEd25519Signature',
3108 Sr25519: 'SpCoreSr25519Signature',3116 Sr25519: 'SpCoreSr25519Signature',
3109 Ecdsa: 'SpCoreEcdsaSignature'3117 Ecdsa: 'SpCoreEcdsaSignature'
3110 }3118 }
3111 },3119 },
3112 /**3120 /**
3113 * Lookup429: sp_core::ed25519::Signature3121 * Lookup430: sp_core::ed25519::Signature
3114 **/3122 **/
3115 SpCoreEd25519Signature: '[u8;64]',3123 SpCoreEd25519Signature: '[u8;64]',
3116 /**3124 /**
3117 * Lookup431: sp_core::sr25519::Signature3125 * Lookup432: sp_core::sr25519::Signature
3118 **/3126 **/
3119 SpCoreSr25519Signature: '[u8;64]',3127 SpCoreSr25519Signature: '[u8;64]',
3120 /**3128 /**
3121 * Lookup432: sp_core::ecdsa::Signature3129 * Lookup433: sp_core::ecdsa::Signature
3122 **/3130 **/
3123 SpCoreEcdsaSignature: '[u8;65]',3131 SpCoreEcdsaSignature: '[u8;65]',
3124 /**3132 /**
3125 * Lookup435: frame_system::extensions::check_spec_version::CheckSpecVersion<T>3133 * Lookup436: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
3126 **/3134 **/
3127 FrameSystemExtensionsCheckSpecVersion: 'Null',3135 FrameSystemExtensionsCheckSpecVersion: 'Null',
3128 /**3136 /**
3129 * Lookup436: frame_system::extensions::check_genesis::CheckGenesis<T>3137 * Lookup437: frame_system::extensions::check_genesis::CheckGenesis<T>
3130 **/3138 **/
3131 FrameSystemExtensionsCheckGenesis: 'Null',3139 FrameSystemExtensionsCheckGenesis: 'Null',
3132 /**3140 /**
3133 * Lookup439: frame_system::extensions::check_nonce::CheckNonce<T>3141 * Lookup440: frame_system::extensions::check_nonce::CheckNonce<T>
3134 **/3142 **/
3135 FrameSystemExtensionsCheckNonce: 'Compact<u32>',3143 FrameSystemExtensionsCheckNonce: 'Compact<u32>',
3136 /**3144 /**
3137 * Lookup440: frame_system::extensions::check_weight::CheckWeight<T>3145 * Lookup441: frame_system::extensions::check_weight::CheckWeight<T>
3138 **/3146 **/
3139 FrameSystemExtensionsCheckWeight: 'Null',3147 FrameSystemExtensionsCheckWeight: 'Null',
3140 /**3148 /**
3141 * Lookup441: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>3149 * Lookup442: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
3142 **/3150 **/
3143 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',3151 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',
3144 /**3152 /**
3145 * Lookup442: opal_runtime::Runtime3153 * Lookup443: opal_runtime::Runtime
3146 **/3154 **/
3147 OpalRuntimeRuntime: 'Null',3155 OpalRuntimeRuntime: 'Null',
3148 /**3156 /**
3149 * Lookup443: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>3157 * Lookup444: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>
3150 **/3158 **/
3151 PalletEthereumFakeTransactionFinalizer: 'Null'3159 PalletEthereumFakeTransactionFinalizer: 'Null'
3152};3160};
31533161
modifiedtests/src/interfaces/registry.tsdiffbeforeafterboth
--- a/tests/src/interfaces/registry.ts
+++ b/tests/src/interfaces/registry.ts
@@ -1,7 +1,7 @@
 // Auto-generated via `yarn polkadot-types-from-defs`, do not edit
 /* eslint-disable */
 
-import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, 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, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, 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, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, 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, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, 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, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, 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, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
 
 declare module '@polkadot/types/types/registry' {
   export interface InterfaceTypes {
@@ -194,7 +194,8 @@
     UpDataStructsCreateNftData: UpDataStructsCreateNftData;
     UpDataStructsCreateNftExData: UpDataStructsCreateNftExData;
     UpDataStructsCreateReFungibleData: UpDataStructsCreateReFungibleData;
-    UpDataStructsCreateRefungibleExData: UpDataStructsCreateRefungibleExData;
+    UpDataStructsCreateRefungibleExMultipleOwners: UpDataStructsCreateRefungibleExMultipleOwners;
+    UpDataStructsCreateRefungibleExSingleOwner: UpDataStructsCreateRefungibleExSingleOwner;
     UpDataStructsNestingPermissions: UpDataStructsNestingPermissions;
     UpDataStructsOwnerRestrictedSet: UpDataStructsOwnerRestrictedSet;
     UpDataStructsProperties: UpDataStructsProperties;
modifiedtests/src/interfaces/types-lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -1638,9 +1638,9 @@
     readonly isFungible: boolean;
     readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
     readonly isRefungibleMultipleItems: boolean;
-    readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;
+    readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExSingleOwner>;
     readonly isRefungibleMultipleOwners: boolean;
-    readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;
+    readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExMultipleOwners;
     readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';
   }
 
@@ -1650,13 +1650,20 @@
     readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name UpDataStructsCreateRefungibleExData (201) */
-  export interface UpDataStructsCreateRefungibleExData extends Struct {
+  /** @name UpDataStructsCreateRefungibleExSingleOwner (201) */
+  export interface UpDataStructsCreateRefungibleExSingleOwner extends Struct {
+    readonly user: PalletEvmAccountBasicCrossAccountIdRepr;
+    readonly pieces: u128;
+    readonly properties: Vec<UpDataStructsProperty>;
+  }
+
+  /** @name UpDataStructsCreateRefungibleExMultipleOwners (203) */
+  export interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct {
     readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
     readonly properties: Vec<UpDataStructsProperty>;
   }
 
-  /** @name PalletUniqueSchedulerCall (203) */
+  /** @name PalletUniqueSchedulerCall (204) */
   export interface PalletUniqueSchedulerCall extends Enum {
     readonly isScheduleNamed: boolean;
     readonly asScheduleNamed: {
@@ -1681,7 +1688,7 @@
     readonly type: 'ScheduleNamed' | 'CancelNamed' | 'ScheduleNamedAfter';
   }
 
-  /** @name FrameSupportScheduleMaybeHashed (205) */
+  /** @name FrameSupportScheduleMaybeHashed (206) */
   export interface FrameSupportScheduleMaybeHashed extends Enum {
     readonly isValue: boolean;
     readonly asValue: Call;
@@ -1690,13 +1697,13 @@
     readonly type: 'Value' | 'Hash';
   }
 
-  /** @name PalletTemplateTransactionPaymentCall (206) */
+  /** @name PalletTemplateTransactionPaymentCall (207) */
   export type PalletTemplateTransactionPaymentCall = Null;
 
-  /** @name PalletStructureCall (207) */
+  /** @name PalletStructureCall (208) */
   export type PalletStructureCall = Null;
 
-  /** @name PalletRmrkCoreCall (208) */
+  /** @name PalletRmrkCoreCall (209) */
   export interface PalletRmrkCoreCall extends Enum {
     readonly isCreateCollection: boolean;
     readonly asCreateCollection: {
@@ -1802,7 +1809,7 @@
     readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource';
   }
 
-  /** @name RmrkTraitsResourceResourceTypes (214) */
+  /** @name RmrkTraitsResourceResourceTypes (215) */
   export interface RmrkTraitsResourceResourceTypes extends Enum {
     readonly isBasic: boolean;
     readonly asBasic: RmrkTraitsResourceBasicResource;
@@ -1813,7 +1820,7 @@
     readonly type: 'Basic' | 'Composable' | 'Slot';
   }
 
-  /** @name RmrkTraitsResourceBasicResource (216) */
+  /** @name RmrkTraitsResourceBasicResource (217) */
   export interface RmrkTraitsResourceBasicResource extends Struct {
     readonly src: Option<Bytes>;
     readonly metadata: Option<Bytes>;
@@ -1821,7 +1828,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name RmrkTraitsResourceComposableResource (218) */
+  /** @name RmrkTraitsResourceComposableResource (219) */
   export interface RmrkTraitsResourceComposableResource extends Struct {
     readonly parts: Vec<u32>;
     readonly base: u32;
@@ -1831,7 +1838,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name RmrkTraitsResourceSlotResource (219) */
+  /** @name RmrkTraitsResourceSlotResource (220) */
   export interface RmrkTraitsResourceSlotResource extends Struct {
     readonly base: u32;
     readonly src: Option<Bytes>;
@@ -1841,7 +1848,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (221) */
+  /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (222) */
   export interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum {
     readonly isAccountId: boolean;
     readonly asAccountId: AccountId32;
@@ -1850,7 +1857,7 @@
     readonly type: 'AccountId' | 'CollectionAndNftTuple';
   }
 
-  /** @name PalletRmrkEquipCall (225) */
+  /** @name PalletRmrkEquipCall (226) */
   export interface PalletRmrkEquipCall extends Enum {
     readonly isCreateBase: boolean;
     readonly asCreateBase: {
@@ -1872,7 +1879,7 @@
     readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable';
   }
 
-  /** @name RmrkTraitsPartPartType (228) */
+  /** @name RmrkTraitsPartPartType (229) */
   export interface RmrkTraitsPartPartType extends Enum {
     readonly isFixedPart: boolean;
     readonly asFixedPart: RmrkTraitsPartFixedPart;
@@ -1881,14 +1888,14 @@
     readonly type: 'FixedPart' | 'SlotPart';
   }
 
-  /** @name RmrkTraitsPartFixedPart (230) */
+  /** @name RmrkTraitsPartFixedPart (231) */
   export interface RmrkTraitsPartFixedPart extends Struct {
     readonly id: u32;
     readonly z: u32;
     readonly src: Bytes;
   }
 
-  /** @name RmrkTraitsPartSlotPart (231) */
+  /** @name RmrkTraitsPartSlotPart (232) */
   export interface RmrkTraitsPartSlotPart extends Struct {
     readonly id: u32;
     readonly equippable: RmrkTraitsPartEquippableList;
@@ -1896,7 +1903,7 @@
     readonly z: u32;
   }
 
-  /** @name RmrkTraitsPartEquippableList (232) */
+  /** @name RmrkTraitsPartEquippableList (233) */
   export interface RmrkTraitsPartEquippableList extends Enum {
     readonly isAll: boolean;
     readonly isEmpty: boolean;
@@ -1905,20 +1912,20 @@
     readonly type: 'All' | 'Empty' | 'Custom';
   }
 
-  /** @name RmrkTraitsTheme (234) */
+  /** @name RmrkTraitsTheme (235) */
   export interface RmrkTraitsTheme extends Struct {
     readonly name: Bytes;
     readonly properties: Vec<RmrkTraitsThemeThemeProperty>;
     readonly inherit: bool;
   }
 
-  /** @name RmrkTraitsThemeThemeProperty (236) */
+  /** @name RmrkTraitsThemeThemeProperty (237) */
   export interface RmrkTraitsThemeThemeProperty extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name PalletEvmCall (238) */
+  /** @name PalletEvmCall (239) */
   export interface PalletEvmCall extends Enum {
     readonly isWithdraw: boolean;
     readonly asWithdraw: {
@@ -1963,7 +1970,7 @@
     readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';
   }
 
-  /** @name PalletEthereumCall (244) */
+  /** @name PalletEthereumCall (245) */
   export interface PalletEthereumCall extends Enum {
     readonly isTransact: boolean;
     readonly asTransact: {
@@ -1972,7 +1979,7 @@
     readonly type: 'Transact';
   }
 
-  /** @name EthereumTransactionTransactionV2 (245) */
+  /** @name EthereumTransactionTransactionV2 (246) */
   export interface EthereumTransactionTransactionV2 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumTransactionLegacyTransaction;
@@ -1983,7 +1990,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumTransactionLegacyTransaction (246) */
+  /** @name EthereumTransactionLegacyTransaction (247) */
   export interface EthereumTransactionLegacyTransaction extends Struct {
     readonly nonce: U256;
     readonly gasPrice: U256;
@@ -1994,7 +2001,7 @@
     readonly signature: EthereumTransactionTransactionSignature;
   }
 
-  /** @name EthereumTransactionTransactionAction (247) */
+  /** @name EthereumTransactionTransactionAction (248) */
   export interface EthereumTransactionTransactionAction extends Enum {
     readonly isCall: boolean;
     readonly asCall: H160;
@@ -2002,14 +2009,14 @@
     readonly type: 'Call' | 'Create';
   }
 
-  /** @name EthereumTransactionTransactionSignature (248) */
+  /** @name EthereumTransactionTransactionSignature (249) */
   export interface EthereumTransactionTransactionSignature extends Struct {
     readonly v: u64;
     readonly r: H256;
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionEip2930Transaction (250) */
+  /** @name EthereumTransactionEip2930Transaction (251) */
   export interface EthereumTransactionEip2930Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -2024,13 +2031,13 @@
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionAccessListItem (252) */
+  /** @name EthereumTransactionAccessListItem (253) */
   export interface EthereumTransactionAccessListItem extends Struct {
     readonly address: H160;
     readonly storageKeys: Vec<H256>;
   }
 
-  /** @name EthereumTransactionEip1559Transaction (253) */
+  /** @name EthereumTransactionEip1559Transaction (254) */
   export interface EthereumTransactionEip1559Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -2046,7 +2053,7 @@
     readonly s: H256;
   }
 
-  /** @name PalletEvmMigrationCall (254) */
+  /** @name PalletEvmMigrationCall (255) */
   export interface PalletEvmMigrationCall extends Enum {
     readonly isBegin: boolean;
     readonly asBegin: {
@@ -2065,7 +2072,7 @@
     readonly type: 'Begin' | 'SetData' | 'Finish';
   }
 
-  /** @name PalletSudoEvent (257) */
+  /** @name PalletSudoEvent (258) */
   export interface PalletSudoEvent extends Enum {
     readonly isSudid: boolean;
     readonly asSudid: {
@@ -2082,7 +2089,7 @@
     readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';
   }
 
-  /** @name SpRuntimeDispatchError (259) */
+  /** @name SpRuntimeDispatchError (260) */
   export interface SpRuntimeDispatchError extends Enum {
     readonly isOther: boolean;
     readonly isCannotLookup: boolean;
@@ -2101,13 +2108,13 @@
     readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic' | 'Transactional';
   }
 
-  /** @name SpRuntimeModuleError (260) */
+  /** @name SpRuntimeModuleError (261) */
   export interface SpRuntimeModuleError extends Struct {
     readonly index: u8;
     readonly error: U8aFixed;
   }
 
-  /** @name SpRuntimeTokenError (261) */
+  /** @name SpRuntimeTokenError (262) */
   export interface SpRuntimeTokenError extends Enum {
     readonly isNoFunds: boolean;
     readonly isWouldDie: boolean;
@@ -2119,7 +2126,7 @@
     readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';
   }
 
-  /** @name SpRuntimeArithmeticError (262) */
+  /** @name SpRuntimeArithmeticError (263) */
   export interface SpRuntimeArithmeticError extends Enum {
     readonly isUnderflow: boolean;
     readonly isOverflow: boolean;
@@ -2127,20 +2134,20 @@
     readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';
   }
 
-  /** @name SpRuntimeTransactionalError (263) */
+  /** @name SpRuntimeTransactionalError (264) */
   export interface SpRuntimeTransactionalError extends Enum {
     readonly isLimitReached: boolean;
     readonly isNoLayer: boolean;
     readonly type: 'LimitReached' | 'NoLayer';
   }
 
-  /** @name PalletSudoError (264) */
+  /** @name PalletSudoError (265) */
   export interface PalletSudoError extends Enum {
     readonly isRequireSudo: boolean;
     readonly type: 'RequireSudo';
   }
 
-  /** @name FrameSystemAccountInfo (265) */
+  /** @name FrameSystemAccountInfo (266) */
   export interface FrameSystemAccountInfo extends Struct {
     readonly nonce: u32;
     readonly consumers: u32;
@@ -2149,19 +2156,19 @@
     readonly data: PalletBalancesAccountData;
   }
 
-  /** @name FrameSupportWeightsPerDispatchClassU64 (266) */
+  /** @name FrameSupportWeightsPerDispatchClassU64 (267) */
   export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {
     readonly normal: u64;
     readonly operational: u64;
     readonly mandatory: u64;
   }
 
-  /** @name SpRuntimeDigest (267) */
+  /** @name SpRuntimeDigest (268) */
   export interface SpRuntimeDigest extends Struct {
     readonly logs: Vec<SpRuntimeDigestDigestItem>;
   }
 
-  /** @name SpRuntimeDigestDigestItem (269) */
+  /** @name SpRuntimeDigestDigestItem (270) */
   export interface SpRuntimeDigestDigestItem extends Enum {
     readonly isOther: boolean;
     readonly asOther: Bytes;
@@ -2175,14 +2182,14 @@
     readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';
   }
 
-  /** @name FrameSystemEventRecord (271) */
+  /** @name FrameSystemEventRecord (272) */
   export interface FrameSystemEventRecord extends Struct {
     readonly phase: FrameSystemPhase;
     readonly event: Event;
     readonly topics: Vec<H256>;
   }
 
-  /** @name FrameSystemEvent (273) */
+  /** @name FrameSystemEvent (274) */
   export interface FrameSystemEvent extends Enum {
     readonly isExtrinsicSuccess: boolean;
     readonly asExtrinsicSuccess: {
@@ -2210,14 +2217,14 @@
     readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';
   }
 
-  /** @name FrameSupportWeightsDispatchInfo (274) */
+  /** @name FrameSupportWeightsDispatchInfo (275) */
   export interface FrameSupportWeightsDispatchInfo extends Struct {
     readonly weight: u64;
     readonly class: FrameSupportWeightsDispatchClass;
     readonly paysFee: FrameSupportWeightsPays;
   }
 
-  /** @name FrameSupportWeightsDispatchClass (275) */
+  /** @name FrameSupportWeightsDispatchClass (276) */
   export interface FrameSupportWeightsDispatchClass extends Enum {
     readonly isNormal: boolean;
     readonly isOperational: boolean;
@@ -2225,14 +2232,14 @@
     readonly type: 'Normal' | 'Operational' | 'Mandatory';
   }
 
-  /** @name FrameSupportWeightsPays (276) */
+  /** @name FrameSupportWeightsPays (277) */
   export interface FrameSupportWeightsPays extends Enum {
     readonly isYes: boolean;
     readonly isNo: boolean;
     readonly type: 'Yes' | 'No';
   }
 
-  /** @name OrmlVestingModuleEvent (277) */
+  /** @name OrmlVestingModuleEvent (278) */
   export interface OrmlVestingModuleEvent extends Enum {
     readonly isVestingScheduleAdded: boolean;
     readonly asVestingScheduleAdded: {
@@ -2252,7 +2259,7 @@
     readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';
   }
 
-  /** @name CumulusPalletXcmpQueueEvent (278) */
+  /** @name CumulusPalletXcmpQueueEvent (279) */
   export interface CumulusPalletXcmpQueueEvent extends Enum {
     readonly isSuccess: boolean;
     readonly asSuccess: Option<H256>;
@@ -2273,7 +2280,7 @@
     readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';
   }
 
-  /** @name PalletXcmEvent (279) */
+  /** @name PalletXcmEvent (280) */
   export interface PalletXcmEvent extends Enum {
     readonly isAttempted: boolean;
     readonly asAttempted: XcmV2TraitsOutcome;
@@ -2310,7 +2317,7 @@
     readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';
   }
 
-  /** @name XcmV2TraitsOutcome (280) */
+  /** @name XcmV2TraitsOutcome (281) */
   export interface XcmV2TraitsOutcome extends Enum {
     readonly isComplete: boolean;
     readonly asComplete: u64;
@@ -2321,7 +2328,7 @@
     readonly type: 'Complete' | 'Incomplete' | 'Error';
   }
 
-  /** @name CumulusPalletXcmEvent (282) */
+  /** @name CumulusPalletXcmEvent (283) */
   export interface CumulusPalletXcmEvent extends Enum {
     readonly isInvalidFormat: boolean;
     readonly asInvalidFormat: U8aFixed;
@@ -2332,7 +2339,7 @@
     readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';
   }
 
-  /** @name CumulusPalletDmpQueueEvent (283) */
+  /** @name CumulusPalletDmpQueueEvent (284) */
   export interface CumulusPalletDmpQueueEvent extends Enum {
     readonly isInvalidFormat: boolean;
     readonly asInvalidFormat: {
@@ -2367,7 +2374,7 @@
     readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';
   }
 
-  /** @name PalletUniqueRawEvent (284) */
+  /** @name PalletUniqueRawEvent (285) */
   export interface PalletUniqueRawEvent extends Enum {
     readonly isCollectionSponsorRemoved: boolean;
     readonly asCollectionSponsorRemoved: u32;
@@ -2392,7 +2399,7 @@
     readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'CollectionPermissionSet';
   }
 
-  /** @name PalletUniqueSchedulerEvent (285) */
+  /** @name PalletUniqueSchedulerEvent (286) */
   export interface PalletUniqueSchedulerEvent extends Enum {
     readonly isScheduled: boolean;
     readonly asScheduled: {
@@ -2419,14 +2426,14 @@
     readonly type: 'Scheduled' | 'Canceled' | 'Dispatched' | 'CallLookupFailed';
   }
 
-  /** @name FrameSupportScheduleLookupError (287) */
+  /** @name FrameSupportScheduleLookupError (288) */
   export interface FrameSupportScheduleLookupError extends Enum {
     readonly isUnknown: boolean;
     readonly isBadFormat: boolean;
     readonly type: 'Unknown' | 'BadFormat';
   }
 
-  /** @name PalletCommonEvent (288) */
+  /** @name PalletCommonEvent (289) */
   export interface PalletCommonEvent extends Enum {
     readonly isCollectionCreated: boolean;
     readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;
@@ -2453,14 +2460,14 @@
     readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved' | 'CollectionPropertySet' | 'CollectionPropertyDeleted' | 'TokenPropertySet' | 'TokenPropertyDeleted' | 'PropertyPermissionSet';
   }
 
-  /** @name PalletStructureEvent (289) */
+  /** @name PalletStructureEvent (290) */
   export interface PalletStructureEvent extends Enum {
     readonly isExecuted: boolean;
     readonly asExecuted: Result<Null, SpRuntimeDispatchError>;
     readonly type: 'Executed';
   }
 
-  /** @name PalletRmrkCoreEvent (290) */
+  /** @name PalletRmrkCoreEvent (291) */
   export interface PalletRmrkCoreEvent extends Enum {
     readonly isCollectionCreated: boolean;
     readonly asCollectionCreated: {
@@ -2550,7 +2557,7 @@
     readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'IssuerChanged' | 'CollectionLocked' | 'NftMinted' | 'NftBurned' | 'NftSent' | 'NftAccepted' | 'NftRejected' | 'PropertySet' | 'ResourceAdded' | 'ResourceRemoval' | 'ResourceAccepted' | 'ResourceRemovalAccepted' | 'PrioritySet';
   }
 
-  /** @name PalletRmrkEquipEvent (291) */
+  /** @name PalletRmrkEquipEvent (292) */
   export interface PalletRmrkEquipEvent extends Enum {
     readonly isBaseCreated: boolean;
     readonly asBaseCreated: {
@@ -2565,7 +2572,7 @@
     readonly type: 'BaseCreated' | 'EquippablesUpdated';
   }
 
-  /** @name PalletEvmEvent (292) */
+  /** @name PalletEvmEvent (293) */
   export interface PalletEvmEvent extends Enum {
     readonly isLog: boolean;
     readonly asLog: EthereumLog;
@@ -2584,21 +2591,21 @@
     readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';
   }
 
-  /** @name EthereumLog (293) */
+  /** @name EthereumLog (294) */
   export interface EthereumLog extends Struct {
     readonly address: H160;
     readonly topics: Vec<H256>;
     readonly data: Bytes;
   }
 
-  /** @name PalletEthereumEvent (294) */
+  /** @name PalletEthereumEvent (295) */
   export interface PalletEthereumEvent extends Enum {
     readonly isExecuted: boolean;
     readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;
     readonly type: 'Executed';
   }
 
-  /** @name EvmCoreErrorExitReason (295) */
+  /** @name EvmCoreErrorExitReason (296) */
   export interface EvmCoreErrorExitReason extends Enum {
     readonly isSucceed: boolean;
     readonly asSucceed: EvmCoreErrorExitSucceed;
@@ -2611,7 +2618,7 @@
     readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';
   }
 
-  /** @name EvmCoreErrorExitSucceed (296) */
+  /** @name EvmCoreErrorExitSucceed (297) */
   export interface EvmCoreErrorExitSucceed extends Enum {
     readonly isStopped: boolean;
     readonly isReturned: boolean;
@@ -2619,7 +2626,7 @@
     readonly type: 'Stopped' | 'Returned' | 'Suicided';
   }
 
-  /** @name EvmCoreErrorExitError (297) */
+  /** @name EvmCoreErrorExitError (298) */
   export interface EvmCoreErrorExitError extends Enum {
     readonly isStackUnderflow: boolean;
     readonly isStackOverflow: boolean;
@@ -2640,13 +2647,13 @@
     readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'InvalidCode';
   }
 
-  /** @name EvmCoreErrorExitRevert (300) */
+  /** @name EvmCoreErrorExitRevert (301) */
   export interface EvmCoreErrorExitRevert extends Enum {
     readonly isReverted: boolean;
     readonly type: 'Reverted';
   }
 
-  /** @name EvmCoreErrorExitFatal (301) */
+  /** @name EvmCoreErrorExitFatal (302) */
   export interface EvmCoreErrorExitFatal extends Enum {
     readonly isNotSupported: boolean;
     readonly isUnhandledInterrupt: boolean;
@@ -2657,7 +2664,7 @@
     readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';
   }
 
-  /** @name FrameSystemPhase (302) */
+  /** @name FrameSystemPhase (303) */
   export interface FrameSystemPhase extends Enum {
     readonly isApplyExtrinsic: boolean;
     readonly asApplyExtrinsic: u32;
@@ -2666,27 +2673,27 @@
     readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';
   }
 
-  /** @name FrameSystemLastRuntimeUpgradeInfo (304) */
+  /** @name FrameSystemLastRuntimeUpgradeInfo (305) */
   export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {
     readonly specVersion: Compact<u32>;
     readonly specName: Text;
   }
 
-  /** @name FrameSystemLimitsBlockWeights (305) */
+  /** @name FrameSystemLimitsBlockWeights (306) */
   export interface FrameSystemLimitsBlockWeights extends Struct {
     readonly baseBlock: u64;
     readonly maxBlock: u64;
     readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;
   }
 
-  /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (306) */
+  /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (307) */
   export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {
     readonly normal: FrameSystemLimitsWeightsPerClass;
     readonly operational: FrameSystemLimitsWeightsPerClass;
     readonly mandatory: FrameSystemLimitsWeightsPerClass;
   }
 
-  /** @name FrameSystemLimitsWeightsPerClass (307) */
+  /** @name FrameSystemLimitsWeightsPerClass (308) */
   export interface FrameSystemLimitsWeightsPerClass extends Struct {
     readonly baseExtrinsic: u64;
     readonly maxExtrinsic: Option<u64>;
@@ -2694,25 +2701,25 @@
     readonly reserved: Option<u64>;
   }
 
-  /** @name FrameSystemLimitsBlockLength (309) */
+  /** @name FrameSystemLimitsBlockLength (310) */
   export interface FrameSystemLimitsBlockLength extends Struct {
     readonly max: FrameSupportWeightsPerDispatchClassU32;
   }
 
-  /** @name FrameSupportWeightsPerDispatchClassU32 (310) */
+  /** @name FrameSupportWeightsPerDispatchClassU32 (311) */
   export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {
     readonly normal: u32;
     readonly operational: u32;
     readonly mandatory: u32;
   }
 
-  /** @name FrameSupportWeightsRuntimeDbWeight (311) */
+  /** @name FrameSupportWeightsRuntimeDbWeight (312) */
   export interface FrameSupportWeightsRuntimeDbWeight extends Struct {
     readonly read: u64;
     readonly write: u64;
   }
 
-  /** @name SpVersionRuntimeVersion (312) */
+  /** @name SpVersionRuntimeVersion (313) */
   export interface SpVersionRuntimeVersion extends Struct {
     readonly specName: Text;
     readonly implName: Text;
@@ -2724,7 +2731,7 @@
     readonly stateVersion: u8;
   }
 
-  /** @name FrameSystemError (316) */
+  /** @name FrameSystemError (317) */
   export interface FrameSystemError extends Enum {
     readonly isInvalidSpecName: boolean;
     readonly isSpecVersionNeedsToIncrease: boolean;
@@ -2735,7 +2742,7 @@
     readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';
   }
 
-  /** @name OrmlVestingModuleError (318) */
+  /** @name OrmlVestingModuleError (319) */
   export interface OrmlVestingModuleError extends Enum {
     readonly isZeroVestingPeriod: boolean;
     readonly isZeroVestingPeriodCount: boolean;
@@ -2746,21 +2753,21 @@
     readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';
   }
 
-  /** @name CumulusPalletXcmpQueueInboundChannelDetails (320) */
+  /** @name CumulusPalletXcmpQueueInboundChannelDetails (321) */
   export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {
     readonly sender: u32;
     readonly state: CumulusPalletXcmpQueueInboundState;
     readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;
   }
 
-  /** @name CumulusPalletXcmpQueueInboundState (321) */
+  /** @name CumulusPalletXcmpQueueInboundState (322) */
   export interface CumulusPalletXcmpQueueInboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (324) */
+  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (325) */
   export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {
     readonly isConcatenatedVersionedXcm: boolean;
     readonly isConcatenatedEncodedBlob: boolean;
@@ -2768,7 +2775,7 @@
     readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (327) */
+  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (328) */
   export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {
     readonly recipient: u32;
     readonly state: CumulusPalletXcmpQueueOutboundState;
@@ -2777,14 +2784,14 @@
     readonly lastIndex: u16;
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundState (328) */
+  /** @name CumulusPalletXcmpQueueOutboundState (329) */
   export interface CumulusPalletXcmpQueueOutboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name CumulusPalletXcmpQueueQueueConfigData (330) */
+  /** @name CumulusPalletXcmpQueueQueueConfigData (331) */
   export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {
     readonly suspendThreshold: u32;
     readonly dropThreshold: u32;
@@ -2794,7 +2801,7 @@
     readonly xcmpMaxIndividualWeight: u64;
   }
 
-  /** @name CumulusPalletXcmpQueueError (332) */
+  /** @name CumulusPalletXcmpQueueError (333) */
   export interface CumulusPalletXcmpQueueError extends Enum {
     readonly isFailedToSend: boolean;
     readonly isBadXcmOrigin: boolean;
@@ -2804,7 +2811,7 @@
     readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';
   }
 
-  /** @name PalletXcmError (333) */
+  /** @name PalletXcmError (334) */
   export interface PalletXcmError extends Enum {
     readonly isUnreachable: boolean;
     readonly isSendFailure: boolean;
@@ -2822,29 +2829,29 @@
     readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';
   }
 
-  /** @name CumulusPalletXcmError (334) */
+  /** @name CumulusPalletXcmError (335) */
   export type CumulusPalletXcmError = Null;
 
-  /** @name CumulusPalletDmpQueueConfigData (335) */
+  /** @name CumulusPalletDmpQueueConfigData (336) */
   export interface CumulusPalletDmpQueueConfigData extends Struct {
     readonly maxIndividual: u64;
   }
 
-  /** @name CumulusPalletDmpQueuePageIndexData (336) */
+  /** @name CumulusPalletDmpQueuePageIndexData (337) */
   export interface CumulusPalletDmpQueuePageIndexData extends Struct {
     readonly beginUsed: u32;
     readonly endUsed: u32;
     readonly overweightCount: u64;
   }
 
-  /** @name CumulusPalletDmpQueueError (339) */
+  /** @name CumulusPalletDmpQueueError (340) */
   export interface CumulusPalletDmpQueueError extends Enum {
     readonly isUnknown: boolean;
     readonly isOverLimit: boolean;
     readonly type: 'Unknown' | 'OverLimit';
   }
 
-  /** @name PalletUniqueError (343) */
+  /** @name PalletUniqueError (344) */
   export interface PalletUniqueError extends Enum {
     readonly isCollectionDecimalPointLimitExceeded: boolean;
     readonly isConfirmUnsetSponsorFail: boolean;
@@ -2853,7 +2860,7 @@
     readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection';
   }
 
-  /** @name PalletUniqueSchedulerScheduledV3 (346) */
+  /** @name PalletUniqueSchedulerScheduledV3 (347) */
   export interface PalletUniqueSchedulerScheduledV3 extends Struct {
     readonly maybeId: Option<U8aFixed>;
     readonly priority: u8;
@@ -2862,7 +2869,7 @@
     readonly origin: OpalRuntimeOriginCaller;
   }
 
-  /** @name OpalRuntimeOriginCaller (347) */
+  /** @name OpalRuntimeOriginCaller (348) */
   export interface OpalRuntimeOriginCaller extends Enum {
     readonly isVoid: boolean;
     readonly isSystem: boolean;
@@ -2876,7 +2883,7 @@
     readonly type: 'Void' | 'System' | 'PolkadotXcm' | 'CumulusXcm' | 'Ethereum';
   }
 
-  /** @name FrameSupportDispatchRawOrigin (348) */
+  /** @name FrameSupportDispatchRawOrigin (349) */
   export interface FrameSupportDispatchRawOrigin extends Enum {
     readonly isRoot: boolean;
     readonly isSigned: boolean;
@@ -2885,7 +2892,7 @@
     readonly type: 'Root' | 'Signed' | 'None';
   }
 
-  /** @name PalletXcmOrigin (349) */
+  /** @name PalletXcmOrigin (350) */
   export interface PalletXcmOrigin extends Enum {
     readonly isXcm: boolean;
     readonly asXcm: XcmV1MultiLocation;
@@ -2894,7 +2901,7 @@
     readonly type: 'Xcm' | 'Response';
   }
 
-  /** @name CumulusPalletXcmOrigin (350) */
+  /** @name CumulusPalletXcmOrigin (351) */
   export interface CumulusPalletXcmOrigin extends Enum {
     readonly isRelay: boolean;
     readonly isSiblingParachain: boolean;
@@ -2902,17 +2909,17 @@
     readonly type: 'Relay' | 'SiblingParachain';
   }
 
-  /** @name PalletEthereumRawOrigin (351) */
+  /** @name PalletEthereumRawOrigin (352) */
   export interface PalletEthereumRawOrigin extends Enum {
     readonly isEthereumTransaction: boolean;
     readonly asEthereumTransaction: H160;
     readonly type: 'EthereumTransaction';
   }
 
-  /** @name SpCoreVoid (352) */
+  /** @name SpCoreVoid (353) */
   export type SpCoreVoid = Null;
 
-  /** @name PalletUniqueSchedulerError (353) */
+  /** @name PalletUniqueSchedulerError (354) */
   export interface PalletUniqueSchedulerError extends Enum {
     readonly isFailedToSchedule: boolean;
     readonly isNotFound: boolean;
@@ -2921,7 +2928,7 @@
     readonly type: 'FailedToSchedule' | 'NotFound' | 'TargetBlockNumberInPast' | 'RescheduleNoChange';
   }
 
-  /** @name UpDataStructsCollection (354) */
+  /** @name UpDataStructsCollection (355) */
   export interface UpDataStructsCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -2934,7 +2941,7 @@
     readonly externalCollection: bool;
   }
 
-  /** @name UpDataStructsSponsorshipState (355) */
+  /** @name UpDataStructsSponsorshipState (356) */
   export interface UpDataStructsSponsorshipState extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -2944,43 +2951,43 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name UpDataStructsProperties (356) */
+  /** @name UpDataStructsProperties (357) */
   export interface UpDataStructsProperties extends Struct {
     readonly map: UpDataStructsPropertiesMapBoundedVec;
     readonly consumedSpace: u32;
     readonly spaceLimit: u32;
   }
 
-  /** @name UpDataStructsPropertiesMapBoundedVec (357) */
+  /** @name UpDataStructsPropertiesMapBoundedVec (358) */
   export interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}
 
-  /** @name UpDataStructsPropertiesMapPropertyPermission (362) */
+  /** @name UpDataStructsPropertiesMapPropertyPermission (363) */
   export interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}
 
-  /** @name UpDataStructsCollectionStats (369) */
+  /** @name UpDataStructsCollectionStats (370) */
   export interface UpDataStructsCollectionStats extends Struct {
     readonly created: u32;
     readonly destroyed: u32;
     readonly alive: u32;
   }
 
-  /** @name UpDataStructsTokenChild (370) */
+  /** @name UpDataStructsTokenChild (371) */
   export interface UpDataStructsTokenChild extends Struct {
     readonly token: u32;
     readonly collection: u32;
   }
 
-  /** @name PhantomTypeUpDataStructs (371) */
+  /** @name PhantomTypeUpDataStructs (372) */
   export interface PhantomTypeUpDataStructs extends Vec<ITuple<[UpDataStructsTokenData, UpDataStructsRpcCollection, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftNftInfo, RmrkTraitsResourceResourceInfo, RmrkTraitsPropertyPropertyInfo, RmrkTraitsBaseBaseInfo, RmrkTraitsPartPartType, RmrkTraitsTheme, RmrkTraitsNftNftChild]>> {}
 
-  /** @name UpDataStructsTokenData (373) */
+  /** @name UpDataStructsTokenData (374) */
   export interface UpDataStructsTokenData extends Struct {
     readonly properties: Vec<UpDataStructsProperty>;
     readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
     readonly pieces: u128;
   }
 
-  /** @name UpDataStructsRpcCollection (375) */
+  /** @name UpDataStructsRpcCollection (376) */
   export interface UpDataStructsRpcCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -2995,7 +3002,7 @@
     readonly readOnly: bool;
   }
 
-  /** @name RmrkTraitsCollectionCollectionInfo (376) */
+  /** @name RmrkTraitsCollectionCollectionInfo (377) */
   export interface RmrkTraitsCollectionCollectionInfo extends Struct {
     readonly issuer: AccountId32;
     readonly metadata: Bytes;
@@ -3004,7 +3011,7 @@
     readonly nftsCount: u32;
   }
 
-  /** @name RmrkTraitsNftNftInfo (377) */
+  /** @name RmrkTraitsNftNftInfo (378) */
   export interface RmrkTraitsNftNftInfo extends Struct {
     readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple;
     readonly royalty: Option<RmrkTraitsNftRoyaltyInfo>;
@@ -3013,13 +3020,13 @@
     readonly pending: bool;
   }
 
-  /** @name RmrkTraitsNftRoyaltyInfo (379) */
+  /** @name RmrkTraitsNftRoyaltyInfo (380) */
   export interface RmrkTraitsNftRoyaltyInfo extends Struct {
     readonly recipient: AccountId32;
     readonly amount: Permill;
   }
 
-  /** @name RmrkTraitsResourceResourceInfo (380) */
+  /** @name RmrkTraitsResourceResourceInfo (381) */
   export interface RmrkTraitsResourceResourceInfo extends Struct {
     readonly id: u32;
     readonly resource: RmrkTraitsResourceResourceTypes;
@@ -3027,26 +3034,26 @@
     readonly pendingRemoval: bool;
   }
 
-  /** @name RmrkTraitsPropertyPropertyInfo (381) */
+  /** @name RmrkTraitsPropertyPropertyInfo (382) */
   export interface RmrkTraitsPropertyPropertyInfo extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name RmrkTraitsBaseBaseInfo (382) */
+  /** @name RmrkTraitsBaseBaseInfo (383) */
   export interface RmrkTraitsBaseBaseInfo extends Struct {
     readonly issuer: AccountId32;
     readonly baseType: Bytes;
     readonly symbol: Bytes;
   }
 
-  /** @name RmrkTraitsNftNftChild (383) */
+  /** @name RmrkTraitsNftNftChild (384) */
   export interface RmrkTraitsNftNftChild extends Struct {
     readonly collectionId: u32;
     readonly nftId: u32;
   }
 
-  /** @name PalletCommonError (385) */
+  /** @name PalletCommonError (386) */
   export interface PalletCommonError extends Enum {
     readonly isCollectionNotFound: boolean;
     readonly isMustBeTokenOwner: boolean;
@@ -3085,7 +3092,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';
   }
 
-  /** @name PalletFungibleError (387) */
+  /** @name PalletFungibleError (388) */
   export interface PalletFungibleError extends Enum {
     readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isFungibleItemsHaveNoId: boolean;
@@ -3095,12 +3102,12 @@
     readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
   }
 
-  /** @name PalletRefungibleItemData (388) */
+  /** @name PalletRefungibleItemData (389) */
   export interface PalletRefungibleItemData extends Struct {
     readonly constData: Bytes;
   }
 
-  /** @name PalletRefungibleError (393) */
+  /** @name PalletRefungibleError (394) */
   export interface PalletRefungibleError extends Enum {
     readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isWrongRefungiblePieces: boolean;
@@ -3110,19 +3117,19 @@
     readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
   }
 
-  /** @name PalletNonfungibleItemData (394) */
+  /** @name PalletNonfungibleItemData (395) */
   export interface PalletNonfungibleItemData extends Struct {
     readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name UpDataStructsPropertyScope (396) */
+  /** @name UpDataStructsPropertyScope (397) */
   export interface UpDataStructsPropertyScope extends Enum {
     readonly isNone: boolean;
     readonly isRmrk: boolean;
     readonly type: 'None' | 'Rmrk';
   }
 
-  /** @name PalletNonfungibleError (398) */
+  /** @name PalletNonfungibleError (399) */
   export interface PalletNonfungibleError extends Enum {
     readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isNonfungibleItemsHaveNoAmount: boolean;
@@ -3130,7 +3137,7 @@
     readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount' | 'CantBurnNftWithChildren';
   }
 
-  /** @name PalletStructureError (399) */
+  /** @name PalletStructureError (400) */
   export interface PalletStructureError extends Enum {
     readonly isOuroborosDetected: boolean;
     readonly isDepthLimit: boolean;
@@ -3139,7 +3146,7 @@
     readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound';
   }
 
-  /** @name PalletRmrkCoreError (400) */
+  /** @name PalletRmrkCoreError (401) */
   export interface PalletRmrkCoreError extends Enum {
     readonly isCorruptedCollectionType: boolean;
     readonly isRmrkPropertyKeyIsTooLong: boolean;
@@ -3163,7 +3170,7 @@
     readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId';
   }
 
-  /** @name PalletRmrkEquipError (402) */
+  /** @name PalletRmrkEquipError (403) */
   export interface PalletRmrkEquipError extends Enum {
     readonly isPermissionError: boolean;
     readonly isNoAvailableBaseId: boolean;
@@ -3175,7 +3182,7 @@
     readonly type: 'PermissionError' | 'NoAvailableBaseId' | 'NoAvailablePartId' | 'BaseDoesntExist' | 'NeedsDefaultThemeFirst' | 'PartDoesntExist' | 'NoEquippableOnFixedPart';
   }
 
-  /** @name PalletEvmError (405) */
+  /** @name PalletEvmError (406) */
   export interface PalletEvmError extends Enum {
     readonly isBalanceLow: boolean;
     readonly isFeeOverflow: boolean;
@@ -3186,7 +3193,7 @@
     readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';
   }
 
-  /** @name FpRpcTransactionStatus (408) */
+  /** @name FpRpcTransactionStatus (409) */
   export interface FpRpcTransactionStatus extends Struct {
     readonly transactionHash: H256;
     readonly transactionIndex: u32;
@@ -3197,10 +3204,10 @@
     readonly logsBloom: EthbloomBloom;
   }
 
-  /** @name EthbloomBloom (410) */
+  /** @name EthbloomBloom (411) */
   export interface EthbloomBloom extends U8aFixed {}
 
-  /** @name EthereumReceiptReceiptV3 (412) */
+  /** @name EthereumReceiptReceiptV3 (413) */
   export interface EthereumReceiptReceiptV3 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumReceiptEip658ReceiptData;
@@ -3211,7 +3218,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumReceiptEip658ReceiptData (413) */
+  /** @name EthereumReceiptEip658ReceiptData (414) */
   export interface EthereumReceiptEip658ReceiptData extends Struct {
     readonly statusCode: u8;
     readonly usedGas: U256;
@@ -3219,14 +3226,14 @@
     readonly logs: Vec<EthereumLog>;
   }
 
-  /** @name EthereumBlock (414) */
+  /** @name EthereumBlock (415) */
   export interface EthereumBlock extends Struct {
     readonly header: EthereumHeader;
     readonly transactions: Vec<EthereumTransactionTransactionV2>;
     readonly ommers: Vec<EthereumHeader>;
   }
 
-  /** @name EthereumHeader (415) */
+  /** @name EthereumHeader (416) */
   export interface EthereumHeader extends Struct {
     readonly parentHash: H256;
     readonly ommersHash: H256;
@@ -3245,24 +3252,24 @@
     readonly nonce: EthereumTypesHashH64;
   }
 
-  /** @name EthereumTypesHashH64 (416) */
+  /** @name EthereumTypesHashH64 (417) */
   export interface EthereumTypesHashH64 extends U8aFixed {}
 
-  /** @name PalletEthereumError (421) */
+  /** @name PalletEthereumError (422) */
   export interface PalletEthereumError extends Enum {
     readonly isInvalidSignature: boolean;
     readonly isPreLogExists: boolean;
     readonly type: 'InvalidSignature' | 'PreLogExists';
   }
 
-  /** @name PalletEvmCoderSubstrateError (422) */
+  /** @name PalletEvmCoderSubstrateError (423) */
   export interface PalletEvmCoderSubstrateError extends Enum {
     readonly isOutOfGas: boolean;
     readonly isOutOfFund: boolean;
     readonly type: 'OutOfGas' | 'OutOfFund';
   }
 
-  /** @name PalletEvmContractHelpersSponsoringModeT (423) */
+  /** @name PalletEvmContractHelpersSponsoringModeT (424) */
   export interface PalletEvmContractHelpersSponsoringModeT extends Enum {
     readonly isDisabled: boolean;
     readonly isAllowlisted: boolean;
@@ -3270,20 +3277,20 @@
     readonly type: 'Disabled' | 'Allowlisted' | 'Generous';
   }
 
-  /** @name PalletEvmContractHelpersError (425) */
+  /** @name PalletEvmContractHelpersError (426) */
   export interface PalletEvmContractHelpersError extends Enum {
     readonly isNoPermission: boolean;
     readonly type: 'NoPermission';
   }
 
-  /** @name PalletEvmMigrationError (426) */
+  /** @name PalletEvmMigrationError (427) */
   export interface PalletEvmMigrationError extends Enum {
     readonly isAccountNotEmpty: boolean;
     readonly isAccountIsNotMigrating: boolean;
     readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';
   }
 
-  /** @name SpRuntimeMultiSignature (428) */
+  /** @name SpRuntimeMultiSignature (429) */
   export interface SpRuntimeMultiSignature extends Enum {
     readonly isEd25519: boolean;
     readonly asEd25519: SpCoreEd25519Signature;
@@ -3294,34 +3301,34 @@
     readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';
   }
 
-  /** @name SpCoreEd25519Signature (429) */
+  /** @name SpCoreEd25519Signature (430) */
   export interface SpCoreEd25519Signature extends U8aFixed {}
 
-  /** @name SpCoreSr25519Signature (431) */
+  /** @name SpCoreSr25519Signature (432) */
   export interface SpCoreSr25519Signature extends U8aFixed {}
 
-  /** @name SpCoreEcdsaSignature (432) */
+  /** @name SpCoreEcdsaSignature (433) */
   export interface SpCoreEcdsaSignature extends U8aFixed {}
 
-  /** @name FrameSystemExtensionsCheckSpecVersion (435) */
+  /** @name FrameSystemExtensionsCheckSpecVersion (436) */
   export type FrameSystemExtensionsCheckSpecVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckGenesis (436) */
+  /** @name FrameSystemExtensionsCheckGenesis (437) */
   export type FrameSystemExtensionsCheckGenesis = Null;
 
-  /** @name FrameSystemExtensionsCheckNonce (439) */
+  /** @name FrameSystemExtensionsCheckNonce (440) */
   export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}
 
-  /** @name FrameSystemExtensionsCheckWeight (440) */
+  /** @name FrameSystemExtensionsCheckWeight (441) */
   export type FrameSystemExtensionsCheckWeight = Null;
 
-  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (441) */
+  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (442) */
   export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
 
-  /** @name OpalRuntimeRuntime (442) */
+  /** @name OpalRuntimeRuntime (443) */
   export type OpalRuntimeRuntime = Null;
 
-  /** @name PalletEthereumFakeTransactionFinalizer (443) */
+  /** @name PalletEthereumFakeTransactionFinalizer (444) */
   export type PalletEthereumFakeTransactionFinalizer = Null;
 
 } // declare module