git.delta.rocks / unique-network / refs/commits / 5f2e50bafc58

difftreelog

Merge branch 'develop' into feature/CORE-325

Igor Kozyrev2022-04-21parents: #c97f702 #23e7e86.patch.diff
in: master

63 files changed

modified.gitignorediffbeforeafterboth
--- a/.gitignore
+++ b/.gitignore
@@ -11,6 +11,7 @@
 *store_key*.json
 
 /.idea/
+/.cargo/
 
 tests/.vscode
 cumulus-parachain/
modifiedCargo.lockdiffbeforeafterboth
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -68,7 +68,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
 dependencies = [
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
  "once_cell",
  "version_check",
 ]
@@ -188,9 +188,9 @@
 
 [[package]]
 name = "async-global-executor"
-version = "2.0.3"
+version = "2.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c026b7e44f1316b567ee750fea85103f87fcb80792b860e979f221259796ca0a"
+checksum = "c290043c9a95b05d45e952fb6383c67bcb61471f60cfa21e890dba6654234f43"
 dependencies = [
  "async-channel",
  "async-executor",
@@ -306,9 +306,9 @@
 
 [[package]]
 name = "async-trait"
-version = "0.1.52"
+version = "0.1.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3"
+checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -392,7 +392,7 @@
 checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
 dependencies = [
  "futures-core",
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
  "instant",
  "pin-project-lite 0.2.8",
  "rand 0.8.5",
@@ -440,9 +440,9 @@
 
 [[package]]
 name = "base64ct"
-version = "1.4.1"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71acf5509fc522cce1b100ac0121c635129bfd4d91cdf036bcc9b9935f97ccf5"
+checksum = "dea908e7347a8c64e378c17e30ef880ad73e3b4498346b055c2c00ea342f3179"
 
 [[package]]
 name = "beef"
@@ -990,7 +990,7 @@
 dependencies = [
  "camino",
  "cargo-platform",
- "semver 1.0.6",
+ "semver 1.0.7",
  "serde",
  "serde_json",
 ]
@@ -1111,9 +1111,9 @@
 
 [[package]]
 name = "clap"
-version = "3.1.6"
+version = "3.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8c93436c21e4698bacadf42917db28b23017027a4deccb35dbe47a7e7840123"
+checksum = "71c47df61d9e16dc010b55dba1952a57d8c215dbb533fd13cdd13369aac73b1c"
 dependencies = [
  "atty",
  "bitflags",
@@ -1128,9 +1128,9 @@
 
 [[package]]
 name = "clap_derive"
-version = "3.1.4"
+version = "3.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da95d038ede1a964ce99f49cbe27a7fb538d1da595e4b4f70b8c8f338d17bf16"
+checksum = "a3aab4734e083b809aaf5794e14e756d1c798d2c69c7f7de7a09a2f5214993c1"
 dependencies = [
  "heck 0.4.0",
  "proc-macro-error",
@@ -1913,9 +1913,9 @@
 
 [[package]]
 name = "darling"
-version = "0.13.1"
+version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0d720b8683f8dd83c65155f0530560cba68cd2bf395f6513a483caee57ff7f4"
+checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -1923,9 +1923,9 @@
 
 [[package]]
 name = "darling_core"
-version = "0.13.1"
+version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a340f241d2ceed1deb47ae36c4144b2707ec7dd0b649f894cb39bb595986324"
+checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
 dependencies = [
  "fnv",
  "ident_case",
@@ -1937,9 +1937,9 @@
 
 [[package]]
 name = "darling_macro"
-version = "0.13.1"
+version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72c41b3b7352feb3211a0d743dc5700a4e3b60f51bd2b368892d1e0f9a95f44b"
+checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
 dependencies = [
  "darling_core",
  "quote",
@@ -2484,7 +2484,7 @@
 [[package]]
 name = "fc-consensus"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -2511,7 +2511,7 @@
 [[package]]
 name = "fc-db"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "fp-storage",
  "kvdb",
@@ -2527,7 +2527,7 @@
 [[package]]
 name = "fc-mapping-sync"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "fc-consensus",
  "fc-db",
@@ -2545,7 +2545,7 @@
 [[package]]
 name = "fc-rpc"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
@@ -2591,7 +2591,7 @@
 [[package]]
 name = "fc-rpc-core"
 version = "1.1.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
@@ -2725,7 +2725,7 @@
 [[package]]
 name = "fp-consensus"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "parity-scale-codec",
@@ -2739,7 +2739,7 @@
 [[package]]
 name = "fp-evm"
 version = "3.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "evm",
  "impl-trait-for-tuples",
@@ -2751,9 +2751,18 @@
 ]
 
 [[package]]
+name = "fp-evm-mapping"
+version = "0.1.0"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
+dependencies = [
+ "frame-support",
+ "sp-core",
+]
+
+[[package]]
 name = "fp-rpc"
 version = "3.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
@@ -2770,7 +2779,7 @@
 [[package]]
 name = "fp-self-contained"
 version = "1.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "frame-support",
@@ -2787,7 +2796,7 @@
 [[package]]
 name = "fp-storage"
 version = "2.0.0"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 
 [[package]]
 name = "frame-benchmarking"
@@ -3234,9 +3243,9 @@
 
 [[package]]
 name = "getrandom"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77"
+checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -3308,9 +3317,9 @@
 
 [[package]]
 name = "h2"
-version = "0.3.12"
+version = "0.3.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62eeb471aa3e3c9197aa4bfeabfe02982f6dc96f750486c0bb0009ac58b26d2b"
+checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57"
 dependencies = [
  "bytes 1.1.0",
  "fnv",
@@ -3321,7 +3330,7 @@
  "indexmap",
  "slab",
  "tokio 1.17.0",
- "tokio-util",
+ "tokio-util 0.7.1",
  "tracing",
 ]
 
@@ -3679,9 +3688,9 @@
 
 [[package]]
 name = "indexmap"
-version = "1.8.0"
+version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223"
+checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee"
 dependencies = [
  "autocfg",
  "hashbrown 0.11.2",
@@ -3906,7 +3915,7 @@
  "log",
  "tokio 1.17.0",
  "tokio-stream",
- "tokio-util",
+ "tokio-util 0.6.9",
  "unicase",
 ]
 
@@ -3976,7 +3985,7 @@
  "thiserror",
  "tokio 1.17.0",
  "tokio-rustls 0.23.3",
- "tokio-util",
+ "tokio-util 0.6.9",
  "tracing",
  "webpki-roots 0.22.2",
 ]
@@ -3997,7 +4006,7 @@
  "thiserror",
  "tokio 1.17.0",
  "tokio-rustls 0.23.3",
- "tokio-util",
+ "tokio-util 0.6.9",
  "tracing",
  "webpki-roots 0.22.2",
 ]
@@ -4158,7 +4167,7 @@
  "thiserror",
  "tokio 1.17.0",
  "tokio-rustls 0.22.0",
- "tokio-util",
+ "tokio-util 0.6.9",
 ]
 
 [[package]]
@@ -4769,7 +4778,7 @@
  "libp2p-core",
  "libp2p-swarm",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "rand 0.7.3",
  "smallvec",
  "unsigned-varint 0.7.1",
@@ -4999,10 +5008,11 @@
 
 [[package]]
 name = "lock_api"
-version = "0.4.6"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88943dd7ef4a2e5a4bfa2753aaab3013e34ce2533d1996fb18ef591e315e2b3b"
+checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53"
 dependencies = [
+ "autocfg",
  "scopeguard",
 ]
 
@@ -5027,9 +5037,9 @@
 
 [[package]]
 name = "lru"
-version = "0.7.3"
+version = "0.7.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb87f3080f6d1d69e8c564c0fcfde1d7aa8cc451ce40cae89479111f03bc0eb"
+checksum = "32613e41de4c47ab04970c348ca7ae7382cf116625755af070b008a15516a889"
 dependencies = [
  "hashbrown 0.11.2",
 ]
@@ -5576,6 +5586,7 @@
  "cumulus-primitives-timestamp",
  "cumulus-primitives-utility",
  "derivative",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "frame-benchmarking",
@@ -5632,7 +5643,6 @@
  "substrate-wasm-builder",
  "unique-runtime-common",
  "up-data-structs",
- "up-evm-mapping",
  "up-rpc",
  "xcm",
  "xcm-builder",
@@ -5831,7 +5841,7 @@
 [[package]]
 name = "pallet-base-fee"
 version = "1.0.0"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5984,6 +5994,7 @@
 version = "0.1.0"
 dependencies = [
  "evm-coder",
+ "fp-evm-mapping",
  "frame-support",
  "frame-system",
  "pallet-evm",
@@ -5995,7 +6006,6 @@
  "sp-runtime",
  "sp-std",
  "up-data-structs",
- "up-evm-mapping",
 ]
 
 [[package]]
@@ -6058,13 +6068,14 @@
 [[package]]
 name = "pallet-ethereum"
 version = "4.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
  "evm",
  "fp-consensus",
  "fp-evm",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "fp-storage",
@@ -6088,12 +6099,13 @@
 [[package]]
 name = "pallet-evm"
 version = "6.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "evm",
  "evm-gasometer",
  "evm-runtime",
  "fp-evm",
+ "fp-evm-mapping",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
@@ -6136,6 +6148,7 @@
 version = "0.1.0"
 dependencies = [
  "evm-coder",
+ "fp-evm-mapping",
  "frame-support",
  "frame-system",
  "log",
@@ -6171,6 +6184,7 @@
 version = "0.1.0"
 dependencies = [
  "fp-evm",
+ "fp-evm-mapping",
  "frame-support",
  "frame-system",
  "pallet-ethereum",
@@ -6181,7 +6195,6 @@
  "sp-io",
  "sp-runtime",
  "sp-std",
- "up-evm-mapping",
  "up-sponsorship",
 ]
 
@@ -6195,6 +6208,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "pallet-evm-coder-substrate",
  "parity-scale-codec",
  "scale-info",
@@ -6421,6 +6435,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "pallet-evm-coder-substrate",
  "parity-scale-codec",
  "scale-info",
@@ -6537,6 +6552,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "scale-info",
  "sp-core",
@@ -6672,7 +6688,7 @@
 [[package]]
 name = "pallet-template-transaction-payment"
 version = "3.0.0"
-source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#e914a799e5ff1c18383a614ea99e87dd7f3f446e"
+source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#7bc842b35a53f762ee6ee89e5f5bef84a284c9f4"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6795,6 +6811,7 @@
  "ethereum",
  "evm-coder",
  "fp-evm",
+ "fp-evm-mapping",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
@@ -6821,7 +6838,6 @@
  "sp-runtime",
  "sp-std",
  "up-data-structs",
- "up-evm-mapping",
  "up-sponsorship",
 ]
 
@@ -6925,9 +6941,9 @@
 
 [[package]]
 name = "parity-db"
-version = "0.3.9"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d121a9af17a43efd0a38c6afa508b927ba07785bd4709efb2ac03bf77efef8d"
+checksum = "b3e7f385d61562f5834282b90aa50b41f38a35cf64d5209b8b05487b50553dbe"
 dependencies = [
  "blake2-rfc",
  "crc32fast",
@@ -6998,7 +7014,7 @@
  "ethereum-types",
  "hashbrown 0.12.0",
  "impl-trait-for-tuples",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-util-mem-derive",
  "parking_lot 0.12.0",
  "primitive-types",
@@ -7074,7 +7090,7 @@
 checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58"
 dependencies = [
  "lock_api",
- "parking_lot_core 0.9.1",
+ "parking_lot_core 0.9.2",
 ]
 
 [[package]]
@@ -7093,9 +7109,9 @@
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.1"
+version = "0.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28141e0cc4143da2443301914478dc976a61ffdb3f043058310c70df2fed8954"
+checksum = "995f667a6c822200b0433ac218e05582f0e2efa1b922a3fd2fbaadc5f87bab37"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -7106,9 +7122,9 @@
 
 [[package]]
 name = "paste"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0744126afe1a6dd7f394cb50a716dbe086cb06e255e53d8d0185d82828358fb5"
+checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc"
 
 [[package]]
 name = "pbkdf2"
@@ -7270,9 +7286,9 @@
 
 [[package]]
 name = "pkg-config"
-version = "0.3.24"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe"
+checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
 
 [[package]]
 name = "platforms"
@@ -7315,7 +7331,7 @@
  "derive_more",
  "fatality",
  "futures 0.3.21",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-erasure-coding",
  "polkadot-node-network-protocol",
@@ -7337,7 +7353,7 @@
 dependencies = [
  "fatality",
  "futures 0.3.21",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-erasure-coding",
  "polkadot-node-network-protocol",
@@ -7446,7 +7462,7 @@
  "derive_more",
  "fatality",
  "futures 0.3.21",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-erasure-coding",
  "polkadot-node-network-protocol",
@@ -7542,7 +7558,7 @@
  "futures 0.3.21",
  "futures-timer",
  "kvdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "merlin",
  "parity-scale-codec",
  "polkadot-node-jaeger",
@@ -7671,7 +7687,7 @@
  "fatality",
  "futures 0.3.21",
  "kvdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-node-primitives",
  "polkadot-node-subsystem",
@@ -7897,7 +7913,7 @@
  "futures 0.3.21",
  "itertools",
  "kvdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "metered-channel",
  "parity-db",
  "parity-scale-codec",
@@ -7926,7 +7942,7 @@
 dependencies = [
  "futures 0.3.21",
  "futures-timer",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-util-mem",
  "parking_lot 0.12.0",
  "polkadot-node-metrics",
@@ -8273,7 +8289,7 @@
  "kusama-runtime",
  "kvdb",
  "kvdb-rocksdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "pallet-babe",
  "pallet-im-online",
  "pallet-mmr-primitives",
@@ -8608,9 +8624,9 @@
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.36"
+version = "1.0.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
+checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1"
 dependencies = [
  "unicode-xid",
 ]
@@ -8684,9 +8700,9 @@
 
 [[package]]
 name = "psm"
-version = "0.1.17"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6eca0fa5dd7c4c96e184cec588f0b1db1ee3165e678db21c09793105acb17e6f"
+checksum = "871372391786ccec00d3c5d3d6608905b3d4db263639cfe075d3b60a736d115a"
 dependencies = [
  "cc",
 ]
@@ -8704,6 +8720,7 @@
  "cumulus-primitives-timestamp",
  "cumulus-primitives-utility",
  "derivative",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "frame-executive",
@@ -8757,7 +8774,6 @@
  "substrate-wasm-builder",
  "unique-runtime-common",
  "up-data-structs",
- "up-evm-mapping",
  "up-rpc",
  "xcm",
  "xcm-builder",
@@ -8789,9 +8805,9 @@
 
 [[package]]
 name = "quote"
-version = "1.0.16"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4af2ec4714533fcdf07e886f17025ace8b997b9ce51204ee69b6da831c3da57"
+checksum = "632d02bff7f874a36f33ea8bb416cd484b90cc66c1194b1a1110d067a7013f58"
 dependencies = [
  "proc-macro2",
 ]
@@ -8862,7 +8878,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
 dependencies = [
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
 ]
 
 [[package]]
@@ -8926,20 +8942,20 @@
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.11"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c"
+checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
 dependencies = [
  "bitflags",
 ]
 
 [[package]]
 name = "redox_users"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7776223e2696f1aa4c6b0170e83212f47296a00424305117d013dfe86fb0fe55"
+checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
  "redox_syscall",
  "thiserror",
 ]
@@ -9253,7 +9269,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
 dependencies = [
- "semver 1.0.6",
+ "semver 1.0.7",
 ]
 
 [[package]]
@@ -9974,7 +9990,7 @@
  "linked-hash-map",
  "linked_hash_set",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "parking_lot 0.12.0",
  "pin-project 1.0.10",
@@ -10012,7 +10028,7 @@
  "futures-timer",
  "libp2p",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "sc-network",
  "sp-runtime",
  "substrate-prometheus-endpoint",
@@ -10532,9 +10548,9 @@
 
 [[package]]
 name = "semver"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a3381e03edd24287172047536f20cabde766e2cd3e65e6b00fb3af51c4f38d"
+checksum = "d65bd28f48be7196d222d95b9243287f48d27aca604e08497513019ff0502cc4"
 dependencies = [
  "serde",
 ]
@@ -10747,9 +10763,9 @@
 
 [[package]]
 name = "slab"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5"
+checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
 
 [[package]]
 name = "slot-range-helper"
@@ -10940,7 +10956,7 @@
 dependencies = [
  "futures 0.3.21",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "parking_lot 0.12.0",
  "sp-api",
@@ -11801,9 +11817,9 @@
 
 [[package]]
 name = "syn"
-version = "1.0.89"
+version = "1.0.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea297be220d52398dcc07ce15a209fce436d361735ac1db700cab3b6cdfb9f54"
+checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -12094,6 +12110,20 @@
 ]
 
 [[package]]
+name = "tokio-util"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764"
+dependencies = [
+ "bytes 1.1.0",
+ "futures-core",
+ "futures-sink",
+ "pin-project-lite 0.2.8",
+ "tokio 1.17.0",
+ "tracing",
+]
+
+[[package]]
 name = "toml"
 version = "0.5.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -12133,9 +12163,9 @@
 
 [[package]]
 name = "tracing-core"
-version = "0.1.23"
+version = "0.1.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa31669fa42c09c34d94d8165dd2012e8ff3c66aca50f3bb226b68f216f2706c"
+checksum = "90442985ee2f57c9e1b548ee72ae842f4a9a20e3f417cc38dbc5dc684d9bb4ee"
 dependencies = [
  "lazy_static",
  "valuable",
@@ -12333,6 +12363,7 @@
  "jsonrpc-core-client",
  "jsonrpc-derive",
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "sp-api",
  "sp-blockchain",
@@ -12475,6 +12506,7 @@
  "substrate-build-script-utils",
  "substrate-frame-rpc-system",
  "substrate-prometheus-endpoint",
+ "tokio 1.17.0",
  "unique-rpc",
  "unique-runtime",
  "unique-runtime-common",
@@ -12542,6 +12574,7 @@
  "cumulus-primitives-timestamp",
  "cumulus-primitives-utility",
  "derivative",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "frame-benchmarking",
@@ -12598,7 +12631,6 @@
  "substrate-wasm-builder",
  "unique-runtime-common",
  "up-data-structs",
- "up-evm-mapping",
  "up-rpc",
  "xcm",
  "xcm-builder",
@@ -12613,6 +12645,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "scale-info",
  "sp-consensus-aura",
@@ -12682,18 +12715,11 @@
 ]
 
 [[package]]
-name = "up-evm-mapping"
-version = "0.1.0"
-dependencies = [
- "frame-support",
- "sp-core",
-]
-
-[[package]]
 name = "up-rpc"
 version = "0.1.0"
 dependencies = [
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "sp-api",
  "sp-core",
@@ -12705,7 +12731,7 @@
 [[package]]
 name = "up-sponsorship"
 version = "0.1.0"
-source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#e914a799e5ff1c18383a614ea99e87dd7f3f446e"
+source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#7bc842b35a53f762ee6ee89e5f5bef84a284c9f4"
 dependencies = [
  "impl-trait-for-tuples",
 ]
@@ -13313,9 +13339,9 @@
 
 [[package]]
 name = "windows-sys"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3df6e476185f92a12c072be4a189a0210dcdcf512a1891d6dff9edb874deadc6"
+checksum = "5acdd78cb4ba54c0045ac14f62d8f94a03d10047904ae2a40afa1e99d8f70825"
 dependencies = [
  "windows_aarch64_msvc",
  "windows_i686_gnu",
@@ -13326,33 +13352,33 @@
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8e92753b1c443191654ec532f14c199742964a061be25d77d7a96f09db20bf5"
+checksum = "17cffbe740121affb56fad0fc0e421804adf0ae00891205213b5cecd30db881d"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a711c68811799e017b6038e0922cb27a5e2f43a2ddb609fe0b6f3eeda9de615"
+checksum = "2564fde759adb79129d9b4f54be42b32c89970c18ebf93124ca8870a498688ed"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "146c11bb1a02615db74680b32a68e2d61f553cc24c4eb5b4ca10311740e44172"
+checksum = "9cd9d32ba70453522332c14d38814bceeb747d80b3958676007acadd7e166956"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c912b12f7454c6620635bbff3450962753834be2a594819bd5e945af18ec64bc"
+checksum = "cfce6deae227ee8d356d19effc141a509cc503dfd1f850622ec4b0f84428e1f4"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "504a2476202769977a040c6364301a3f65d0cc9e3fb08600b2bda150a0488316"
+checksum = "d19538ccc21819d01deaf88d6a17eae6596a12e9aafdbb97916fb49896d89de9"
 
 [[package]]
 name = "winreg"
modifiedclient/rpc/Cargo.tomldiffbeforeafterboth
--- a/client/rpc/Cargo.toml
+++ b/client/rpc/Cargo.toml
@@ -18,3 +18,4 @@
 sp-core = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
 sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
 sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
modifiedclient/rpc/src/lib.rsdiffbeforeafterboth
--- a/client/rpc/src/lib.rs
+++ b/client/rpc/src/lib.rs
@@ -19,7 +19,7 @@
 use codec::Decode;
 use jsonrpc_core::{Error as RpcError, ErrorCode, Result};
 use jsonrpc_derive::rpc;
-use up_data_structs::{Collection, CollectionId, CollectionStats, TokenId};
+use up_data_structs::{Collection, CollectionId, CollectionStats, CollectionLimits, TokenId};
 use sp_api::{BlockId, BlockT, ProvideRuntimeApi, ApiExt};
 use sp_blockchain::HeaderBackend;
 use up_rpc::UniqueApi as UniqueRuntimeApi;
@@ -119,6 +119,21 @@
 	) -> Result<Option<Collection<AccountId>>>;
 	#[rpc(name = "unique_collectionStats")]
 	fn collection_stats(&self, at: Option<BlockHash>) -> Result<CollectionStats>;
+
+	#[rpc(name = "unique_nextSponsored")]
+	fn next_sponsored(
+		&self,
+		collection: CollectionId,
+		account: CrossAccountId,
+		token: TokenId,
+		at: Option<BlockHash>,
+	) -> Result<Option<u64>>;
+	#[rpc(name = "unique_effectiveCollectionLimits")]
+	fn effective_collection_limits(
+		&self,
+		collection_id: CollectionId,
+		at: Option<BlockHash>,
+	) -> Result<Option<CollectionLimits>>;
 }
 
 pub struct Unique<C, P> {
@@ -201,7 +216,7 @@
 	AccountId: Decode,
 	C: 'static + ProvideRuntimeApi<Block> + HeaderBackend<Block>,
 	C::Api: UniqueRuntimeApi<Block, CrossAccountId, AccountId>,
-	CrossAccountId: pallet_common::account::CrossAccountId<AccountId>,
+	CrossAccountId: pallet_evm::account::CrossAccountId<AccountId>,
 {
 	pass_method!(account_tokens(collection: CollectionId, account: CrossAccountId) -> Vec<TokenId>);
 	pass_method!(token_exists(collection: CollectionId, token: TokenId) -> bool);
@@ -222,4 +237,6 @@
 	pass_method!(last_token_id(collection: CollectionId) -> TokenId);
 	pass_method!(collection_by_id(collection: CollectionId) -> Option<Collection<AccountId>>);
 	pass_method!(collection_stats() -> CollectionStats);
+	pass_method!(next_sponsored(collection: CollectionId, account: CrossAccountId, token: TokenId) -> Option<u64>);
+	pass_method!(effective_collection_limits(collection_id: CollectionId) -> Option<CollectionLimits>);
 }
modifiednode/cli/Cargo.tomldiffbeforeafterboth
--- a/node/cli/Cargo.toml
+++ b/node/cli/Cargo.toml
@@ -302,13 +302,13 @@
 jsonrpc-pubsub = "18.0.0"
 tokio = { version = "1.17.0", features = ["time"] }
 
-fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-consensus = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-db = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-consensus = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-db = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 unique-rpc = { default-features = false, path = "../rpc" }
 
modifiednode/cli/src/chain_spec.rsdiffbeforeafterboth
--- a/node/cli/src/chain_spec.rs
+++ b/node/cli/src/chain_spec.rs
@@ -212,6 +212,16 @@
 				vec![
 					get_account_id_from_seed::<sr25519::Public>("Alice"),
 					get_account_id_from_seed::<sr25519::Public>("Bob"),
+					get_account_id_from_seed::<sr25519::Public>("Charlie"),
+					get_account_id_from_seed::<sr25519::Public>("Dave"),
+					get_account_id_from_seed::<sr25519::Public>("Eve"),
+					get_account_id_from_seed::<sr25519::Public>("Ferdie"),
+					get_account_id_from_seed::<sr25519::Public>("Alice//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Bob//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Charlie//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Dave//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Eve//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Ferdie//stash"),
 				],
 				1000
 			)
modifiednode/rpc/Cargo.tomldiffbeforeafterboth
--- a/node/rpc/Cargo.toml
+++ b/node/rpc/Cargo.toml
@@ -41,12 +41,12 @@
 substrate-frame-rpc-system = { git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 tokio = { version = "0.2.25", features = ["macros", "sync"] }
 
-pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 pallet-common = { default-features = false, path = "../../pallets/common" }
 unique-runtime-common = { default-features = false, path = "../../runtime/common" }
modifiedpallets/common/Cargo.tomldiffbeforeafterboth
--- a/pallets/common/Cargo.toml
+++ b/pallets/common/Cargo.toml
@@ -16,11 +16,11 @@
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-up-evm-mapping = { default-features = false, path = '../../primitives/evm-mapping' }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 serde = { version = "1.0.130", default-features = false }
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
@@ -33,7 +33,7 @@
     "frame-system/std",
     "sp-runtime/std",
     "sp-std/std",
-    "up-evm-mapping/std",
+    "fp-evm-mapping/std",
     "up-data-structs/std",
     "pallet-evm/std",
 ]
deletedpallets/common/src/account.rsdiffbeforeafterboth
--- a/pallets/common/src/account.rs
+++ /dev/null
@@ -1,194 +0,0 @@
-// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
-// This file is part of Unique Network.
-
-// Unique Network is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-
-// Unique Network is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License
-// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
-
-use crate::Config;
-use codec::{Encode, EncodeLike, Decode, MaxEncodedLen};
-use sp_core::H160;
-use scale_info::{Type, TypeInfo};
-use core::cmp::Ordering;
-use serde::{Serialize, Deserialize};
-use pallet_evm::AddressMapping;
-use sp_std::vec::Vec;
-use sp_std::clone::Clone;
-pub use up_evm_mapping::EvmBackwardsAddressMapping;
-
-pub trait CrossAccountId<AccountId>:
-	Encode + EncodeLike + Decode + TypeInfo + MaxEncodedLen + Clone + PartialEq + Ord + core::fmt::Debug
-// +
-// Serialize + Deserialize<'static>
-{
-	fn as_sub(&self) -> &AccountId;
-	fn as_eth(&self) -> &H160;
-
-	fn from_sub(account: AccountId) -> Self;
-	fn from_eth(account: H160) -> Self;
-
-	fn conv_eq(&self, other: &Self) -> bool;
-}
-
-#[derive(Encode, Decode, Serialize, Deserialize, TypeInfo, MaxEncodedLen)]
-#[serde(rename_all = "camelCase")]
-enum BasicCrossAccountIdRepr<AccountId> {
-	Substrate(AccountId),
-	Ethereum(H160),
-}
-
-#[derive(PartialEq, Eq)]
-pub struct BasicCrossAccountId<T: Config> {
-	/// If true - then ethereum is canonical encoding
-	from_ethereum: bool,
-	substrate: T::AccountId,
-	ethereum: H160,
-}
-
-impl<T: Config> MaxEncodedLen for BasicCrossAccountId<T> {
-	fn max_encoded_len() -> usize {
-		<BasicCrossAccountIdRepr<T::AccountId>>::max_encoded_len()
-	}
-}
-
-impl<T: Config> TypeInfo for BasicCrossAccountId<T> {
-	type Identity = Self;
-
-	fn type_info() -> Type {
-		<BasicCrossAccountIdRepr<T::AccountId>>::type_info()
-	}
-}
-
-impl<T: Config> core::fmt::Debug for BasicCrossAccountId<T> {
-	fn fmt(&self, fmt: &mut core::fmt::Formatter) -> core::fmt::Result {
-		if self.from_ethereum {
-			fmt.debug_tuple("CrossAccountId::Ethereum")
-				.field(&self.ethereum)
-				.finish()
-		} else {
-			fmt.debug_tuple("CrossAccountId::Substrate")
-				.field(&self.substrate)
-				.finish()
-		}
-	}
-}
-
-impl<T: Config> PartialOrd for BasicCrossAccountId<T> {
-	fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
-		Some(self.substrate.cmp(&other.substrate))
-	}
-}
-
-impl<T: Config> Ord for BasicCrossAccountId<T> {
-	fn cmp(&self, other: &Self) -> Ordering {
-		self.partial_cmp(other)
-			.expect("substrate account is total ordered")
-	}
-}
-
-impl<T: Config> Clone for BasicCrossAccountId<T> {
-	fn clone(&self) -> Self {
-		Self {
-			from_ethereum: self.from_ethereum,
-			substrate: self.substrate.clone(),
-			ethereum: self.ethereum,
-		}
-	}
-}
-impl<T: Config> Encode for BasicCrossAccountId<T> {
-	fn encode(&self) -> Vec<u8> {
-		BasicCrossAccountIdRepr::from(self.clone()).encode()
-	}
-}
-impl<T: Config> EncodeLike for BasicCrossAccountId<T> {}
-impl<T: Config> Decode for BasicCrossAccountId<T> {
-	fn decode<I>(input: &mut I) -> Result<Self, codec::Error>
-	where
-		I: codec::Input,
-	{
-		Ok(BasicCrossAccountIdRepr::decode(input)?.into())
-	}
-}
-impl<T> Serialize for BasicCrossAccountId<T>
-where
-	T: Config,
-	T::AccountId: Serialize,
-{
-	fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
-	where
-		S: serde::Serializer,
-	{
-		let repr = BasicCrossAccountIdRepr::from(self.clone());
-		(&repr).serialize(serializer)
-	}
-}
-impl<'de, T> Deserialize<'de> for BasicCrossAccountId<T>
-where
-	T: Config,
-	T::AccountId: Deserialize<'de>,
-{
-	fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
-	where
-		D: serde::Deserializer<'de>,
-	{
-		Ok(BasicCrossAccountIdRepr::deserialize(deserializer)?.into())
-	}
-}
-impl<T: Config> CrossAccountId<T::AccountId> for BasicCrossAccountId<T> {
-	fn as_sub(&self) -> &T::AccountId {
-		&self.substrate
-	}
-	fn as_eth(&self) -> &H160 {
-		&self.ethereum
-	}
-	fn from_sub(substrate: T::AccountId) -> Self {
-		Self {
-			ethereum: T::EvmBackwardsAddressMapping::from_account_id(substrate.clone()),
-			substrate,
-			from_ethereum: false,
-		}
-	}
-	fn from_eth(ethereum: H160) -> Self {
-		Self {
-			ethereum,
-			substrate: T::EvmAddressMapping::into_account_id(ethereum),
-			from_ethereum: true,
-		}
-	}
-	fn conv_eq(&self, other: &Self) -> bool {
-		if self.from_ethereum == other.from_ethereum {
-			self.substrate == other.substrate && self.ethereum == other.ethereum
-		} else if self.from_ethereum {
-			// ethereum is canonical encoding, but we need to compare derived address
-			self.substrate == other.substrate
-		} else {
-			self.ethereum == other.ethereum
-		}
-	}
-}
-impl<T: Config> From<BasicCrossAccountIdRepr<T::AccountId>> for BasicCrossAccountId<T> {
-	fn from(repr: BasicCrossAccountIdRepr<T::AccountId>) -> Self {
-		match repr {
-			BasicCrossAccountIdRepr::Substrate(s) => Self::from_sub(s),
-			BasicCrossAccountIdRepr::Ethereum(e) => Self::from_eth(e),
-		}
-	}
-}
-impl<T: Config> From<BasicCrossAccountId<T>> for BasicCrossAccountIdRepr<T::AccountId> {
-	fn from(v: BasicCrossAccountId<T>) -> Self {
-		if v.from_ethereum {
-			BasicCrossAccountIdRepr::Ethereum(*v.as_eth())
-		} else {
-			BasicCrossAccountIdRepr::Substrate(v.as_sub().clone())
-		}
-	}
-}
modifiedpallets/common/src/lib.rsdiffbeforeafterboth
--- a/pallets/common/src/lib.rs
+++ b/pallets/common/src/lib.rs
@@ -19,7 +19,7 @@
 use core::ops::{Deref, DerefMut};
 use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};
 use sp_std::vec::Vec;
-use account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 use frame_support::{
 	dispatch::{DispatchErrorWithPostInfo, DispatchResultWithPostInfo},
 	ensure, fail,
@@ -33,12 +33,11 @@
 	TokenId, Weight, WithdrawReasons, CollectionStats, MAX_TOKEN_OWNERSHIP, CollectionMode,
 	NFT_SPONSOR_TRANSFER_TIMEOUT, FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
 	REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT, MAX_SPONSOR_TIMEOUT, CUSTOM_DATA_LIMIT, CollectionLimits,
-	CustomDataLimit, CreateCollectionData, SponsorshipState, CreateItemExData,
+	CustomDataLimit, CreateCollectionData, SponsorshipState, CreateItemExData, SponsoringRateLimit,
 };
 pub use pallet::*;
 use sp_core::H160;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
-pub mod account;
 #[cfg(feature = "runtime-benchmarks")]
 pub mod benchmarking;
 pub mod erc;
@@ -163,20 +162,17 @@
 pub mod pallet {
 	use super::*;
 	use frame_support::{Blake2_128Concat, pallet_prelude::*, storage::Key};
-	use account::CrossAccountId;
+	use pallet_evm::account;
 	use frame_support::traits::Currency;
 	use up_data_structs::TokenId;
 	use scale_info::TypeInfo;
 
 	#[pallet::config]
-	pub trait Config: frame_system::Config + pallet_evm_coder_substrate::Config + TypeInfo {
+	pub trait Config:
+		frame_system::Config + pallet_evm_coder_substrate::Config + TypeInfo + account::Config
+	{
 		type Event: IsType<<Self as frame_system::Config>::Event> + From<Event<Self>>;
-
-		type CrossAccountId: CrossAccountId<Self::AccountId>;
 
-		type EvmAddressMapping: pallet_evm::AddressMapping<Self::AccountId>;
-		type EvmBackwardsAddressMapping: up_evm_mapping::EvmBackwardsAddressMapping<Self::AccountId>;
-
 		type Currency: Currency<Self::AccountId>;
 
 		#[pallet::constant]
@@ -421,6 +417,39 @@
 			alive: created.0 - destroyed.0,
 		}
 	}
+
+	pub fn effective_collection_limits(collection: CollectionId) -> Option<CollectionLimits> {
+		let collection = <CollectionById<T>>::get(collection);
+		if collection.is_none() {
+			return None;
+		}
+
+		let collection = collection.unwrap();
+		let limits = collection.limits;
+		let effective_limits = CollectionLimits {
+			account_token_ownership_limit: Some(limits.account_token_ownership_limit()),
+			sponsored_data_size: Some(limits.sponsored_data_size()),
+			sponsored_data_rate_limit: Some(
+				limits
+					.sponsored_data_rate_limit
+					.unwrap_or(SponsoringRateLimit::SponsoringDisabled),
+			),
+			token_limit: Some(limits.token_limit()),
+			sponsor_transfer_timeout: Some(limits.sponsor_transfer_timeout(
+				match collection.mode {
+					CollectionMode::NFT => NFT_SPONSOR_TRANSFER_TIMEOUT,
+					CollectionMode::Fungible(_) => FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
+					CollectionMode::ReFungible => REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
+				},
+			)),
+			sponsor_approve_timeout: Some(limits.sponsor_approve_timeout()),
+			owner_can_transfer: Some(limits.owner_can_transfer()),
+			owner_can_destroy: Some(limits.owner_can_destroy()),
+			transfers_enabled: Some(limits.transfers_enabled()),
+		};
+
+		Some(effective_limits)
+	}
 }
 
 impl<T: Config> Pallet<T> {
modifiedpallets/evm-coder-substrate/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-coder-substrate/Cargo.toml
+++ b/pallets/evm-coder-substrate/Cargo.toml
@@ -12,8 +12,8 @@
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 ethereum = { version = "0.12.0", default-features = false }
 evm-coder = { default-features = false, path = "../../crates/evm-coder" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 frame-system = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
modifiedpallets/evm-contract-helpers/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-contract-helpers/Cargo.toml
+++ b/pallets/evm-contract-helpers/Cargo.toml
@@ -15,7 +15,8 @@
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
 pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.18' }
 log = "0.4.14"
 
modifiedpallets/evm-contract-helpers/src/eth.rsdiffbeforeafterboth
--- a/pallets/evm-contract-helpers/src/eth.rs
+++ b/pallets/evm-contract-helpers/src/eth.rs
@@ -17,14 +17,17 @@
 use core::marker::PhantomData;
 use evm_coder::{abi::AbiWriter, execution::Result, generate_stubgen, solidity_interface, types::*};
 use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};
-use pallet_evm::{ExitRevert, OnCreate, OnMethodCall, PrecompileResult, PrecompileFailure};
+use pallet_evm::{
+	ExitRevert, OnCreate, OnMethodCall, PrecompileResult, PrecompileFailure,
+	account::CrossAccountId,
+};
 use sp_core::H160;
 use crate::{
 	AllowlistEnabled, Config, Owner, Pallet, SponsorBasket, SponsoringRateLimit, SponsoringModeT,
 };
 use frame_support::traits::Get;
 use up_sponsorship::SponsorshipHandler;
-use sp_std::{convert::TryInto, vec::Vec};
+use sp_std::vec::Vec;
 
 struct ContractHelpers<T: Config>(SubstrateRecorder<T>);
 impl<T: Config> WithRecorder<T> for ContractHelpers<T> {
@@ -177,18 +180,21 @@
 }
 
 pub struct HelpersContractSponsoring<T: Config>(PhantomData<*const T>);
-impl<T: Config> SponsorshipHandler<H160, (H160, Vec<u8>)> for HelpersContractSponsoring<T> {
-	fn get_sponsor(who: &H160, call: &(H160, Vec<u8>)) -> Option<H160> {
+impl<T: Config> SponsorshipHandler<T::CrossAccountId, (H160, Vec<u8>)>
+	for HelpersContractSponsoring<T>
+{
+	fn get_sponsor(who: &T::CrossAccountId, call: &(H160, Vec<u8>)) -> Option<T::CrossAccountId> {
 		let mode = <Pallet<T>>::sponsoring_mode(call.0);
 		if mode == SponsoringModeT::Disabled {
 			return None;
 		}
-		if mode == SponsoringModeT::Allowlisted && !<Pallet<T>>::allowed(call.0, *who) {
+
+		if mode == SponsoringModeT::Allowlisted && !<Pallet<T>>::allowed(call.0, *who.as_eth()) {
 			return None;
 		}
 		let block_number = <frame_system::Pallet<T>>::block_number() as T::BlockNumber;
 
-		if let Some(last_tx_block) = <SponsorBasket<T>>::get(&call.0, who) {
+		if let Some(last_tx_block) = <SponsorBasket<T>>::get(&call.0, who.as_eth()) {
 			let limit = <SponsoringRateLimit<T>>::get(&call.0);
 
 			let timeout = last_tx_block + limit;
@@ -197,9 +203,10 @@
 			}
 		}
 
-		<SponsorBasket<T>>::insert(&call.0, who, block_number);
+		<SponsorBasket<T>>::insert(&call.0, who.as_eth(), block_number);
 
-		Some(call.0)
+		let sponsor = T::CrossAccountId::from_eth(call.0);
+		Some(sponsor)
 	}
 }
 
modifiedpallets/evm-contract-helpers/src/lib.rsdiffbeforeafterboth
--- a/pallets/evm-contract-helpers/src/lib.rs
+++ b/pallets/evm-contract-helpers/src/lib.rs
@@ -30,7 +30,9 @@
 	use sp_core::H160;
 
 	#[pallet::config]
-	pub trait Config: frame_system::Config + pallet_evm_coder_substrate::Config {
+	pub trait Config:
+		frame_system::Config + pallet_evm_coder_substrate::Config + pallet_evm::account::Config
+	{
 		type ContractAddress: Get<H160>;
 		type DefaultSponsoringRateLimit: Get<Self::BlockNumber>;
 	}
modifiedpallets/evm-migration/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-migration/Cargo.toml
+++ b/pallets/evm-migration/Cargo.toml
@@ -15,8 +15,8 @@
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-io = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 [dependencies.codec]
 default-features = false
modifiedpallets/evm-transaction-payment/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-transaction-payment/Cargo.toml
+++ b/pallets/evm-transaction-payment/Cargo.toml
@@ -14,11 +14,11 @@
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-io = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.18' }
-up-evm-mapping = { default-features = false, path = "../../primitives/evm-mapping" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 [dependencies.codec]
 default-features = false
@@ -39,5 +39,5 @@
     "pallet-ethereum/std",
     "fp-evm/std",
     "up-sponsorship/std",
-    "up-evm-mapping/std",
+    "fp-evm-mapping/std",
 ]
modifiedpallets/evm-transaction-payment/src/lib.rsdiffbeforeafterboth
--- a/pallets/evm-transaction-payment/src/lib.rs
+++ b/pallets/evm-transaction-payment/src/lib.rs
@@ -20,12 +20,10 @@
 use fp_evm::WithdrawReason;
 use frame_support::traits::{Currency, IsSubType};
 pub use pallet::*;
-use pallet_evm::{EVMCurrencyAdapter, EnsureAddressOrigin};
+use pallet_evm::{EVMCurrencyAdapter, EnsureAddressOrigin, account::CrossAccountId};
 use sp_core::{H160, U256};
 use sp_runtime::TransactionOutcome;
 use up_sponsorship::SponsorshipHandler;
-use up_evm_mapping::EvmBackwardsAddressMapping;
-use pallet_evm::AddressMapping;
 
 #[frame_support::pallet]
 pub mod pallet {
@@ -35,11 +33,9 @@
 	use sp_std::vec::Vec;
 
 	#[pallet::config]
-	pub trait Config: frame_system::Config {
-		type EvmSponsorshipHandler: SponsorshipHandler<H160, (H160, Vec<u8>)>;
+	pub trait Config: frame_system::Config + pallet_evm::account::Config {
+		type EvmSponsorshipHandler: SponsorshipHandler<Self::CrossAccountId, (H160, Vec<u8>)>;
 		type Currency: Currency<Self::AccountId>;
-		type EvmBackwardsAddressMapping: EvmBackwardsAddressMapping<Self::AccountId>;
-		type EvmAddressMapping: AddressMapping<Self::AccountId>;
 	}
 
 	#[pallet::pallet]
@@ -60,14 +56,15 @@
 }
 
 pub struct TransactionValidityHack<T: Config>(PhantomData<*const T>);
-impl<T: Config> fp_evm::TransactionValidityHack for TransactionValidityHack<T> {
-	fn who_pays_fee(origin: H160, reason: &WithdrawReason) -> Option<H160> {
+impl<T: Config> fp_evm::TransactionValidityHack<T::CrossAccountId> for TransactionValidityHack<T> {
+	fn who_pays_fee(origin: H160, reason: &WithdrawReason) -> Option<T::CrossAccountId> {
 		match reason {
 			WithdrawReason::Call { target, input } => {
 				// This method is only used for checking, we shouldn't touch storage in it
 				frame_support::storage::with_transaction(|| {
+					let origin_sub = T::CrossAccountId::from_eth(origin);
 					TransactionOutcome::Rollback(T::EvmSponsorshipHandler::get_sponsor(
-						&origin,
+						&origin_sub,
 						&(*target, input.clone()),
 					))
 				})
@@ -85,33 +82,36 @@
 	type LiquidityInfo = Option<ChargeEvmLiquidityInfo<T>>;
 
 	fn withdraw_fee(
-		who: &H160,
+		who: &T::CrossAccountId,
 		reason: WithdrawReason,
 		fee: U256,
 	) -> core::result::Result<Self::LiquidityInfo, pallet_evm::Error<T>> {
-		let mut who_pays_fee = *who;
-		if let WithdrawReason::Call { target, input } = &reason {
-			who_pays_fee = T::EvmSponsorshipHandler::get_sponsor(who, &(*target, input.clone()))
-				.unwrap_or(who_pays_fee);
-		}
+		let who_pays_fee = if let WithdrawReason::Call { target, input } = &reason {
+			T::EvmSponsorshipHandler::get_sponsor(who, &(*target, input.clone()))
+				.unwrap_or(who.clone())
+		} else {
+			who.clone()
+		};
+
 		let negative_imbalance = EVMCurrencyAdapter::<<T as Config>::Currency, ()>::withdraw_fee(
 			&who_pays_fee,
 			reason,
 			fee,
 		)?;
+
 		Ok(negative_imbalance.map(|i| ChargeEvmLiquidityInfo {
-			who: who_pays_fee,
+			who: who_pays_fee.as_eth().clone(),
 			negative_imbalance: i,
 		}))
 	}
 
 	fn correct_and_deposit_fee(
-		who: &H160,
+		who: &T::CrossAccountId,
 		corrected_fee: U256,
 		already_withdrawn: Self::LiquidityInfo,
 	) {
 		<EVMCurrencyAdapter<<T as Config>::Currency, ()> as pallet_evm::OnChargeEVMTransaction<T>>::correct_and_deposit_fee(
-			&already_withdrawn.as_ref().map(|e| e.who).unwrap_or(*who),
+			&already_withdrawn.as_ref().map(|e| T::CrossAccountId::from_eth(e.who)).unwrap_or(who.clone()),
 			corrected_fee,
 			already_withdrawn.map(|e| e.negative_imbalance),
 		)
@@ -142,7 +142,7 @@
 					<frame_system::RawOrigin<T::AccountId>>::Signed(who.clone()).into(),
 				)
 				.ok()?;
-				let who = T::EvmBackwardsAddressMapping::from_account_id(who.clone());
+				let who = T::CrossAccountId::from_sub(who.clone());
 				// Effects from EvmSponsorshipHandler are applied in OnChargeEvmTransaction by pallet_evm::runner
 				// TODO: Should we implement simulation mode (test, but do not apply effects) in `up-sponsorship`?
 				let sponsor = frame_support::storage::with_transaction(|| {
@@ -151,8 +151,7 @@
 						&(*target, input.clone()),
 					))
 				})?;
-				let sponsor = T::EvmAddressMapping::into_account_id(sponsor);
-				Some(sponsor)
+				Some(sponsor.as_sub().clone())
 			}
 			_ => None,
 		}
modifiedpallets/fungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/fungible/Cargo.toml
+++ b/pallets/fungible/Cargo.toml
@@ -22,6 +22,7 @@
 pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }
 ethereum = { version = "0.12.0", default-features = false }
 frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
@@ -39,5 +40,6 @@
     "ethereum/std",
     "pallet-evm-coder-substrate/std",
     'frame-benchmarking/std',
+    "pallet-evm/std"
 ]
 runtime-benchmarks = ['frame-benchmarking', 'pallet-common/runtime-benchmarks']
modifiedpallets/fungible/src/erc.rsdiffbeforeafterboth
--- a/pallets/fungible/src/erc.rs
+++ b/pallets/fungible/src/erc.rs
@@ -21,7 +21,7 @@
 use pallet_common::erc::{CommonEvmHandler, PrecompileResult};
 use sp_core::{H160, U256};
 use sp_std::vec::Vec;
-use pallet_common::account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::{call, dispatch_to_evm};
 
 use crate::{
modifiedpallets/fungible/src/lib.rsdiffbeforeafterboth
--- a/pallets/fungible/src/lib.rs
+++ b/pallets/fungible/src/lib.rs
@@ -19,9 +19,8 @@
 use core::ops::Deref;
 use frame_support::{ensure};
 use up_data_structs::{AccessMode, CollectionId, TokenId, CreateCollectionData};
-use pallet_common::{
-	Error as CommonError, Event as CommonEvent, Pallet as PalletCommon, account::CrossAccountId,
-};
+use pallet_common::{Error as CommonError, Event as CommonEvent, Pallet as PalletCommon};
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::WithRecorder;
 use sp_core::H160;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
@@ -36,7 +35,7 @@
 pub mod erc;
 pub mod weights;
 
-pub type CreateItemData<T> = (<T as pallet_common::Config>::CrossAccountId, u128);
+pub type CreateItemData<T> = (<T as pallet_evm::account::Config>::CrossAccountId, u128);
 pub(crate) type SelfWeightOf<T> = <T as Config>::WeightInfo;
 
 #[frame_support::pallet]
modifiedpallets/nonfungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/nonfungible/Cargo.toml
+++ b/pallets/nonfungible/Cargo.toml
@@ -16,6 +16,7 @@
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-common = { default-features = false, path = '../common' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
@@ -39,6 +40,7 @@
     "ethereum/std",
     "pallet-evm-coder-substrate/std",
     'frame-benchmarking/std',
+    "pallet-evm/std"
 ]
 runtime-benchmarks = [
     'frame-benchmarking',
modifiedpallets/nonfungible/src/erc.rsdiffbeforeafterboth
--- a/pallets/nonfungible/src/erc.rs
+++ b/pallets/nonfungible/src/erc.rs
@@ -26,9 +26,9 @@
 use sp_core::{H160, U256};
 use sp_std::{vec::Vec, vec};
 use pallet_common::{
-	account::CrossAccountId,
 	erc::{CommonEvmHandler, PrecompileResult},
 };
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::call;
 
 use crate::{
modifiedpallets/nonfungible/src/lib.rsdiffbeforeafterboth
--- a/pallets/nonfungible/src/lib.rs
+++ b/pallets/nonfungible/src/lib.rs
@@ -21,9 +21,8 @@
 use up_data_structs::{
 	AccessMode, CollectionId, CustomDataLimit, TokenId, CreateCollectionData, CreateNftExData,
 };
-use pallet_common::{
-	Error as CommonError, Pallet as PalletCommon, Event as CommonEvent, account::CrossAccountId,
-};
+use pallet_common::{Error as CommonError, Pallet as PalletCommon, Event as CommonEvent};
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};
 use sp_core::H160;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
@@ -40,7 +39,7 @@
 pub mod erc;
 pub mod weights;
 
-pub type CreateItemData<T> = CreateNftExData<<T as pallet_common::Config>::CrossAccountId>;
+pub type CreateItemData<T> = CreateNftExData<<T as pallet_evm::account::Config>::CrossAccountId>;
 pub(crate) type SelfWeightOf<T> = <T as Config>::WeightInfo;
 
 #[derive(Encode, Decode, TypeInfo, MaxEncodedLen)]
modifiedpallets/refungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/refungible/Cargo.toml
+++ b/pallets/refungible/Cargo.toml
@@ -16,6 +16,7 @@
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-common = { default-features = false, path = '../common' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
@@ -33,6 +34,7 @@
     "up-data-structs/std",
     "pallet-common/std",
     'frame-benchmarking/std',
+    "pallet-evm/std",
 ]
 runtime-benchmarks = [
     'frame-benchmarking',
modifiedpallets/refungible/src/lib.rsdiffbeforeafterboth
--- a/pallets/refungible/src/lib.rs
+++ b/pallets/refungible/src/lib.rs
@@ -21,9 +21,8 @@
 	AccessMode, CollectionId, CustomDataLimit, MAX_REFUNGIBLE_PIECES, TokenId,
 	CreateCollectionData, CreateRefungibleExData,
 };
-use pallet_common::{
-	Error as CommonError, Event as CommonEvent, Pallet as PalletCommon, account::CrossAccountId,
-};
+use pallet_common::{Error as CommonError, Event as CommonEvent, Pallet as PalletCommon};
+use pallet_evm::account::CrossAccountId;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
 use sp_std::{vec::Vec, vec, collections::btree_map::BTreeMap};
 use core::ops::Deref;
modifiedpallets/unique/Cargo.tomldiffbeforeafterboth
--- a/pallets/unique/Cargo.toml
+++ b/pallets/unique/Cargo.toml
@@ -34,7 +34,7 @@
     'fp-evm/std',
     'up-data-structs/std',
     'up-sponsorship/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'sp-std/std',
     'sp-api/std',
     'sp-runtime/std',
@@ -132,16 +132,16 @@
 sp-api = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
 
 up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.18' }
-up-evm-mapping = { default-features = false, path = "../../primitives/evm-mapping" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 evm-coder = { default-features = false, path = "../../crates/evm-coder" }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
 primitive-types = { version = "0.11.1", default-features = false, features = [
     "serde_no_std",
 ] }
 
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 hex-literal = "0.3.3"
 
 pallet-common = { default-features = false, path = "../common" }
modifiedpallets/unique/src/eth/sponsoring.rsdiffbeforeafterboth
--- a/pallets/unique/src/eth/sponsoring.rs
+++ b/pallets/unique/src/eth/sponsoring.rs
@@ -24,26 +24,24 @@
 use up_sponsorship::SponsorshipHandler;
 use core::marker::PhantomData;
 use core::convert::TryInto;
-use up_data_structs::{TokenId, CreateItemData, CreateNftData};
-use up_evm_mapping::EvmBackwardsAddressMapping;
-use pallet_common::account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 
 use pallet_nonfungible::erc::{
 	UniqueNFTCall, ERC721UniqueExtensionsCall, ERC721MintableCall, ERC721Call,
 };
 use pallet_fungible::erc::{UniqueFungibleCall, ERC20Call};
+use up_data_structs::{TokenId, CreateItemData, CreateNftData};
 
 pub struct UniqueEthSponsorshipHandler<T: Config>(PhantomData<*const T>);
-impl<T: Config> SponsorshipHandler<H160, (H160, Vec<u8>)> for UniqueEthSponsorshipHandler<T> {
-	fn get_sponsor(who: &H160, call: &(H160, Vec<u8>)) -> Option<H160> {
+impl<T: Config> SponsorshipHandler<T::CrossAccountId, (H160, Vec<u8>)>
+	for UniqueEthSponsorshipHandler<T>
+{
+	fn get_sponsor(who: &T::CrossAccountId, call: &(H160, Vec<u8>)) -> Option<T::CrossAccountId> {
 		let collection_id = map_eth_to_id(&call.0)?;
 		let collection = <CollectionHandle<T>>::new(collection_id)?;
 		let sponsor = collection.sponsorship.sponsor()?.clone();
-		let sponsor =
-			<T as pallet_common::Config>::EvmBackwardsAddressMapping::from_account_id(sponsor);
-		let who = T::CrossAccountId::from_eth(*who);
 		let (method_id, mut reader) = AbiReader::new_call(&call.1).ok()?;
-		match &collection.mode {
+		Some(T::CrossAccountId::from_sub(match &collection.mode {
 			crate::CollectionMode::NFT => {
 				let call = <UniqueNFTCall<T>>::parse(method_id, &mut reader).ok()??;
 				match call {
@@ -83,7 +81,7 @@
 				#[allow(clippy::single_match)]
 				match call {
 					UniqueFungibleCall::ERC20(ERC20Call::Transfer { .. }) => {
-						withdraw_transfer::<T>(&collection, &who, &TokenId::default())
+						withdraw_transfer::<T>(&collection, who, &TokenId::default())
 							.map(|()| sponsor)
 					}
 					UniqueFungibleCall::ERC20(ERC20Call::TransferFrom { from, .. }) => {
@@ -99,6 +97,6 @@
 				}
 			}
 			_ => None,
-		}
+		}?))
 	}
 }
modifiedpallets/unique/src/lib.rsdiffbeforeafterboth
--- a/pallets/unique/src/lib.rs
+++ b/pallets/unique/src/lib.rs
@@ -53,10 +53,8 @@
 	CollectionMode, TokenId, SchemaVersion, SponsorshipState, MetaUpdatePermission,
 	CreateCollectionData, CustomDataLimit, CreateItemExData,
 };
-use pallet_common::{
-	account::CrossAccountId, CollectionHandle, Pallet as PalletCommon, Error as CommonError,
-	CommonWeightInfo,
-};
+use pallet_common::{CollectionHandle, Pallet as PalletCommon, Error as CommonError, CommonWeightInfo};
+use pallet_evm::account::CrossAccountId;
 use pallet_refungible::{Pallet as PalletRefungible, RefungibleHandle};
 use pallet_fungible::{Pallet as PalletFungible, FungibleHandle};
 use pallet_nonfungible::{Pallet as PalletNonfungible, NonfungibleHandle};
@@ -69,7 +67,7 @@
 
 mod eth;
 mod sponsorship;
-pub use sponsorship::UniqueSponsorshipHandler;
+pub use sponsorship::{UniqueSponsorshipHandler, UniqueSponsorshipPredict};
 pub use eth::sponsoring::UniqueEthSponsorshipHandler;
 
 pub use eth::UniqueErcSupport;
@@ -84,6 +82,12 @@
 pub mod weights;
 use weights::WeightInfo;
 
+pub trait SponsorshipPredict<T: Config> {
+	fn predict(collection: CollectionId, account: T::CrossAccountId, token: TokenId) -> Option<u64>
+	where
+		u64: From<<T as frame_system::Config>::BlockNumber>;
+}
+
 decl_error! {
 	/// Error for non-fungible-token module.
 	pub enum Error for Module<T: Config> {
@@ -116,7 +120,7 @@
 	pub enum Event<T>
 	where
 		<T as frame_system::Config>::AccountId,
-		<T as pallet_common::Config>::CrossAccountId,
+		<T as pallet_evm::account::Config>::CrossAccountId,
 	{
 		/// Collection sponsor was removed
 		///
modifiedpallets/unique/src/mock.rsdiffbeforeafterboth
--- a/pallets/unique/src/mock.rs
+++ b/pallets/unique/src/mock.rs
@@ -25,8 +25,8 @@
 };
 use pallet_transaction_payment::{CurrencyAdapter};
 use frame_system as system;
-use pallet_evm::{AddressMapping, runner::stack::MaybeMirroredLog};
-use pallet_common::account::{EvmBackwardsAddressMapping, CrossAccountId};
+use pallet_evm::{AddressMapping, runner::stack::MaybeMirroredLog, account::CrossAccountId};
+use fp_evm_mapping::EvmBackwardsAddressMapping;
 use codec::{Encode, Decode, MaxEncodedLen};
 use scale_info::TypeInfo;
 use up_data_structs::ConstU32;
@@ -191,15 +191,17 @@
 
 impl pallet_common::Config for Test {
 	type Event = ();
-	type EvmBackwardsAddressMapping = TestEvmBackwardsAddressMapping;
-	type EvmAddressMapping = TestEvmAddressMapping;
-	type CrossAccountId = TestCrossAccountId;
-
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
 }
 
+impl pallet_evm::account::Config for Test {
+	type CrossAccountId = TestCrossAccountId;
+	type EvmAddressMapping = TestEvmAddressMapping;
+	type EvmBackwardsAddressMapping = TestEvmBackwardsAddressMapping;
+}
+
 impl pallet_fungible::Config for Test {
 	type WeightInfo = ();
 }
modifiedpallets/unique/src/sponsorship.rsdiffbeforeafterboth
--- a/pallets/unique/src/sponsorship.rs
+++ b/pallets/unique/src/sponsorship.rs
@@ -29,8 +29,9 @@
 	CollectionId, FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT, MetaUpdatePermission,
 	NFT_SPONSOR_TRANSFER_TIMEOUT, REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT, TokenId,
 };
+use sp_runtime::traits::Saturating;
 use pallet_common::{CollectionHandle};
-use pallet_common::account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 
 pub fn withdraw_transfer<T: Config>(
 	collection: &CollectionHandle<T>,
@@ -301,3 +302,65 @@
 		}
 	}
 }
+
+use crate::SponsorshipPredict;
+use up_data_structs::SponsorshipState;
+pub struct UniqueSponsorshipPredict<T>(PhantomData<T>);
+
+impl<T> SponsorshipPredict<T> for UniqueSponsorshipPredict<T>
+where
+	T: Config,
+{
+	fn predict(collection_id: CollectionId, who: T::CrossAccountId, token: TokenId) -> Option<u64>
+	where
+		u64: From<<T as frame_system::Config>::BlockNumber>,
+	{
+		let collection = <CollectionHandle<T>>::try_get(collection_id).ok()?;
+		let _ = collection.sponsorship.sponsor()?;
+
+		// sponsor timeout
+		let block_number = <frame_system::Pallet<T>>::block_number() as T::BlockNumber;
+		let limit = collection
+			.limits
+			.sponsor_transfer_timeout(match collection.mode {
+				CollectionMode::NFT => NFT_SPONSOR_TRANSFER_TIMEOUT,
+				CollectionMode::Fungible(_) => FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
+				CollectionMode::ReFungible => REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
+			});
+
+		let last_tx_block = match collection.mode {
+			CollectionMode::NFT => <NftTransferBasket<T>>::get(collection.id, token),
+			CollectionMode::Fungible(_) => {
+				<FungibleTransferBasket<T>>::get(collection.id, who.as_sub())
+			}
+			CollectionMode::ReFungible => {
+				<ReFungibleTransferBasket<T>>::get((collection.id, token, who.as_sub()))
+			}
+		};
+
+		if let Some(last_tx_block) = last_tx_block {
+			return Some(
+				last_tx_block
+					.saturating_add(limit.into())
+					.saturating_sub(block_number)
+					.into(),
+			);
+		}
+
+		let token_exists = match collection.mode {
+			CollectionMode::NFT => {
+				<pallet_nonfungible::TokenData<T>>::contains_key((collection.id, token))
+			}
+			CollectionMode::Fungible(_) => true,
+			CollectionMode::ReFungible => {
+				<pallet_refungible::TotalSupply<T>>::contains_key((collection.id, token))
+			}
+		};
+
+		if token_exists {
+			Some(0)
+		} else {
+			None
+		}
+	}
+}
modifiedpallets/unique/src/tests.rsdiffbeforeafterboth
--- a/pallets/unique/src/tests.rs
+++ b/pallets/unique/src/tests.rs
@@ -18,6 +18,7 @@
 use super::*;
 use crate::mock::*;
 use crate::{AccessMode, CollectionMode};
+use sp_runtime::AccountId32;
 use up_data_structs::{
 	COLLECTION_NUMBER_LIMIT, CollectionId, CreateItemData, CreateFungibleData, CreateNftData,
 	CreateReFungibleData, MAX_DECIMAL_POINTS, COLLECTION_ADMINS_LIMIT, MetaUpdatePermission,
@@ -2854,3 +2855,59 @@
 		);
 	});
 }
+
+#[test]
+fn collection_sponsoring() {
+	new_test_ext().execute_with(|| {
+		// default_limits();
+		let user1 = 1_u64;
+		let user2 = 777_u64;
+		let origin1 = Origin::signed(user1);
+		let origin2 = Origin::signed(user2);
+		let account2 = account(user2);
+
+		let collection_id =
+			create_test_collection_for_owner(&CollectionMode::NFT, user1, CollectionId(1));
+		assert_ok!(TemplateModule::set_collection_sponsor(
+			origin1.clone(),
+			collection_id,
+			user1
+		));
+		assert_ok!(TemplateModule::confirm_sponsorship(
+			origin1.clone(),
+			collection_id
+		));
+
+		// Expect error while have no permissions
+		assert!(TemplateModule::create_item(
+			origin2.clone(),
+			collection_id,
+			account2.clone(),
+			default_nft_data().into()
+		)
+		.is_err());
+
+		assert_ok!(TemplateModule::set_public_access_mode(
+			origin1.clone(),
+			collection_id,
+			AccessMode::AllowList
+		));
+		assert_ok!(TemplateModule::add_to_allow_list(
+			origin1.clone(),
+			collection_id,
+			account2.clone()
+		));
+		assert_ok!(TemplateModule::set_mint_permission(
+			origin1.clone(),
+			collection_id,
+			true
+		));
+
+		assert_ok!(TemplateModule::create_item(
+			origin2,
+			collection_id,
+			account2,
+			default_nft_data().into()
+		));
+	});
+}
deletedprimitives/evm-mapping/Cargo.tomldiffbeforeafterboth
--- a/primitives/evm-mapping/Cargo.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-[package]
-name = "up-evm-mapping"
-version = "0.1.0"
-license = "GPLv3"
-edition = "2021"
-
-[dependencies]
-sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-
-[features]
-default = ["std"]
-std = ["sp-core/std", "frame-support/std"]
deletedprimitives/evm-mapping/src/lib.rsdiffbeforeafterboth
--- a/primitives/evm-mapping/src/lib.rs
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
-// This file is part of Unique Network.
-
-// Unique Network is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-
-// Unique Network is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License
-// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
-
-#![cfg_attr(not(feature = "std"), no_std)]
-
-use frame_support::sp_runtime::AccountId32;
-use sp_core::H160;
-
-/// Transforms substrate addresses to ethereum (Reverse of `EvmAddressMapping`)
-/// pallet_evm doesn't have this, as it only checks if eth address
-/// is owned by substrate via `EnsureAddressOrigin` trait
-///
-/// This trait implementations shouldn't conflict with used `EnsureAddressOrigin`
-pub trait EvmBackwardsAddressMapping<AccountId> {
-	fn from_account_id(account_id: AccountId) -> H160;
-}
-
-/// Should have same mapping as EnsureAddressTruncated
-pub struct MapBackwardsAddressTruncated;
-impl EvmBackwardsAddressMapping<AccountId32> for MapBackwardsAddressTruncated {
-	fn from_account_id(account_id: AccountId32) -> H160 {
-		let mut out = [0; 20];
-		out.copy_from_slice(&(account_id.as_ref() as &[u8])[0..20]);
-		H160(out)
-	}
-}
modifiedprimitives/rpc/Cargo.tomldiffbeforeafterboth
--- a/primitives/rpc/Cargo.toml
+++ b/primitives/rpc/Cargo.toml
@@ -14,6 +14,7 @@
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-api = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 [features]
 default = ["std"]
modifiedprimitives/rpc/src/lib.rsdiffbeforeafterboth
--- a/primitives/rpc/src/lib.rs
+++ b/primitives/rpc/src/lib.rs
@@ -16,7 +16,7 @@
 
 #![cfg_attr(not(feature = "std"), no_std)]
 
-use up_data_structs::{CollectionId, TokenId, Collection, CollectionStats};
+use up_data_structs::{CollectionId, TokenId, Collection, CollectionStats, CollectionLimits};
 use sp_std::vec::Vec;
 use sp_core::H160;
 use codec::Decode;
@@ -28,7 +28,7 @@
 	#[api_version(2)]
 	pub trait UniqueApi<CrossAccountId, AccountId> where
 		AccountId: Decode,
-		CrossAccountId: pallet_common::account::CrossAccountId<AccountId>,
+		CrossAccountId: pallet_evm::account::CrossAccountId<AccountId>,
 	{
 		#[changed_in(2)]
 		fn token_owner(collection: CollectionId, token: TokenId) -> Result<CrossAccountId>;
@@ -59,5 +59,7 @@
 		fn last_token_id(collection: CollectionId) -> Result<TokenId>;
 		fn collection_by_id(collection: CollectionId) -> Result<Option<Collection<AccountId>>>;
 		fn collection_stats() -> Result<CollectionStats>;
+		fn next_sponsored(collection: CollectionId, account: CrossAccountId, token: TokenId) -> Result<Option<u64>>;
+		fn effective_collection_limits(collection_id: CollectionId) -> Result<Option<CollectionLimits>>;
 	}
 }
modifiedruntime/common/Cargo.tomldiffbeforeafterboth
--- a/runtime/common/Cargo.toml
+++ b/runtime/common/Cargo.toml
@@ -69,4 +69,7 @@
 [dependencies.fp-rpc]
 default-features = false
 git = "https://github.com/uniquenetwork/frontier.git"
-branch = "unique-polkadot-v0.9.18"
+branch = "unique-polkadot-v0.9.18-2"
+
+[dependencies]
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
\ No newline at end of file
modifiedruntime/common/src/runtime_apis.rsdiffbeforeafterboth
--- a/runtime/common/src/runtime_apis.rs
+++ b/runtime/common/src/runtime_apis.rs
@@ -69,6 +69,17 @@
                 fn collection_stats() -> Result<CollectionStats, DispatchError> {
                     Ok(<pallet_common::Pallet<Runtime>>::collection_stats())
                 }
+                fn next_sponsored(collection: CollectionId, account: CrossAccountId, token: TokenId) -> Result<Option<u64>, DispatchError> {
+                    Ok(<pallet_unique::UniqueSponsorshipPredict<Runtime> as
+                            pallet_unique::SponsorshipPredict<Runtime>>::predict(
+                        collection,
+                        account,
+                        token))
+                }
+
+                fn effective_collection_limits(collection: CollectionId) -> Result<Option<CollectionLimits>, DispatchError> {
+                    Ok(<pallet_common::Pallet<Runtime>>::effective_collection_limits(collection))
+                }
             }
 
             impl sp_api::Core<Block> for Runtime {
@@ -181,7 +192,7 @@
                     };
 
                     <Runtime as pallet_evm::Config>::Runner::call(
-                        from,
+                        CrossAccountId::from_eth(from),
                         to,
                         data,
                         value,
@@ -215,7 +226,7 @@
                     };
 
                     <Runtime as pallet_evm::Config>::Runner::create(
-                        from,
+                        CrossAccountId::from_eth(from),
                         data,
                         value,
                         gas_limit.low_u64(),
modifiedruntime/common/src/types.rsdiffbeforeafterboth
--- a/runtime/common/src/types.rs
+++ b/runtime/common/src/types.rs
@@ -42,7 +42,7 @@
 pub use sp_consensus_aura::sr25519::AuthorityId as AuraId;
 
 pub trait RuntimeInstance {
-	type CrossAccountId: pallet_common::account::CrossAccountId<sp_runtime::AccountId32>
+	type CrossAccountId: pallet_evm::account::CrossAccountId<sp_runtime::AccountId32>
 		+ Send
 		+ Sync
 		+ 'static;
modifiedruntime/opal/Cargo.tomldiffbeforeafterboth
--- a/runtime/opal/Cargo.toml
+++ b/runtime/opal/Cargo.toml
@@ -72,7 +72,7 @@
     'pallet-base-fee/std',
     'fp-rpc/std',
     'up-rpc/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'fp-self-contained/std',
     'parachain-info/std',
     'serde',
@@ -382,7 +382,7 @@
 derivative = "2.2.0"
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
-up-evm-mapping = { path = "../../primitives/evm-mapping", default-features = false }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-inflation = { path = '../../pallets/inflation', default-features = false }
 up-data-structs = { path = '../../primitives/data-structs', default-features = false }
 pallet-common = { default-features = false, path = "../../pallets/common" }
@@ -396,11 +396,11 @@
 pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
 pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 ################################################################################
 # Build Dependencies
modifiedruntime/opal/src/lib.rsdiffbeforeafterboth
--- a/runtime/opal/src/lib.rs
+++ b/runtime/opal/src/lib.rs
@@ -48,7 +48,9 @@
 };
 // A few exports that help ease life for downstream crates.
 pub use pallet_balances::Call as BalancesCall;
-pub use pallet_evm::{EnsureAddressTruncated, HashedAddressMapping, Runner};
+pub use pallet_evm::{
+	EnsureAddressTruncated, HashedAddressMapping, Runner, account::CrossAccountId as _,
+};
 pub use frame_support::{
 	construct_runtime, match_type,
 	dispatch::DispatchResult,
@@ -117,11 +119,10 @@
 pub const RUNTIME_NAME: &str = "opal";
 pub const TOKEN_SYMBOL: &str = "OPL";
 
-type CrossAccountId = pallet_common::account::BasicCrossAccountId<Runtime>;
+type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Runtime>;
 
 impl RuntimeInstance for Runtime {
 	type CrossAccountId = self::CrossAccountId;
-
 	type TransactionConverter = self::TransactionConverter;
 
 	fn get_transaction_converter() -> TransactionConverter {
@@ -129,6 +130,22 @@
 	}
 }
 
+/// The type for looking up accounts. We don't expect more than 4 billion of them, but you
+/// never know...
+pub type AccountIndex = u32;
+
+/// Balance of an account.
+pub type Balance = u128;
+
+/// Index of a transaction in the chain.
+pub type Index = u32;
+
+/// A hash of some data used by the chain.
+pub type Hash = sp_core::H256;
+
+/// Digest item type.
+pub type DigestItem = generic::DigestItem;
+
 /// Opaque types. These are used by the CLI to instantiate machinery that don't need to know
 /// the specifics of the runtime. They can then be made to be agnostic over specific formats
 /// of data like extrinsics, allowing for them to continue syncing the network through upgrades
@@ -152,7 +169,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 918001,
+	spec_version: 918010,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
@@ -258,6 +275,12 @@
 	}
 }
 
+impl pallet_evm::account::Config for Runtime {
+	type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Self>;
+	type EvmAddressMapping = pallet_evm::HashedAddressMapping<Self::Hashing>;
+	type EvmBackwardsAddressMapping = fp_evm_mapping::MapBackwardsAddressTruncated;
+}
+
 impl pallet_evm::Config for Runtime {
 	type BlockGasLimit = BlockGasLimit;
 	type FeeCalculator = FixedFee;
@@ -845,10 +868,6 @@
 
 impl pallet_common::Config for Runtime {
 	type Event = Event;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type CrossAccountId = pallet_common::account::BasicCrossAccountId<Self>;
-
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
@@ -912,8 +931,6 @@
 impl pallet_evm_transaction_payment::Config for Runtime {
 	type EvmSponsorshipHandler = EvmSponsorshipHandler;
 	type Currency = Balances;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
 }
 
 impl pallet_charge_transaction::Config for Runtime {
modifiedruntime/quartz/Cargo.tomldiffbeforeafterboth
--- a/runtime/quartz/Cargo.toml
+++ b/runtime/quartz/Cargo.toml
@@ -72,7 +72,7 @@
     'pallet-base-fee/std',
     'fp-rpc/std',
     'up-rpc/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'fp-self-contained/std',
     'parachain-info/std',
     'serde',
@@ -382,7 +382,7 @@
 derivative = "2.2.0"
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
-up-evm-mapping = { path = "../../primitives/evm-mapping", default-features = false }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-inflation = { path = '../../pallets/inflation', default-features = false }
 up-data-structs = { path = '../../primitives/data-structs', default-features = false }
 pallet-common = { default-features = false, path = "../../pallets/common" }
@@ -396,11 +396,11 @@
 pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
 pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 ################################################################################
 # Build Dependencies
modifiedruntime/quartz/src/lib.rsdiffbeforeafterboth
--- a/runtime/quartz/src/lib.rs
+++ b/runtime/quartz/src/lib.rs
@@ -48,7 +48,9 @@
 };
 // A few exports that help ease life for downstream crates.
 pub use pallet_balances::Call as BalancesCall;
-pub use pallet_evm::{EnsureAddressTruncated, HashedAddressMapping, Runner};
+pub use pallet_evm::{
+	EnsureAddressTruncated, HashedAddressMapping, Runner, account::CrossAccountId as _,
+};
 pub use frame_support::{
 	construct_runtime, match_type,
 	dispatch::DispatchResult,
@@ -117,7 +119,7 @@
 pub const RUNTIME_NAME: &str = "quartz";
 pub const TOKEN_SYMBOL: &str = "QTZ";
 
-type CrossAccountId = pallet_common::account::BasicCrossAccountId<Runtime>;
+type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Runtime>;
 
 impl RuntimeInstance for Runtime {
 	type CrossAccountId = self::CrossAccountId;
@@ -152,7 +154,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 918001,
+	spec_version: 918010,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
@@ -845,15 +847,18 @@
 
 impl pallet_common::Config for Runtime {
 	type Event = Event;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type CrossAccountId = pallet_common::account::BasicCrossAccountId<Self>;
 
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
 }
 
+impl pallet_evm::account::Config for Runtime {
+	type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Self>;
+	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
+	type EvmBackwardsAddressMapping = fp_evm_mapping::MapBackwardsAddressTruncated;
+}
+
 impl pallet_fungible::Config for Runtime {
 	type WeightInfo = pallet_fungible::weights::SubstrateWeight<Self>;
 }
@@ -912,8 +917,6 @@
 impl pallet_evm_transaction_payment::Config for Runtime {
 	type EvmSponsorshipHandler = EvmSponsorshipHandler;
 	type Currency = Balances;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
 }
 
 impl pallet_charge_transaction::Config for Runtime {
modifiedruntime/unique/Cargo.tomldiffbeforeafterboth
--- a/runtime/unique/Cargo.toml
+++ b/runtime/unique/Cargo.toml
@@ -72,7 +72,7 @@
     'pallet-base-fee/std',
     'fp-rpc/std',
     'up-rpc/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'fp-self-contained/std',
     'parachain-info/std',
     'serde',
@@ -382,7 +382,6 @@
 derivative = "2.2.0"
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
-up-evm-mapping = { path = "../../primitives/evm-mapping", default-features = false }
 pallet-inflation = { path = '../../pallets/inflation', default-features = false }
 up-data-structs = { path = '../../primitives/data-structs', default-features = false }
 pallet-common = { default-features = false, path = "../../pallets/common" }
@@ -396,11 +395,12 @@
 pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
 pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 ################################################################################
 # Build Dependencies
modifiedruntime/unique/src/lib.rsdiffbeforeafterboth
--- a/runtime/unique/src/lib.rs
+++ b/runtime/unique/src/lib.rs
@@ -48,7 +48,9 @@
 };
 // A few exports that help ease life for downstream crates.
 pub use pallet_balances::Call as BalancesCall;
-pub use pallet_evm::{EnsureAddressTruncated, HashedAddressMapping, Runner};
+pub use pallet_evm::{
+	EnsureAddressTruncated, HashedAddressMapping, Runner, account::CrossAccountId as _,
+};
 pub use frame_support::{
 	construct_runtime, match_type,
 	dispatch::DispatchResult,
@@ -116,7 +118,7 @@
 pub const RUNTIME_NAME: &str = "unique";
 pub const TOKEN_SYMBOL: &str = "UNQ";
 
-type CrossAccountId = pallet_common::account::BasicCrossAccountId<Runtime>;
+type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Runtime>;
 
 impl RuntimeInstance for Runtime {
 	type CrossAccountId = self::CrossAccountId;
@@ -151,7 +153,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 918001,
+	spec_version: 918010,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
@@ -844,15 +846,17 @@
 
 impl pallet_common::Config for Runtime {
 	type Event = Event;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type CrossAccountId = pallet_common::account::BasicCrossAccountId<Self>;
-
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
 }
 
+impl pallet_evm::account::Config for Runtime {
+	type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Self>;
+	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
+	type EvmBackwardsAddressMapping = fp_evm_mapping::MapBackwardsAddressTruncated;
+}
+
 impl pallet_fungible::Config for Runtime {
 	type WeightInfo = pallet_fungible::weights::SubstrateWeight<Self>;
 }
@@ -911,8 +915,6 @@
 impl pallet_evm_transaction_payment::Config for Runtime {
 	type EvmSponsorshipHandler = EvmSponsorshipHandler;
 	type Currency = Balances;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
 }
 
 impl pallet_charge_transaction::Config for Runtime {
modifiedtests/README.mddiffbeforeafterboth
--- a/tests/README.md
+++ b/tests/README.md
@@ -20,7 +20,7 @@
 git clone https://github.com/paritytech/polkadot-launch && cd polkadot-launch
 ```
 
-5. Run launch-test-env.sh from the root of this project
+5. Run launch-testnet.sh from the root of this project
 
 
 ## How to run tests
modifiedtests/package.jsondiffbeforeafterboth
--- a/tests/package.json
+++ b/tests/package.json
@@ -67,6 +67,7 @@
     "testPalletPresence": "mocha --timeout 9999999 -r ts-node/register ./**/pallet-presence.test.ts",
     "testBlockProduction": "mocha --timeout 9999999 -r ts-node/register ./**/block-production.test.ts",
     "testEnableDisableTransfers": "mocha --timeout 9999999 -r ts-node/register ./**/enableDisableTransfer.test.ts",
+    "testLimits": "mocha --timeout 9999999 -r ts-node/register ./**/limits.test.ts",
     "polkadot-types-fetch-metadata": "curl -H 'Content-Type: application/json' -d '{\"id\":\"1\", \"jsonrpc\":\"2.0\", \"method\": \"state_getMetadata\", \"params\":[]}' http://localhost:9933 > src/interfaces/metadata.json",
     "polkadot-types-from-defs": "echo 'export default {}' > src/interfaces/lookup.ts && ts-node ./node_modules/.bin/polkadot-types-from-defs --endpoint src/interfaces/metadata.json --input src/interfaces/ --package .",
     "polkadot-types-from-chain": "ts-node ./node_modules/.bin/polkadot-types-from-chain --endpoint src/interfaces/metadata.json --output src/interfaces/ --package .",
modifiedtests/src/eth/base.test.tsdiffbeforeafterboth
--- a/tests/src/eth/base.test.ts
+++ b/tests/src/eth/base.test.ts
@@ -34,7 +34,8 @@
     const userB = createEthAccount(web3);
 
     const cost = await recordEthFee(api, userA, () => web3.eth.sendTransaction({from: userA, to: userB, value: '1000000', ...GAS_ARGS}));
-    expect(cost - await ethBalanceViaSub(api, userB) < BigInt(0.2 * Number(UNIQUE))).to.be.true;
+    const balanceB = await ethBalanceViaSub(api, userB);
+    expect(cost - balanceB < BigInt(0.2 * Number(UNIQUE))).to.be.true;
   });
 
   itWeb3('NFT transfer is close to 0.15 UNQ', async ({web3, api}) => {
modifiedtests/src/eth/contractSponsoring.test.tsdiffbeforeafterboth
--- a/tests/src/eth/contractSponsoring.test.ts
+++ b/tests/src/eth/contractSponsoring.test.ts
@@ -24,7 +24,24 @@
   itWeb3,
   SponsoringMode,
   createEthAccount,
+  collectionIdToAddress,
+  GAS_ARGS,
+  normalizeEvents,
+  subToEth,
+  executeEthTxOnSub,
 } from './util/helpers';
+import {
+  addCollectionAdminExpectSuccess,
+  createCollectionExpectSuccess,
+  getCreateCollectionResult,
+  transferBalanceTo,
+} from '../util/helpers';
+import nonFungibleAbi from './nonFungibleAbi.json';
+import {
+  submitTransactionAsync,
+} from '../substrate/substrate-api';
+import getBalance from '../substrate/get-balance';
+import {alicesPublicKey} from '../accounts';
 
 describe('Sponsoring EVM contracts', () => {
   itWeb3('Sponsoring can be set by the address that has deployed the contract', async ({api, web3}) => {
@@ -199,4 +216,115 @@
     const helpers = contractHelpers(web3, owner);
     expect(await helpers.methods.getSponsoringRateLimit(flipper.options.address).call()).to.be.equals('7200');
   });
+
+  itWeb3('Sponsoring evm address from substrate collection', async ({api, web3}) => {
+    const owner = privateKey('//Alice');
+    const userEth = createEthAccount(web3);
+    const collectionId = await createCollectionExpectSuccess();
+
+    {
+      const tx = api.tx.unique.setCollectionSponsor(collectionId, owner.address);
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+    {
+      const tx = api.tx.unique.confirmSponsorship(collectionId);
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+
+    const address = collectionIdToAddress(collectionId);
+    const contract = new web3.eth.Contract(nonFungibleAbi as any, address, {from: userEth, ...GAS_ARGS});
+
+    { // This part should fail, because user not in access list and user have no money
+      const nextTokenId = await contract.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+      await expect(contract.methods.mintWithTokenURI(
+        userEth,
+        nextTokenId,
+        'Test URI',
+      ).call({from: userEth})).to.be.rejectedWith(/PublicMintingNotAllowed/);
+    }
+
+    {
+      const tx = api.tx.unique.setPublicAccessMode(collectionId, 'AllowList');
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+    {
+      const tx = api.tx.unique.addToAllowList(collectionId, {Ethereum: userEth});
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+    {
+      const tx = api.tx.unique.setMintPermission(collectionId, true);
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+
+    const [alicesBalanceBefore] = await getBalance(api, [alicesPublicKey]);
+
+    {
+      const nextTokenId = await contract.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+      const result = await contract.methods.mintWithTokenURI(
+        userEth,
+        nextTokenId,
+        'Test URI',
+      ).send({from: userEth});
+      const events = normalizeEvents(result.events);
+
+      expect(events).to.be.deep.equal([
+        {
+          address,
+          event: 'Transfer',
+          args: {
+            from: '0x0000000000000000000000000000000000000000',
+            to: userEth,
+            tokenId: nextTokenId,
+          },
+        },
+      ]);
+
+      expect(await contract.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI');
+    }
+
+    const [alicesBalanceAfter] = await getBalance(api, [alicesPublicKey]);
+    expect(alicesBalanceAfter < alicesBalanceBefore).to.be.true;
+  });
+
+
+  itWeb3('Check that transaction via EVM spend money from substrate address', async ({api, web3}) => {
+    const owner = privateKey('//Alice');
+    const user = privateKey(`//User/${Date.now()}`);
+    const userEth = subToEth(user.address);
+    const collectionId = await createCollectionExpectSuccess();
+    await addCollectionAdminExpectSuccess(owner, collectionId, {Ethereum: userEth});
+    await transferBalanceTo(api, owner, user.address);
+
+    const address = collectionIdToAddress(collectionId);
+    const contract = new web3.eth.Contract(nonFungibleAbi as any, address, {from: userEth, ...GAS_ARGS});
+
+    const [userBalanceBefore] = await getBalance(api, [user.address]);
+
+    {
+      const nextTokenId = await contract.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+      await executeEthTxOnSub(web3, api, user, contract, m => m.mintWithTokenURI(
+        userEth,
+        nextTokenId,
+        'Test URI',
+      ));
+
+      expect(await contract.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI');
+    }
+
+    const [userBalanceAfter] = await getBalance(api, [user.address]);
+    expect(userBalanceAfter < userBalanceBefore).to.be.true;
+  });
 });
modifiedtests/src/eth/marketplace/marketplace.test.tsdiffbeforeafterboth
--- a/tests/src/eth/marketplace/marketplace.test.ts
+++ b/tests/src/eth/marketplace/marketplace.test.ts
@@ -15,13 +15,24 @@
 // along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
 
 import {readFile} from 'fs/promises';
-import {getBalanceSingle, transferBalanceExpectSuccess} from '../../substrate/get-balance';
+import {getBalanceSingle} from '../../substrate/get-balance';
 import privateKey from '../../substrate/privateKey';
-import {addToAllowListExpectSuccess, confirmSponsorshipExpectSuccess, createCollectionExpectSuccess, createFungibleItemExpectSuccess, createItemExpectSuccess, getTokenOwner, setCollectionLimitsExpectSuccess, setCollectionSponsorExpectSuccess, transferExpectSuccess, transferFromExpectSuccess} from '../../util/helpers';
+import {
+  addToAllowListExpectSuccess, 
+  confirmSponsorshipExpectSuccess, 
+  createCollectionExpectSuccess, 
+  createItemExpectSuccess, 
+  getTokenOwner,
+  setCollectionLimitsExpectSuccess, 
+  setCollectionSponsorExpectSuccess, 
+  transferExpectSuccess, 
+  transferFromExpectSuccess,
+  transferBalanceTo,
+} from '../../util/helpers';
 import {collectionIdToAddress, contractHelpers, createEthAccountWithBalance, executeEthTxOnSub, GAS_ARGS, itWeb3, SponsoringMode, subToEth, subToEthLowercase, transferBalanceToEth} from '../util/helpers';
 import {evmToAddress} from '@polkadot/util-crypto';
 import nonFungibleAbi from '../nonFungibleAbi.json';
-import fungibleAbi from '../fungibleAbi.json';
+
 import {expect} from 'chai';
 
 const PRICE = 2000n;
@@ -87,32 +98,39 @@
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Substrate: alice.address});
   });
 
-  // selling for custom tokens excluded from release
-  itWeb3.skip('With custom ERC20', async ({api, web3}) => {
+
+  itWeb3('With escrow', async ({api, web3}) => {
     const alice = privateKey('//Alice');
     const matcherOwner = await createEthAccountWithBalance(api, web3);
+    const escrow = await createEthAccountWithBalance(api, web3);
     const matcherContract = new web3.eth.Contract(JSON.parse((await readFile(`${__dirname}/MarketPlace.abi`)).toString()), undefined, {
       from: matcherOwner,
       ...GAS_ARGS,
     });
-    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments: [matcherOwner]}).send({from: matcherOwner});
+    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments: [matcherOwner]}).send({from: matcherOwner, gas: 10000000});
+    await matcher.methods.setEscrow(escrow).send({from: matcherOwner});
+    const helpers = contractHelpers(web3, matcherOwner);
+    await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});
+    await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});
+    await transferBalanceToEth(api, alice, matcher.options.address);
 
     const collectionId = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+    await setCollectionLimitsExpectSuccess(alice, collectionId, {sponsorApproveTimeout: 1});
     const evmCollection = new web3.eth.Contract(nonFungibleAbi as any, collectionIdToAddress(collectionId), {from: matcherOwner});
+    await setCollectionSponsorExpectSuccess(collectionId, alice.address);
+    await transferBalanceToEth(api, alice, subToEth(alice.address));
+    await confirmSponsorshipExpectSuccess(collectionId);
 
-    const fungibleId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});
-    const evmFungible = new web3.eth.Contract(fungibleAbi as any, collectionIdToAddress(fungibleId), {from: matcherOwner, ...GAS_ARGS});
-    await createFungibleItemExpectSuccess(alice, fungibleId, {Value: PRICE}, {Ethereum: subToEth(alice.address)});
+    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(alice.address), true).send({from: matcherOwner});
+    await addToAllowListExpectSuccess(alice, collectionId, evmToAddress(subToEth(alice.address)));
 
-    const seller = privateKey('//Bob');
+    const seller = privateKey(`//Seller/${Date.now()}`);
+    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(seller.address), true).send({from: matcherOwner});
 
     const tokenId = await createItemExpectSuccess(alice, collectionId, 'NFT', seller.address);
 
     // To transfer item to matcher it first needs to be transfered to EVM account of bob
     await transferExpectSuccess(collectionId, tokenId, seller, {Ethereum: subToEth(seller.address)});
-    // Fees will be paid from EVM account, so we should have some balance here
-    await transferBalanceExpectSuccess(api, seller, evmToAddress(subToEth(seller.address)), 10n ** 18n);
-    await transferBalanceExpectSuccess(api, alice, evmToAddress(subToEth(alice.address)), 10n ** 18n);
 
     // Token is owned by seller initially
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: subToEthLowercase(seller.address)});
@@ -120,66 +138,55 @@
     // Ask
     {
       await executeEthTxOnSub(web3, api, seller, evmCollection, m => m.approve(matcher.options.address, tokenId));
-      await executeEthTxOnSub(web3, api, seller, matcher, m => m.addAsk(PRICE, evmFungible.options.address, evmCollection.options.address, tokenId, 1));
+      await executeEthTxOnSub(web3, api, seller, matcher, m => m.addAsk(PRICE, '0x0000000000000000000000000000000000000001', evmCollection.options.address, tokenId));
     }
 
     // Token is transferred to matcher
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: matcher.options.address.toLowerCase()});
 
+    // Give buyer KSM
+    await matcher.methods.depositKSM(PRICE, subToEth(alice.address)).send({from: escrow});
+
     // Buy
     {
-      const sellerBalanceBeforePurchase = BigInt(await evmFungible.methods.balanceOf(subToEth(seller.address)).call());
-      const buyerBalanceBeforePurchase = BigInt(await evmFungible.methods.balanceOf(subToEth(alice.address)).call());
+      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal('0');
+      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal(PRICE.toString());
 
-      await executeEthTxOnSub(web3, api, alice, evmFungible, m => m.approve(matcher.options.address, PRICE));
-      // There is two functions named 'buy', so we should provide full signature
-      await executeEthTxOnSub(web3, api, alice, matcher, m =>
-        m['buy(address,uint256,address,uint256)'](evmCollection.options.address, tokenId, evmFungible.options.address, PRICE));
+      await executeEthTxOnSub(web3, api, alice, matcher, m => m.buyKSM(evmCollection.options.address, tokenId, subToEth(alice.address), subToEth(alice.address)));
 
-      // Approved price is removed from buyer balance, and added to seller
-      expect(BigInt(await evmFungible.methods.balanceOf(subToEth(seller.address)).call()) - sellerBalanceBeforePurchase === PRICE);
-      expect(buyerBalanceBeforePurchase - BigInt(await evmFungible.methods.balanceOf(subToEth(alice.address)).call()) === PRICE);
+      // Price is removed from buyer balance, and added to seller
+      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal('0');
+      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal(PRICE.toString());
     }
 
     // Token is transferred to evm account of alice
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: subToEthLowercase(alice.address)});
 
-
     // Transfer token to substrate side of alice
     await transferFromExpectSuccess(collectionId, tokenId, alice, {Ethereum: subToEth(alice.address)}, {Substrate: alice.address});
 
-    // Token is transferred to substrate account of alice
+    // Token is transferred to substrate account of alice, seller received funds
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Substrate: alice.address});
   });
 
-  itWeb3('With escrow', async ({api, web3}) => {
+
+  itWeb3('Sell tokens from substrate user via EVM contract', async ({api, web3}) => {
     const alice = privateKey('//Alice');
     const matcherOwner = await createEthAccountWithBalance(api, web3);
-    const escrow = await createEthAccountWithBalance(api, web3);
     const matcherContract = new web3.eth.Contract(JSON.parse((await readFile(`${__dirname}/MarketPlace.abi`)).toString()), undefined, {
       from: matcherOwner,
       ...GAS_ARGS,
     });
-    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments: [matcherOwner]}).send({from: matcherOwner, gas: 10000000});
-    await matcher.methods.setEscrow(escrow).send({from: matcherOwner});
-    const helpers = contractHelpers(web3, matcherOwner);
-    await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});
-    await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});
+    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments:[matcherOwner]}).send({from: matcherOwner});
     await transferBalanceToEth(api, alice, matcher.options.address);
 
     const collectionId = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
     await setCollectionLimitsExpectSuccess(alice, collectionId, {sponsorApproveTimeout: 1});
     const evmCollection = new web3.eth.Contract(nonFungibleAbi as any, collectionIdToAddress(collectionId), {from: matcherOwner});
-    await setCollectionSponsorExpectSuccess(collectionId, alice.address);
-    await transferBalanceToEth(api, alice, subToEth(alice.address));
-    await confirmSponsorshipExpectSuccess(collectionId);
-
-    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(alice.address), true).send({from: matcherOwner});
-    await addToAllowListExpectSuccess(alice, collectionId, evmToAddress(subToEth(alice.address)));
 
     const seller = privateKey(`//Seller/${Date.now()}`);
-    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(seller.address), true).send({from: matcherOwner});
-
+    await transferBalanceTo(api, alice, seller.address);
+    
     const tokenId = await createItemExpectSuccess(alice, collectionId, 'NFT', seller.address);
 
     // To transfer item to matcher it first needs to be transfered to EVM account of bob
@@ -197,19 +204,11 @@
     // Token is transferred to matcher
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: matcher.options.address.toLowerCase()});
 
-    // Give buyer KSM
-    await matcher.methods.depositKSM(PRICE, subToEth(alice.address)).send({from: escrow});
-
     // Buy
     {
-      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal('0');
-      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal(PRICE.toString());
-
-      await executeEthTxOnSub(web3, api, alice, matcher, m => m.buyKSM(evmCollection.options.address, tokenId, subToEth(alice.address), subToEth(alice.address)));
-
-      // Price is removed from buyer balance, and added to seller
-      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal('0');
-      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal(PRICE.toString());
+      const sellerBalanceBeforePurchase = await getBalanceSingle(api, seller.address);
+      await executeEthTxOnSub(web3, api, alice, matcher, m => m.buy(evmCollection.options.address, tokenId), {value: PRICE});
+      expect(await getBalanceSingle(api, seller.address) - sellerBalanceBeforePurchase === PRICE);
     }
 
     // Token is transferred to evm account of alice
modifiedtests/src/eth/util/helpers.tsdiffbeforeafterboth
--- a/tests/src/eth/util/helpers.ts
+++ b/tests/src/eth/util/helpers.ts
@@ -29,6 +29,7 @@
 import privateKey from '../../substrate/privateKey';
 import contractHelpersAbi from './contractHelpersAbi.json';
 import getBalance from '../../substrate/get-balance';
+import waitNewBlocks from '../../substrate/wait-new-blocks';
 
 export const GAS_ARGS = {gas: 2500000};
 
@@ -241,6 +242,12 @@
   return collector;
 }
 
+/** 
+ * pallet evm_contract_helpers
+ * @param web3 
+ * @param caller - eth address
+ * @returns 
+ */
 export function contractHelpers(web3: Web3, caller: string) {
   return new web3.eth.Contract(contractHelpersAbi as any, '0x842899ECF380553E8a4de75bF534cdf6fBF64049', {from: caller, ...GAS_ARGS});
 }
@@ -287,6 +294,8 @@
 
   await call();
 
+  // In dev mode, the transaction might not finish processing in time
+  await waitNewBlocks(api, 1);
   const after = await ethBalanceViaSub(api, user);
 
   // Can't use .to.be.less, because chai doesn't supports bigint
modifiedtests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-errors.ts
+++ b/tests/src/interfaces/augment-api-errors.ts
@@ -105,6 +105,10 @@
        **/
       NoPermission: AugmentedError<ApiType>;
       /**
+       * Not sufficient founds to perform action
+       **/
+      NotSufficientFounds: AugmentedError<ApiType>;
+      /**
        * Tried to enable permissions which are only permitted to be disabled
        **/
       OwnerPermissionsCantBeReverted: AugmentedError<ApiType>;
modifiedtests/src/interfaces/augment-api-events.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-events.ts
+++ b/tests/src/interfaces/augment-api-events.ts
@@ -4,7 +4,7 @@
 import type { ApiTypes } from '@polkadot/api-base/types';
 import type { Null, Option, Result, U256, U8aFixed, u128, u32, u64, u8 } from '@polkadot/types-codec';
 import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchInfo, OrmlVestingVestingSchedule, PalletCommonAccountBasicCrossAccountIdRepr, SpRuntimeDispatchError, UpDataStructsAccessMode, XcmV1MultiLocation, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
+import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchInfo, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, SpRuntimeDispatchError, UpDataStructsAccessMode, XcmV1MultiLocation, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
 
 declare module '@polkadot/api-base/types/events' {
   export interface AugmentedEvents<ApiType extends ApiTypes> {
@@ -68,7 +68,7 @@
        * 
        * * amount
        **/
-      Approved: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      Approved: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * New collection was created
        * 
@@ -102,7 +102,7 @@
        * 
        * * amount: Always 1 for NFT
        **/
-      ItemCreated: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      ItemCreated: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * Collection item was burned.
        * 
@@ -116,7 +116,7 @@
        * 
        * * amount: Always 1 for NFT
        **/
-      ItemDestroyed: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      ItemDestroyed: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * Item was transferred
        * 
@@ -130,7 +130,7 @@
        * 
        * * amount: Always 1 for NFT
        **/
-      Transfer: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      Transfer: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * Generic event
        **/
@@ -483,7 +483,7 @@
        * 
        * * user:  Address.
        **/
-      AllowListAddressAdded: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      AllowListAddressAdded: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Address was remove from allow list
        * 
@@ -493,7 +493,7 @@
        * 
        * * user:  Address.
        **/
-      AllowListAddressRemoved: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      AllowListAddressRemoved: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection admin was added
        * 
@@ -503,7 +503,7 @@
        * 
        * * admin:  Admin address.
        **/
-      CollectionAdminAdded: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      CollectionAdminAdded: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection admin was removed
        * 
@@ -513,7 +513,7 @@
        * 
        * * admin:  Admin address.
        **/
-      CollectionAdminRemoved: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      CollectionAdminRemoved: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection limits was set
        * 
modifiedtests/src/interfaces/augment-api-query.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-query.ts
+++ b/tests/src/interfaces/augment-api-query.ts
@@ -5,7 +5,7 @@
 import type { BTreeMap, Bytes, Option, U256, Vec, bool, u128, u16, u32, u64 } from '@polkadot/types-codec';
 import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpRuntimeDigest, UpDataStructsCollection, UpDataStructsCollectionStats } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, UpDataStructsCollection, UpDataStructsCollectionStats } from '@polkadot/types/lookup';
 import type { Observable } from '@polkadot/types/types';
 
 declare module '@polkadot/api-base/types/storage' {
@@ -73,7 +73,7 @@
       /**
        * Allowlisted collection users
        **/
-      allowlist: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      allowlist: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection info
        **/
@@ -87,7 +87,7 @@
       /**
        * List of collection admins
        **/
-      isAdmin: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      isAdmin: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Generic query
        **/
@@ -173,8 +173,8 @@
       [key: string]: QueryableStorageEntry<ApiType>;
     };
     fungible: {
-      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       totalSupply: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u128>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
       /**
        * Generic query
@@ -208,12 +208,12 @@
       [key: string]: QueryableStorageEntry<ApiType>;
     };
     nonfungible: {
-      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletCommonAccountBasicCrossAccountIdRepr>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
+      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletEvmAccountBasicCrossAccountIdRepr>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       /**
        * Used to enumerate tokens owned by account
        **/
-      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]>;
+      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;
       tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletNonfungibleItemData>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
       tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
@@ -312,6 +312,15 @@
        **/
       processedDownwardMessages: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
       /**
+       * The state proof for the last relay parent block.
+       * 
+       * This field is meant to be updated each block with the validation data inherent. Therefore,
+       * before processing of the inherent, e.g. in `on_initialize` this data may be stale.
+       * 
+       * This data is also absent from the genesis.
+       **/
+      relayStateProof: AugmentedQuery<ApiType, () => Observable<Option<SpTrieStorageProof>>, []> & QueryableStorageEntry<ApiType, []>;
+      /**
        * The snapshot of some state related to messaging relevant to the current parachain as per
        * the relay parent.
        * 
@@ -371,13 +380,13 @@
       [key: string]: QueryableStorageEntry<ApiType>;
     };
     refungible: {
-      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg4: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg4: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Used to enumerate tokens owned by account
        **/
-      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]>;
+      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;
       tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<PalletRefungibleItemData>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
       tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
modifiedtests/src/interfaces/augment-api-rpc.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-rpc.ts
+++ b/tests/src/interfaces/augment-api-rpc.ts
@@ -1,7 +1,7 @@
 // Auto-generated via `yarn polkadot-types-from-chain`, do not edit
 /* eslint-disable */
 
-import type { PalletCommonAccountBasicCrossAccountIdRepr, UpDataStructsCollection, UpDataStructsCollectionStats } from './unique';
+import type { PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionStats } from './unique';
 import type { AugmentedRpc } from '@polkadot/rpc-core/types';
 import type { Metadata, StorageKey } from '@polkadot/types';
 import type { Bytes, HashMap, Json, Null, Option, Text, U256, U64, Vec, bool, u128, u32, u64 } from '@polkadot/types-codec';
@@ -562,31 +562,31 @@
       /**
        * Get amount of different user tokens
        **/
-      accountBalance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u32>>;
+      accountBalance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u32>>;
       /**
        * Get tokens owned by account
        **/
-      accountTokens: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<u32>>>;
+      accountTokens: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<u32>>>;
       /**
        * Get admin list
        **/
-      adminlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletCommonAccountBasicCrossAccountIdRepr>>>;
+      adminlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletEvmAccountBasicCrossAccountIdRepr>>>;
       /**
        * Get allowed amount
        **/
-      allowance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, sender: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, spender: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
+      allowance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, sender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, spender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
       /**
        * Check if user is allowed to use collection
        **/
-      allowed: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<bool>>;
+      allowed: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<bool>>;
       /**
        * Get allowlist
        **/
-      allowlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletCommonAccountBasicCrossAccountIdRepr>>>;
+      allowlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletEvmAccountBasicCrossAccountIdRepr>>>;
       /**
        * Get amount of specific account token
        **/
-      balance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
+      balance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
       /**
        * Get collection by specified id
        **/
@@ -604,6 +604,10 @@
        **/
       constMetadata: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Bytes>>;
       /**
+       * Get effective collection limits
+       **/
+      effectiveCollectionLimits: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Option<UpDataStructsCollectionLimits>>>;
+      /**
        * Get last token id
        **/
       lastTokenId: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u32>>;
@@ -614,11 +618,15 @@
       /**
        * Get token owner
        **/
-      tokenOwner: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<PalletCommonAccountBasicCrossAccountIdRepr>>;
+      tokenOwner: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<PalletEvmAccountBasicCrossAccountIdRepr>>;
       /**
        * Get token variable metadata
        **/
       variableMetadata: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Bytes>>;
+      /**
+       * nextSponsored transaction
+       **/
+      nextSponsored: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array,  account:  AccountId | string | Uint8Array | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Option<u64>>>;
     };
     web3: {
       /**
modifiedtests/src/interfaces/augment-api-tx.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-tx.ts
+++ b/tests/src/interfaces/augment-api-tx.ts
@@ -5,7 +5,7 @@
 import type { Bytes, Compact, Option, U256, Vec, bool, u128, u16, u32, u64 } from '@polkadot/types-codec';
 import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumTransactionTransactionV2, OrmlVestingVestingSchedule, PalletCommonAccountBasicCrossAccountIdRepr, UpDataStructsAccessMode, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
+import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumTransactionTransactionV2, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsAccessMode, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
 
 declare module '@polkadot/api-base/types/submittable' {
   export interface AugmentedSubmittables<ApiType extends ApiTypes> {
@@ -551,7 +551,7 @@
        * 
        * * new_admin_id: Address of new admin to add.
        **/
-      addCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newAdminId: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      addCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newAdminId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Add an address to allow list.
        * 
@@ -566,7 +566,7 @@
        * 
        * * address.
        **/
-      addToAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      addToAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Set, change, or remove approved address to transfer the ownership of the NFT.
        * 
@@ -584,7 +584,7 @@
        * 
        * * item_id: ID of the item.
        **/
-      approve: AugmentedSubmittable<(spender: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletCommonAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
+      approve: AugmentedSubmittable<(spender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
        * Destroys a concrete instance of NFT on behalf of the owner
        * See also: [`approve`]
@@ -603,7 +603,7 @@
        * 
        * * from: owner of item
        **/
-      burnFrom: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, from: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32, u128]>;
+      burnFrom: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32, u128]>;
       /**
        * Destroys a concrete instance of NFT.
        * 
@@ -688,7 +688,7 @@
        * 
        * * data: Token data to store on chain.
        **/
-      createItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, data: UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, UpDataStructsCreateItemData]>;
+      createItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, data: UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCreateItemData]>;
       /**
        * This method creates multiple items in a collection created with CreateCollection method.
        * 
@@ -709,7 +709,7 @@
        * 
        * * owner: Address, initial owner of the NFT.
        **/
-      createMultipleItems: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemsData: Vec<UpDataStructsCreateItemData> | (UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, Vec<UpDataStructsCreateItemData>]>;
+      createMultipleItems: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemsData: Vec<UpDataStructsCreateItemData> | (UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, Vec<UpDataStructsCreateItemData>]>;
       createMultipleItemsEx: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, data: UpDataStructsCreateItemExData | { NFT: any } | { Fungible: any } | { RefungibleMultipleItems: any } | { RefungibleMultipleOwners: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCreateItemExData]>;
       /**
        * **DANGEROUS**: Destroys collection and all NFTs within this collection. Users irrecoverably lose their assets and may lose real money.
@@ -737,7 +737,7 @@
        * 
        * * account_id: Address of admin to remove.
        **/
-      removeCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, accountId: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      removeCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, accountId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Switch back to pay-per-own-transaction model.
        * 
@@ -764,7 +764,7 @@
        * 
        * * address.
        **/
-      removeFromAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      removeFromAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       setCollectionLimits: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newLimit: UpDataStructsCollectionLimits | { accountTokenOwnershipLimit?: any; sponsoredDataSize?: any; sponsoredDataRateLimit?: any; tokenLimit?: any; sponsorTransferTimeout?: any; sponsorApproveTimeout?: any; ownerCanTransfer?: any; ownerCanDestroy?: any; transfersEnabled?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCollectionLimits]>;
       /**
        * # Permissions
@@ -938,7 +938,7 @@
        * * Fungible Mode: Must specify transferred amount
        * * Re-Fungible Mode: Must specify transferred portion (between 0 and 1)
        **/
-      transfer: AugmentedSubmittable<(recipient: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletCommonAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
+      transfer: AugmentedSubmittable<(recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
        * Change ownership of a NFT on behalf of the owner. See Approve method for additional information. After this method executes, the approval is removed so that the approved address will not be able to transfer this NFT again from this owner.
        * 
@@ -960,7 +960,7 @@
        * 
        * * value: Amount to transfer.
        **/
-      transferFrom: AugmentedSubmittable<(from: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, recipient: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
+      transferFrom: AugmentedSubmittable<(from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
        * Generic tx
        **/
modifiedtests/src/interfaces/augment-types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-types.ts
+++ b/tests/src/interfaces/augment-types.ts
@@ -1,9 +1,9 @@
 // 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, 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, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSupportWeightsWeightToFeeCoefficient, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1AbridgedHrmpChannel, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpTrieStorageProof, SpVersionRuntimeVersion, UniqueRuntimeRuntime, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, 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 './unique';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSupportWeightsWeightToFeeCoefficient, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1AbridgedHrmpChannel, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, 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 './unique';
 import type { Data, StorageKey } from '@polkadot/types';
-import type { BitVec, Bool, Bytes, I128, I16, I256, I32, I64, I8, Json, Null, 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 { BTreeSet, BitVec, Bool, Bytes, I128, I16, I256, I32, I64, I8, Json, Null, 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';
 import type { BlockAttestations, IncludedBlocks, MoreAttestations } from '@polkadot/types/interfaces/attestations';
 import type { RawAuraPreDigest } from '@polkadot/types/interfaces/aura';
@@ -18,7 +18,7 @@
 import type { StatementKind } from '@polkadot/types/interfaces/claims';
 import type { CollectiveOrigin, MemberCount, ProposalIndex, Votes, VotesTo230 } from '@polkadot/types/interfaces/collective';
 import type { AuthorityId, RawVRFOutput } from '@polkadot/types/interfaces/consensus';
-import type { AliveContractInfo, CodeHash, CodeUploadRequest, CodeUploadResult, CodeUploadResultValue, ContractCallFlags, ContractCallRequest, ContractExecResult, ContractExecResultErr, ContractExecResultErrModule, ContractExecResultOk, ContractExecResultResult, ContractExecResultSuccessTo255, ContractExecResultSuccessTo260, ContractExecResultTo255, ContractExecResultTo260, ContractExecResultTo267, ContractInfo, ContractInstantiateResult, ContractInstantiateResultTo267, ContractReturnFlags, ContractStorageKey, DeletedContract, ExecReturnValue, Gas, HostFnWeights, HostFnWeightsTo264, InstantiateRequest, InstantiateReturnValue, InstantiateReturnValueTo267, InstructionWeights, Limits, LimitsTo264, PrefabWasmModule, RentProjection, Schedule, ScheduleTo212, ScheduleTo258, ScheduleTo264, SeedOf, StorageDeposit, TombstoneContractInfo, TrieId } from '@polkadot/types/interfaces/contracts';
+import type { AliveContractInfo, CodeHash, CodeSource, CodeUploadRequest, CodeUploadResult, CodeUploadResultValue, ContractCallFlags, ContractCallRequest, ContractExecResult, ContractExecResultErr, ContractExecResultErrModule, ContractExecResultOk, ContractExecResultResult, ContractExecResultSuccessTo255, ContractExecResultSuccessTo260, ContractExecResultTo255, ContractExecResultTo260, ContractExecResultTo267, ContractInfo, ContractInstantiateResult, ContractInstantiateResultTo267, ContractInstantiateResultTo299, ContractReturnFlags, ContractStorageKey, DeletedContract, ExecReturnValue, Gas, HostFnWeights, HostFnWeightsTo264, InstantiateRequest, InstantiateRequestV1, InstantiateRequestV2, InstantiateReturnValue, InstantiateReturnValueOk, InstantiateReturnValueTo267, InstructionWeights, Limits, LimitsTo264, PrefabWasmModule, RentProjection, Schedule, ScheduleTo212, ScheduleTo258, ScheduleTo264, SeedOf, StorageDeposit, TombstoneContractInfo, TrieId } from '@polkadot/types/interfaces/contracts';
 import type { ContractConstructorSpecLatest, ContractConstructorSpecV0, ContractConstructorSpecV1, ContractConstructorSpecV2, ContractConstructorSpecV3, ContractContractSpecV0, ContractContractSpecV1, ContractContractSpecV2, ContractContractSpecV3, ContractCryptoHasher, ContractDiscriminant, ContractDisplayName, ContractEventParamSpecLatest, ContractEventParamSpecV0, ContractEventParamSpecV2, ContractEventSpecLatest, ContractEventSpecV0, ContractEventSpecV1, ContractEventSpecV2, ContractLayoutArray, ContractLayoutCell, ContractLayoutEnum, ContractLayoutHash, ContractLayoutHashingStrategy, ContractLayoutKey, ContractLayoutStruct, ContractLayoutStructField, ContractMessageParamSpecLatest, ContractMessageParamSpecV0, ContractMessageParamSpecV2, ContractMessageSpecLatest, ContractMessageSpecV0, ContractMessageSpecV1, ContractMessageSpecV2, ContractMetadata, ContractMetadataLatest, ContractMetadataV0, ContractMetadataV1, ContractMetadataV2, ContractMetadataV3, ContractProject, ContractProjectContract, ContractProjectInfo, ContractProjectSource, ContractProjectV0, ContractSelector, ContractStorageLayout, ContractTypeSpec } from '@polkadot/types/interfaces/contractsAbi';
 import type { FundIndex, FundInfo, LastContribution, TrieIndex } from '@polkadot/types/interfaces/crowdloan';
 import type { ConfigData, MessageId, OverweightIndex, PageCounter, PageIndexData } from '@polkadot/types/interfaces/cumulus';
@@ -175,6 +175,7 @@
     BridgedBlockNumber: BridgedBlockNumber;
     BridgedHeader: BridgedHeader;
     BridgeMessageId: BridgeMessageId;
+    BTreeSet: BTreeSet;
     BufferedSessionChange: BufferedSessionChange;
     Bytes: Bytes;
     Call: Call;
@@ -198,6 +199,7 @@
     ClassMetadata: ClassMetadata;
     CodecHash: CodecHash;
     CodeHash: CodeHash;
+    CodeSource: CodeSource;
     CodeUploadRequest: CodeUploadRequest;
     CodeUploadResult: CodeUploadResult;
     CodeUploadResultValue: CodeUploadResultValue;
@@ -250,6 +252,7 @@
     ContractInfo: ContractInfo;
     ContractInstantiateResult: ContractInstantiateResult;
     ContractInstantiateResultTo267: ContractInstantiateResultTo267;
+    ContractInstantiateResultTo299: ContractInstantiateResultTo299;
     ContractLayoutArray: ContractLayoutArray;
     ContractLayoutCell: ContractLayoutCell;
     ContractLayoutEnum: ContractLayoutEnum;
@@ -591,7 +594,10 @@
     InstanceId: InstanceId;
     InstanceMetadata: InstanceMetadata;
     InstantiateRequest: InstantiateRequest;
+    InstantiateRequestV1: InstantiateRequestV1;
+    InstantiateRequestV2: InstantiateRequestV2;
     InstantiateReturnValue: InstantiateReturnValue;
+    InstantiateReturnValueOk: InstantiateReturnValueOk;
     InstantiateReturnValueTo267: InstantiateReturnValueTo267;
     InstructionV2: InstructionV2;
     InstructionWeights: InstructionWeights;
@@ -707,6 +713,7 @@
     OffchainAccuracyCompact: OffchainAccuracyCompact;
     OffenceDetails: OffenceDetails;
     Offender: Offender;
+    OpalRuntimeRuntime: OpalRuntimeRuntime;
     OpaqueCall: OpaqueCall;
     OpaqueMultiaddr: OpaqueMultiaddr;
     OpaqueNetworkState: OpaqueNetworkState;
@@ -746,7 +753,6 @@
     PalletBalancesReserveData: PalletBalancesReserveData;
     PalletCallMetadataLatest: PalletCallMetadataLatest;
     PalletCallMetadataV14: PalletCallMetadataV14;
-    PalletCommonAccountBasicCrossAccountIdRepr: PalletCommonAccountBasicCrossAccountIdRepr;
     PalletCommonError: PalletCommonError;
     PalletCommonEvent: PalletCommonEvent;
     PalletConstantMetadataLatest: PalletConstantMetadataLatest;
@@ -758,6 +764,7 @@
     PalletEthereumEvent: PalletEthereumEvent;
     PalletEventMetadataLatest: PalletEventMetadataLatest;
     PalletEventMetadataV14: PalletEventMetadataV14;
+    PalletEvmAccountBasicCrossAccountIdRepr: PalletEvmAccountBasicCrossAccountIdRepr;
     PalletEvmCall: PalletEvmCall;
     PalletEvmCoderSubstrateError: PalletEvmCoderSubstrateError;
     PalletEvmContractHelpersError: PalletEvmContractHelpersError;
@@ -1146,7 +1153,6 @@
     UnappliedSlash: UnappliedSlash;
     UnappliedSlashOther: UnappliedSlashOther;
     UncleEntryItem: UncleEntryItem;
-    UniqueRuntimeRuntime: UniqueRuntimeRuntime;
     UnknownTransaction: UnknownTransaction;
     UnlockChunk: UnlockChunk;
     UnrewardedRelayer: UnrewardedRelayer;
modifiedtests/src/interfaces/lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/lookup.ts
+++ b/tests/src/interfaces/lookup.ts
@@ -20,8 +20,18 @@
     _enum: ['Present']
   },
   /**
-   * Lookup10: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot
+   * Lookup10: sp_trie::storage_proof::StorageProof
+   **/
+  SpTrieStorageProof: {
+    trieNodes: 'BTreeSet'
+  },
+  /**
+   * Lookup11: BTreeSet<T>
    **/
+  BTreeSet: 'Vec<Bytes>',
+  /**
+   * Lookup13: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot
+   **/
   CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: {
     dmqMqcHead: 'H256',
     relayDispatchQueueSize: '(u32,u32)',
@@ -29,7 +39,7 @@
     egressChannels: 'Vec<(u32,PolkadotPrimitivesV1AbridgedHrmpChannel)>'
   },
   /**
-   * Lookup15: polkadot_primitives::v1::AbridgedHrmpChannel
+   * Lookup18: polkadot_primitives::v1::AbridgedHrmpChannel
    **/
   PolkadotPrimitivesV1AbridgedHrmpChannel: {
     maxCapacity: 'u32',
@@ -40,7 +50,7 @@
     mqcHead: 'Option<H256>'
   },
   /**
-   * Lookup17: polkadot_primitives::v1::AbridgedHostConfiguration
+   * Lookup20: polkadot_primitives::v1::AbridgedHostConfiguration
    **/
   PolkadotPrimitivesV1AbridgedHostConfiguration: {
     maxCodeSize: 'u32',
@@ -54,14 +64,14 @@
     validationUpgradeDelay: 'u32'
   },
   /**
-   * Lookup23: polkadot_core_primitives::OutboundHrmpMessage<polkadot_parachain::primitives::Id>
+   * Lookup26: polkadot_core_primitives::OutboundHrmpMessage<polkadot_parachain::primitives::Id>
    **/
   PolkadotCorePrimitivesOutboundHrmpMessage: {
     recipient: 'u32',
     data: 'Bytes'
   },
   /**
-   * Lookup26: cumulus_pallet_parachain_system::pallet::Call<T>
+   * Lookup28: cumulus_pallet_parachain_system::pallet::Call<T>
    **/
   CumulusPalletParachainSystemCall: {
     _enum: {
@@ -80,36 +90,30 @@
     }
   },
   /**
-   * Lookup27: cumulus_primitives_parachain_inherent::ParachainInherentData
+   * Lookup29: cumulus_primitives_parachain_inherent::ParachainInherentData
    **/
   CumulusPrimitivesParachainInherentParachainInherentData: {
     validationData: 'PolkadotPrimitivesV1PersistedValidationData',
     relayChainState: 'SpTrieStorageProof',
     downwardMessages: 'Vec<PolkadotCorePrimitivesInboundDownwardMessage>',
     horizontalMessages: 'BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>'
-  },
-  /**
-   * Lookup28: sp_trie::storage_proof::StorageProof
-   **/
-  SpTrieStorageProof: {
-    trieNodes: 'Vec<Bytes>'
   },
   /**
-   * Lookup30: polkadot_core_primitives::InboundDownwardMessage<BlockNumber>
+   * Lookup31: polkadot_core_primitives::InboundDownwardMessage<BlockNumber>
    **/
   PolkadotCorePrimitivesInboundDownwardMessage: {
     sentAt: 'u32',
     msg: 'Bytes'
   },
   /**
-   * Lookup33: polkadot_core_primitives::InboundHrmpMessage<BlockNumber>
+   * Lookup34: polkadot_core_primitives::InboundHrmpMessage<BlockNumber>
    **/
   PolkadotCorePrimitivesInboundHrmpMessage: {
     sentAt: 'u32',
     data: 'Bytes'
   },
   /**
-   * Lookup36: cumulus_pallet_parachain_system::pallet::Event<T>
+   * Lookup37: cumulus_pallet_parachain_system::pallet::Event<T>
    **/
   CumulusPalletParachainSystemEvent: {
     _enum: {
@@ -122,13 +126,13 @@
     }
   },
   /**
-   * Lookup37: cumulus_pallet_parachain_system::pallet::Error<T>
+   * Lookup38: cumulus_pallet_parachain_system::pallet::Error<T>
    **/
   CumulusPalletParachainSystemError: {
     _enum: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled', 'NothingAuthorized', 'Unauthorized']
   },
   /**
-   * Lookup40: pallet_balances::AccountData<Balance>
+   * Lookup41: pallet_balances::AccountData<Balance>
    **/
   PalletBalancesAccountData: {
     free: 'u128',
@@ -137,7 +141,7 @@
     feeFrozen: 'u128'
   },
   /**
-   * Lookup42: pallet_balances::BalanceLock<Balance>
+   * Lookup43: pallet_balances::BalanceLock<Balance>
    **/
   PalletBalancesBalanceLock: {
     id: '[u8;8]',
@@ -145,26 +149,26 @@
     reasons: 'PalletBalancesReasons'
   },
   /**
-   * Lookup44: pallet_balances::Reasons
+   * Lookup45: pallet_balances::Reasons
    **/
   PalletBalancesReasons: {
     _enum: ['Fee', 'Misc', 'All']
   },
   /**
-   * Lookup47: pallet_balances::ReserveData<ReserveIdentifier, Balance>
+   * Lookup48: pallet_balances::ReserveData<ReserveIdentifier, Balance>
    **/
   PalletBalancesReserveData: {
     id: '[u8;8]',
     amount: 'u128'
   },
   /**
-   * Lookup49: pallet_balances::Releases
+   * Lookup50: pallet_balances::Releases
    **/
   PalletBalancesReleases: {
     _enum: ['V1_0_0', 'V2_0_0']
   },
   /**
-   * Lookup50: pallet_balances::pallet::Call<T, I>
+   * Lookup51: pallet_balances::pallet::Call<T, I>
    **/
   PalletBalancesCall: {
     _enum: {
@@ -197,7 +201,7 @@
     }
   },
   /**
-   * Lookup56: pallet_balances::pallet::Event<T, I>
+   * Lookup57: pallet_balances::pallet::Event<T, I>
    **/
   PalletBalancesEvent: {
     _enum: {
@@ -248,19 +252,19 @@
     }
   },
   /**
-   * Lookup57: frame_support::traits::tokens::misc::BalanceStatus
+   * Lookup58: frame_support::traits::tokens::misc::BalanceStatus
    **/
   FrameSupportTokensMiscBalanceStatus: {
     _enum: ['Free', 'Reserved']
   },
   /**
-   * Lookup58: pallet_balances::pallet::Error<T, I>
+   * Lookup59: pallet_balances::pallet::Error<T, I>
    **/
   PalletBalancesError: {
     _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'KeepAlive', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves']
   },
   /**
-   * Lookup61: pallet_timestamp::pallet::Call<T>
+   * Lookup62: pallet_timestamp::pallet::Call<T>
    **/
   PalletTimestampCall: {
     _enum: {
@@ -270,13 +274,13 @@
     }
   },
   /**
-   * Lookup64: pallet_transaction_payment::Releases
+   * Lookup65: pallet_transaction_payment::Releases
    **/
   PalletTransactionPaymentReleases: {
     _enum: ['V1Ancient', 'V2']
   },
   /**
-   * Lookup66: frame_support::weights::WeightToFeeCoefficient<Balance>
+   * Lookup67: frame_support::weights::WeightToFeeCoefficient<Balance>
    **/
   FrameSupportWeightsWeightToFeeCoefficient: {
     coeffInteger: 'u128',
@@ -285,7 +289,7 @@
     degree: 'u8'
   },
   /**
-   * Lookup68: pallet_treasury::Proposal<sp_core::crypto::AccountId32, Balance>
+   * Lookup69: pallet_treasury::Proposal<sp_core::crypto::AccountId32, Balance>
    **/
   PalletTreasuryProposal: {
     proposer: 'AccountId32',
@@ -294,7 +298,7 @@
     bond: 'u128'
   },
   /**
-   * Lookup71: pallet_treasury::pallet::Call<T, I>
+   * Lookup72: pallet_treasury::pallet::Call<T, I>
    **/
   PalletTreasuryCall: {
     _enum: {
@@ -311,7 +315,7 @@
     }
   },
   /**
-   * Lookup73: pallet_treasury::pallet::Event<T, I>
+   * Lookup74: pallet_treasury::pallet::Event<T, I>
    **/
   PalletTreasuryEvent: {
     _enum: {
@@ -342,17 +346,17 @@
     }
   },
   /**
-   * Lookup76: frame_support::PalletId
+   * Lookup77: frame_support::PalletId
    **/
   FrameSupportPalletId: '[u8;8]',
   /**
-   * Lookup77: pallet_treasury::pallet::Error<T, I>
+   * Lookup78: pallet_treasury::pallet::Error<T, I>
    **/
   PalletTreasuryError: {
     _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals']
   },
   /**
-   * Lookup78: pallet_sudo::pallet::Call<T>
+   * Lookup79: pallet_sudo::pallet::Call<T>
    **/
   PalletSudoCall: {
     _enum: {
@@ -376,7 +380,7 @@
     }
   },
   /**
-   * Lookup80: frame_system::pallet::Call<T>
+   * Lookup81: frame_system::pallet::Call<T>
    **/
   FrameSystemCall: {
     _enum: {
@@ -414,7 +418,7 @@
     }
   },
   /**
-   * Lookup83: orml_vesting::module::Call<T>
+   * Lookup84: orml_vesting::module::Call<T>
    **/
   OrmlVestingModuleCall: {
     _enum: {
@@ -433,7 +437,7 @@
     }
   },
   /**
-   * Lookup84: orml_vesting::VestingSchedule<BlockNumber, Balance>
+   * Lookup85: orml_vesting::VestingSchedule<BlockNumber, Balance>
    **/
   OrmlVestingVestingSchedule: {
     start: 'u32',
@@ -442,7 +446,7 @@
     perPeriod: 'Compact<u128>'
   },
   /**
-   * Lookup86: cumulus_pallet_xcmp_queue::pallet::Call<T>
+   * Lookup87: cumulus_pallet_xcmp_queue::pallet::Call<T>
    **/
   CumulusPalletXcmpQueueCall: {
     _enum: {
@@ -491,7 +495,7 @@
     }
   },
   /**
-   * Lookup87: pallet_xcm::pallet::Call<T>
+   * Lookup88: pallet_xcm::pallet::Call<T>
    **/
   PalletXcmCall: {
     _enum: {
@@ -545,7 +549,7 @@
     }
   },
   /**
-   * Lookup88: xcm::VersionedMultiLocation
+   * Lookup89: xcm::VersionedMultiLocation
    **/
   XcmVersionedMultiLocation: {
     _enum: {
@@ -554,7 +558,7 @@
     }
   },
   /**
-   * Lookup89: xcm::v0::multi_location::MultiLocation
+   * Lookup90: xcm::v0::multi_location::MultiLocation
    **/
   XcmV0MultiLocation: {
     _enum: {
@@ -570,7 +574,7 @@
     }
   },
   /**
-   * Lookup90: xcm::v0::junction::Junction
+   * Lookup91: xcm::v0::junction::Junction
    **/
   XcmV0Junction: {
     _enum: {
@@ -599,7 +603,7 @@
     }
   },
   /**
-   * Lookup91: xcm::v0::junction::NetworkId
+   * Lookup92: xcm::v0::junction::NetworkId
    **/
   XcmV0JunctionNetworkId: {
     _enum: {
@@ -610,7 +614,7 @@
     }
   },
   /**
-   * Lookup92: xcm::v0::junction::BodyId
+   * Lookup93: xcm::v0::junction::BodyId
    **/
   XcmV0JunctionBodyId: {
     _enum: {
@@ -624,7 +628,7 @@
     }
   },
   /**
-   * Lookup93: xcm::v0::junction::BodyPart
+   * Lookup94: xcm::v0::junction::BodyPart
    **/
   XcmV0JunctionBodyPart: {
     _enum: {
@@ -647,14 +651,14 @@
     }
   },
   /**
-   * Lookup94: xcm::v1::multilocation::MultiLocation
+   * Lookup95: xcm::v1::multilocation::MultiLocation
    **/
   XcmV1MultiLocation: {
     parents: 'u8',
     interior: 'XcmV1MultilocationJunctions'
   },
   /**
-   * Lookup95: xcm::v1::multilocation::Junctions
+   * Lookup96: xcm::v1::multilocation::Junctions
    **/
   XcmV1MultilocationJunctions: {
     _enum: {
@@ -670,7 +674,7 @@
     }
   },
   /**
-   * Lookup96: xcm::v1::junction::Junction
+   * Lookup97: xcm::v1::junction::Junction
    **/
   XcmV1Junction: {
     _enum: {
@@ -698,7 +702,7 @@
     }
   },
   /**
-   * Lookup97: xcm::VersionedXcm<Call>
+   * Lookup98: xcm::VersionedXcm<Call>
    **/
   XcmVersionedXcm: {
     _enum: {
@@ -708,7 +712,7 @@
     }
   },
   /**
-   * Lookup98: xcm::v0::Xcm<Call>
+   * Lookup99: xcm::v0::Xcm<Call>
    **/
   XcmV0Xcm: {
     _enum: {
@@ -762,7 +766,7 @@
     }
   },
   /**
-   * Lookup100: xcm::v0::multi_asset::MultiAsset
+   * Lookup101: xcm::v0::multi_asset::MultiAsset
    **/
   XcmV0MultiAsset: {
     _enum: {
@@ -801,7 +805,7 @@
     }
   },
   /**
-   * Lookup101: xcm::v1::multiasset::AssetInstance
+   * Lookup102: xcm::v1::multiasset::AssetInstance
    **/
   XcmV1MultiassetAssetInstance: {
     _enum: {
@@ -815,7 +819,7 @@
     }
   },
   /**
-   * Lookup105: xcm::v0::order::Order<Call>
+   * Lookup106: xcm::v0::order::Order<Call>
    **/
   XcmV0Order: {
     _enum: {
@@ -858,7 +862,7 @@
     }
   },
   /**
-   * Lookup107: xcm::v0::Response
+   * Lookup108: xcm::v0::Response
    **/
   XcmV0Response: {
     _enum: {
@@ -866,19 +870,19 @@
     }
   },
   /**
-   * Lookup108: xcm::v0::OriginKind
+   * Lookup109: xcm::v0::OriginKind
    **/
   XcmV0OriginKind: {
     _enum: ['Native', 'SovereignAccount', 'Superuser', 'Xcm']
   },
   /**
-   * Lookup109: xcm::double_encoded::DoubleEncoded<T>
+   * Lookup110: xcm::double_encoded::DoubleEncoded<T>
    **/
   XcmDoubleEncoded: {
     encoded: 'Bytes'
   },
   /**
-   * Lookup110: xcm::v1::Xcm<Call>
+   * Lookup111: xcm::v1::Xcm<Call>
    **/
   XcmV1Xcm: {
     _enum: {
@@ -937,18 +941,18 @@
     }
   },
   /**
-   * Lookup111: xcm::v1::multiasset::MultiAssets
+   * Lookup112: xcm::v1::multiasset::MultiAssets
    **/
   XcmV1MultiassetMultiAssets: 'Vec<XcmV1MultiAsset>',
   /**
-   * Lookup113: xcm::v1::multiasset::MultiAsset
+   * Lookup114: xcm::v1::multiasset::MultiAsset
    **/
   XcmV1MultiAsset: {
     id: 'XcmV1MultiassetAssetId',
     fun: 'XcmV1MultiassetFungibility'
   },
   /**
-   * Lookup114: xcm::v1::multiasset::AssetId
+   * Lookup115: xcm::v1::multiasset::AssetId
    **/
   XcmV1MultiassetAssetId: {
     _enum: {
@@ -957,7 +961,7 @@
     }
   },
   /**
-   * Lookup115: xcm::v1::multiasset::Fungibility
+   * Lookup116: xcm::v1::multiasset::Fungibility
    **/
   XcmV1MultiassetFungibility: {
     _enum: {
@@ -966,7 +970,7 @@
     }
   },
   /**
-   * Lookup117: xcm::v1::order::Order<Call>
+   * Lookup118: xcm::v1::order::Order<Call>
    **/
   XcmV1Order: {
     _enum: {
@@ -1011,7 +1015,7 @@
     }
   },
   /**
-   * Lookup118: xcm::v1::multiasset::MultiAssetFilter
+   * Lookup119: xcm::v1::multiasset::MultiAssetFilter
    **/
   XcmV1MultiassetMultiAssetFilter: {
     _enum: {
@@ -1020,7 +1024,7 @@
     }
   },
   /**
-   * Lookup119: xcm::v1::multiasset::WildMultiAsset
+   * Lookup120: xcm::v1::multiasset::WildMultiAsset
    **/
   XcmV1MultiassetWildMultiAsset: {
     _enum: {
@@ -1032,13 +1036,13 @@
     }
   },
   /**
-   * Lookup120: xcm::v1::multiasset::WildFungibility
+   * Lookup121: xcm::v1::multiasset::WildFungibility
    **/
   XcmV1MultiassetWildFungibility: {
     _enum: ['Fungible', 'NonFungible']
   },
   /**
-   * Lookup122: xcm::v1::Response
+   * Lookup123: xcm::v1::Response
    **/
   XcmV1Response: {
     _enum: {
@@ -1047,11 +1051,11 @@
     }
   },
   /**
-   * Lookup123: xcm::v2::Xcm<Call>
+   * Lookup124: xcm::v2::Xcm<Call>
    **/
   XcmV2Xcm: 'Vec<XcmV2Instruction>',
   /**
-   * Lookup125: xcm::v2::Instruction<Call>
+   * Lookup126: xcm::v2::Instruction<Call>
    **/
   XcmV2Instruction: {
     _enum: {
@@ -1149,7 +1153,7 @@
     }
   },
   /**
-   * Lookup126: xcm::v2::Response
+   * Lookup127: xcm::v2::Response
    **/
   XcmV2Response: {
     _enum: {
@@ -1160,7 +1164,7 @@
     }
   },
   /**
-   * Lookup129: xcm::v2::traits::Error
+   * Lookup130: xcm::v2::traits::Error
    **/
   XcmV2TraitsError: {
     _enum: {
@@ -1193,7 +1197,7 @@
     }
   },
   /**
-   * Lookup130: xcm::v2::WeightLimit
+   * Lookup131: xcm::v2::WeightLimit
    **/
   XcmV2WeightLimit: {
     _enum: {
@@ -1202,7 +1206,7 @@
     }
   },
   /**
-   * Lookup131: xcm::VersionedMultiAssets
+   * Lookup132: xcm::VersionedMultiAssets
    **/
   XcmVersionedMultiAssets: {
     _enum: {
@@ -1211,11 +1215,11 @@
     }
   },
   /**
-   * Lookup146: cumulus_pallet_xcm::pallet::Call<T>
+   * Lookup147: cumulus_pallet_xcm::pallet::Call<T>
    **/
   CumulusPalletXcmCall: 'Null',
   /**
-   * Lookup147: cumulus_pallet_dmp_queue::pallet::Call<T>
+   * Lookup148: cumulus_pallet_dmp_queue::pallet::Call<T>
    **/
   CumulusPalletDmpQueueCall: {
     _enum: {
@@ -1226,7 +1230,7 @@
     }
   },
   /**
-   * Lookup148: pallet_inflation::pallet::Call<T>
+   * Lookup149: pallet_inflation::pallet::Call<T>
    **/
   PalletInflationCall: {
     _enum: {
@@ -1236,7 +1240,7 @@
     }
   },
   /**
-   * Lookup149: pallet_unique::Call<T>
+   * Lookup150: pallet_unique::Call<T>
    **/
   PalletUniqueCall: {
     _enum: {
@@ -1254,11 +1258,11 @@
       },
       add_to_allow_list: {
         collectionId: 'u32',
-        address: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        address: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       remove_from_allow_list: {
         collectionId: 'u32',
-        address: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        address: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       set_public_access_mode: {
         collectionId: 'u32',
@@ -1274,11 +1278,11 @@
       },
       add_collection_admin: {
         collectionId: 'u32',
-        newAdminId: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        newAdminId: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       remove_collection_admin: {
         collectionId: 'u32',
-        accountId: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        accountId: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       set_collection_sponsor: {
         collectionId: 'u32',
@@ -1292,12 +1296,12 @@
       },
       create_item: {
         collectionId: 'u32',
-        owner: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        owner: 'PalletEvmAccountBasicCrossAccountIdRepr',
         data: 'UpDataStructsCreateItemData',
       },
       create_multiple_items: {
         collectionId: 'u32',
-        owner: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        owner: 'PalletEvmAccountBasicCrossAccountIdRepr',
         itemsData: 'Vec<UpDataStructsCreateItemData>',
       },
       create_multiple_items_ex: {
@@ -1315,25 +1319,25 @@
       },
       burn_from: {
         collectionId: 'u32',
-        from: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        from: 'PalletEvmAccountBasicCrossAccountIdRepr',
         itemId: 'u32',
         value: 'u128',
       },
       transfer: {
-        recipient: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        recipient: 'PalletEvmAccountBasicCrossAccountIdRepr',
         collectionId: 'u32',
         itemId: 'u32',
         value: 'u128',
       },
       approve: {
-        spender: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        spender: 'PalletEvmAccountBasicCrossAccountIdRepr',
         collectionId: 'u32',
         itemId: 'u32',
         amount: 'u128',
       },
       transfer_from: {
-        from: 'PalletCommonAccountBasicCrossAccountIdRepr',
-        recipient: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        from: 'PalletEvmAccountBasicCrossAccountIdRepr',
+        recipient: 'PalletEvmAccountBasicCrossAccountIdRepr',
         collectionId: 'u32',
         itemId: 'u32',
         value: 'u128',
@@ -1370,7 +1374,7 @@
     }
   },
   /**
-   * Lookup155: up_data_structs::CollectionMode
+   * Lookup156: up_data_structs::CollectionMode
    **/
   UpDataStructsCollectionMode: {
     _enum: {
@@ -1380,7 +1384,7 @@
     }
   },
   /**
-   * Lookup156: up_data_structs::CreateCollectionData<sp_core::crypto::AccountId32>
+   * Lookup157: up_data_structs::CreateCollectionData<sp_core::crypto::AccountId32>
    **/
   UpDataStructsCreateCollectionData: {
     mode: 'UpDataStructsCollectionMode',
@@ -1397,19 +1401,19 @@
     metaUpdatePermission: 'Option<UpDataStructsMetaUpdatePermission>'
   },
   /**
-   * Lookup158: up_data_structs::AccessMode
+   * Lookup159: up_data_structs::AccessMode
    **/
   UpDataStructsAccessMode: {
     _enum: ['Normal', 'AllowList']
   },
   /**
-   * Lookup161: up_data_structs::SchemaVersion
+   * Lookup162: up_data_structs::SchemaVersion
    **/
   UpDataStructsSchemaVersion: {
     _enum: ['ImageURL', 'Unique']
   },
   /**
-   * Lookup164: up_data_structs::CollectionLimits
+   * Lookup165: up_data_structs::CollectionLimits
    **/
   UpDataStructsCollectionLimits: {
     accountTokenOwnershipLimit: 'Option<u32>',
@@ -1423,7 +1427,7 @@
     transfersEnabled: 'Option<bool>'
   },
   /**
-   * Lookup166: up_data_structs::SponsoringRateLimit
+   * Lookup167: up_data_structs::SponsoringRateLimit
    **/
   UpDataStructsSponsoringRateLimit: {
     _enum: {
@@ -1432,22 +1436,22 @@
     }
   },
   /**
-   * Lookup170: up_data_structs::MetaUpdatePermission
+   * Lookup171: up_data_structs::MetaUpdatePermission
    **/
   UpDataStructsMetaUpdatePermission: {
     _enum: ['ItemOwner', 'Admin', 'None']
   },
   /**
-   * Lookup172: pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>
+   * Lookup173: pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>
    **/
-  PalletCommonAccountBasicCrossAccountIdRepr: {
+  PalletEvmAccountBasicCrossAccountIdRepr: {
     _enum: {
       Substrate: 'AccountId32',
       Ethereum: 'H160'
     }
   },
   /**
-   * Lookup174: up_data_structs::CreateItemData
+   * Lookup175: up_data_structs::CreateItemData
    **/
   UpDataStructsCreateItemData: {
     _enum: {
@@ -1457,20 +1461,20 @@
     }
   },
   /**
-   * Lookup175: up_data_structs::CreateNftData
+   * Lookup176: up_data_structs::CreateNftData
    **/
   UpDataStructsCreateNftData: {
     constData: 'Bytes',
     variableData: 'Bytes'
   },
   /**
-   * Lookup177: up_data_structs::CreateFungibleData
+   * Lookup178: up_data_structs::CreateFungibleData
    **/
   UpDataStructsCreateFungibleData: {
     value: 'u128'
   },
   /**
-   * Lookup178: up_data_structs::CreateReFungibleData
+   * Lookup179: up_data_structs::CreateReFungibleData
    **/
   UpDataStructsCreateReFungibleData: {
     constData: 'Bytes',
@@ -1478,38 +1482,38 @@
     pieces: 'u128'
   },
   /**
-   * Lookup180: up_data_structs::CreateItemExData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup181: up_data_structs::CreateItemExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsCreateItemExData: {
     _enum: {
       NFT: 'Vec<UpDataStructsCreateNftExData>',
-      Fungible: 'BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>',
+      Fungible: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',
       RefungibleMultipleItems: 'Vec<UpDataStructsCreateRefungibleExData>',
       RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExData'
     }
   },
   /**
-   * Lookup182: up_data_structs::CreateNftExData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup183: up_data_structs::CreateNftExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsCreateNftExData: {
     constData: 'Bytes',
     variableData: 'Bytes',
-    owner: 'PalletCommonAccountBasicCrossAccountIdRepr'
+    owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
   },
   /**
-   * Lookup189: up_data_structs::CreateRefungibleExData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup190: up_data_structs::CreateRefungibleExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsCreateRefungibleExData: {
     constData: 'Bytes',
     variableData: 'Bytes',
-    users: 'BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>'
+    users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>'
   },
   /**
-   * Lookup192: pallet_template_transaction_payment::Call<T>
+   * Lookup193: pallet_template_transaction_payment::Call<T>
    **/
   PalletTemplateTransactionPaymentCall: 'Null',
   /**
-   * Lookup193: pallet_evm::pallet::Call<T>
+   * Lookup194: pallet_evm::pallet::Call<T>
    **/
   PalletEvmCall: {
     _enum: {
@@ -1552,7 +1556,7 @@
     }
   },
   /**
-   * Lookup199: pallet_ethereum::pallet::Call<T>
+   * Lookup200: pallet_ethereum::pallet::Call<T>
    **/
   PalletEthereumCall: {
     _enum: {
@@ -1562,7 +1566,7 @@
     }
   },
   /**
-   * Lookup200: ethereum::transaction::TransactionV2
+   * Lookup201: ethereum::transaction::TransactionV2
    **/
   EthereumTransactionTransactionV2: {
     _enum: {
@@ -1572,7 +1576,7 @@
     }
   },
   /**
-   * Lookup201: ethereum::transaction::LegacyTransaction
+   * Lookup202: ethereum::transaction::LegacyTransaction
    **/
   EthereumTransactionLegacyTransaction: {
     nonce: 'U256',
@@ -1584,7 +1588,7 @@
     signature: 'EthereumTransactionTransactionSignature'
   },
   /**
-   * Lookup202: ethereum::transaction::TransactionAction
+   * Lookup203: ethereum::transaction::TransactionAction
    **/
   EthereumTransactionTransactionAction: {
     _enum: {
@@ -1593,7 +1597,7 @@
     }
   },
   /**
-   * Lookup203: ethereum::transaction::TransactionSignature
+   * Lookup204: ethereum::transaction::TransactionSignature
    **/
   EthereumTransactionTransactionSignature: {
     v: 'u64',
@@ -1601,7 +1605,7 @@
     s: 'H256'
   },
   /**
-   * Lookup205: ethereum::transaction::EIP2930Transaction
+   * Lookup206: ethereum::transaction::EIP2930Transaction
    **/
   EthereumTransactionEip2930Transaction: {
     chainId: 'u64',
@@ -1617,14 +1621,14 @@
     s: 'H256'
   },
   /**
-   * Lookup207: ethereum::transaction::AccessListItem
+   * Lookup208: ethereum::transaction::AccessListItem
    **/
   EthereumTransactionAccessListItem: {
     address: 'H160',
-    slots: 'Vec<H256>'
+    storageKeys: 'Vec<H256>'
   },
   /**
-   * Lookup208: ethereum::transaction::EIP1559Transaction
+   * Lookup209: ethereum::transaction::EIP1559Transaction
    **/
   EthereumTransactionEip1559Transaction: {
     chainId: 'u64',
@@ -1641,7 +1645,7 @@
     s: 'H256'
   },
   /**
-   * Lookup209: pallet_evm_migration::pallet::Call<T>
+   * Lookup210: pallet_evm_migration::pallet::Call<T>
    **/
   PalletEvmMigrationCall: {
     _enum: {
@@ -1659,7 +1663,7 @@
     }
   },
   /**
-   * Lookup212: pallet_sudo::pallet::Event<T>
+   * Lookup213: pallet_sudo::pallet::Event<T>
    **/
   PalletSudoEvent: {
     _enum: {
@@ -1675,7 +1679,7 @@
     }
   },
   /**
-   * Lookup214: sp_runtime::DispatchError
+   * Lookup215: sp_runtime::DispatchError
    **/
   SpRuntimeDispatchError: {
     _enum: {
@@ -1691,32 +1695,32 @@
     }
   },
   /**
-   * Lookup215: sp_runtime::ModuleError
+   * Lookup216: sp_runtime::ModuleError
    **/
   SpRuntimeModuleError: {
     index: 'u8',
     error: 'u8'
   },
   /**
-   * Lookup216: sp_runtime::TokenError
+   * Lookup217: sp_runtime::TokenError
    **/
   SpRuntimeTokenError: {
     _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported']
   },
   /**
-   * Lookup217: sp_runtime::ArithmeticError
+   * Lookup218: sp_runtime::ArithmeticError
    **/
   SpRuntimeArithmeticError: {
     _enum: ['Underflow', 'Overflow', 'DivisionByZero']
   },
   /**
-   * Lookup218: pallet_sudo::pallet::Error<T>
+   * Lookup219: pallet_sudo::pallet::Error<T>
    **/
   PalletSudoError: {
     _enum: ['RequireSudo']
   },
   /**
-   * Lookup219: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>
+   * Lookup220: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>
    **/
   FrameSystemAccountInfo: {
     nonce: 'u32',
@@ -1726,7 +1730,7 @@
     data: 'PalletBalancesAccountData'
   },
   /**
-   * Lookup220: frame_support::weights::PerDispatchClass<T>
+   * Lookup221: frame_support::weights::PerDispatchClass<T>
    **/
   FrameSupportWeightsPerDispatchClassU64: {
     normal: 'u64',
@@ -1734,13 +1738,13 @@
     mandatory: 'u64'
   },
   /**
-   * Lookup221: sp_runtime::generic::digest::Digest
+   * Lookup222: sp_runtime::generic::digest::Digest
    **/
   SpRuntimeDigest: {
     logs: 'Vec<SpRuntimeDigestDigestItem>'
   },
   /**
-   * Lookup223: sp_runtime::generic::digest::DigestItem
+   * Lookup224: sp_runtime::generic::digest::DigestItem
    **/
   SpRuntimeDigestDigestItem: {
     _enum: {
@@ -1756,7 +1760,7 @@
     }
   },
   /**
-   * Lookup225: frame_system::EventRecord<unique_runtime::Event, primitive_types::H256>
+   * Lookup226: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>
    **/
   FrameSystemEventRecord: {
     phase: 'FrameSystemPhase',
@@ -1764,7 +1768,7 @@
     topics: 'Vec<H256>'
   },
   /**
-   * Lookup227: frame_system::pallet::Event<T>
+   * Lookup228: frame_system::pallet::Event<T>
    **/
   FrameSystemEvent: {
     _enum: {
@@ -1792,7 +1796,7 @@
     }
   },
   /**
-   * Lookup228: frame_support::weights::DispatchInfo
+   * Lookup229: frame_support::weights::DispatchInfo
    **/
   FrameSupportWeightsDispatchInfo: {
     weight: 'u64',
@@ -1800,19 +1804,19 @@
     paysFee: 'FrameSupportWeightsPays'
   },
   /**
-   * Lookup229: frame_support::weights::DispatchClass
+   * Lookup230: frame_support::weights::DispatchClass
    **/
   FrameSupportWeightsDispatchClass: {
     _enum: ['Normal', 'Operational', 'Mandatory']
   },
   /**
-   * Lookup230: frame_support::weights::Pays
+   * Lookup231: frame_support::weights::Pays
    **/
   FrameSupportWeightsPays: {
     _enum: ['Yes', 'No']
   },
   /**
-   * Lookup231: orml_vesting::module::Event<T>
+   * Lookup232: orml_vesting::module::Event<T>
    **/
   OrmlVestingModuleEvent: {
     _enum: {
@@ -1831,7 +1835,7 @@
     }
   },
   /**
-   * Lookup232: cumulus_pallet_xcmp_queue::pallet::Event<T>
+   * Lookup233: cumulus_pallet_xcmp_queue::pallet::Event<T>
    **/
   CumulusPalletXcmpQueueEvent: {
     _enum: {
@@ -1846,7 +1850,7 @@
     }
   },
   /**
-   * Lookup233: pallet_xcm::pallet::Event<T>
+   * Lookup234: pallet_xcm::pallet::Event<T>
    **/
   PalletXcmEvent: {
     _enum: {
@@ -1869,7 +1873,7 @@
     }
   },
   /**
-   * Lookup234: xcm::v2::traits::Outcome
+   * Lookup235: xcm::v2::traits::Outcome
    **/
   XcmV2TraitsOutcome: {
     _enum: {
@@ -1879,7 +1883,7 @@
     }
   },
   /**
-   * Lookup236: cumulus_pallet_xcm::pallet::Event<T>
+   * Lookup237: cumulus_pallet_xcm::pallet::Event<T>
    **/
   CumulusPalletXcmEvent: {
     _enum: {
@@ -1889,7 +1893,7 @@
     }
   },
   /**
-   * Lookup237: cumulus_pallet_dmp_queue::pallet::Event<T>
+   * Lookup238: cumulus_pallet_dmp_queue::pallet::Event<T>
    **/
   CumulusPalletDmpQueueEvent: {
     _enum: {
@@ -1902,19 +1906,19 @@
     }
   },
   /**
-   * Lookup238: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup239: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   PalletUniqueRawEvent: {
     _enum: {
       CollectionSponsorRemoved: 'u32',
-      CollectionAdminAdded: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
+      CollectionAdminAdded: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
       CollectionOwnedChanged: '(u32,AccountId32)',
       CollectionSponsorSet: '(u32,AccountId32)',
       ConstOnChainSchemaSet: 'u32',
       SponsorshipConfirmed: '(u32,AccountId32)',
-      CollectionAdminRemoved: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
-      AllowListAddressRemoved: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
-      AllowListAddressAdded: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
+      CollectionAdminRemoved: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
+      AllowListAddressRemoved: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
+      AllowListAddressAdded: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
       CollectionLimitSet: 'u32',
       MintPermissionSet: 'u32',
       OffchainSchemaSet: 'u32',
@@ -1924,20 +1928,20 @@
     }
   },
   /**
-   * Lookup239: pallet_common::pallet::Event<T>
+   * Lookup240: pallet_common::pallet::Event<T>
    **/
   PalletCommonEvent: {
     _enum: {
       CollectionCreated: '(u32,u8,AccountId32)',
       CollectionDestroyed: 'u32',
-      ItemCreated: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,u128)',
-      ItemDestroyed: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,u128)',
-      Transfer: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,PalletCommonAccountBasicCrossAccountIdRepr,u128)',
-      Approved: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,PalletCommonAccountBasicCrossAccountIdRepr,u128)'
+      ItemCreated: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,u128)',
+      ItemDestroyed: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,u128)',
+      Transfer: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,PalletEvmAccountBasicCrossAccountIdRepr,u128)',
+      Approved: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,PalletEvmAccountBasicCrossAccountIdRepr,u128)'
     }
   },
   /**
-   * Lookup240: pallet_evm::pallet::Event<T>
+   * Lookup241: pallet_evm::pallet::Event<T>
    **/
   PalletEvmEvent: {
     _enum: {
@@ -1951,7 +1955,7 @@
     }
   },
   /**
-   * Lookup241: ethereum::log::Log
+   * Lookup242: ethereum::log::Log
    **/
   EthereumLog: {
     address: 'H160',
@@ -1959,7 +1963,7 @@
     data: 'Bytes'
   },
   /**
-   * Lookup242: pallet_ethereum::pallet::Event
+   * Lookup243: pallet_ethereum::pallet::Event
    **/
   PalletEthereumEvent: {
     _enum: {
@@ -1967,7 +1971,7 @@
     }
   },
   /**
-   * Lookup243: evm_core::error::ExitReason
+   * Lookup244: evm_core::error::ExitReason
    **/
   EvmCoreErrorExitReason: {
     _enum: {
@@ -1978,13 +1982,13 @@
     }
   },
   /**
-   * Lookup244: evm_core::error::ExitSucceed
+   * Lookup245: evm_core::error::ExitSucceed
    **/
   EvmCoreErrorExitSucceed: {
     _enum: ['Stopped', 'Returned', 'Suicided']
   },
   /**
-   * Lookup245: evm_core::error::ExitError
+   * Lookup246: evm_core::error::ExitError
    **/
   EvmCoreErrorExitError: {
     _enum: {
@@ -2006,13 +2010,13 @@
     }
   },
   /**
-   * Lookup248: evm_core::error::ExitRevert
+   * Lookup249: evm_core::error::ExitRevert
    **/
   EvmCoreErrorExitRevert: {
     _enum: ['Reverted']
   },
   /**
-   * Lookup249: evm_core::error::ExitFatal
+   * Lookup250: evm_core::error::ExitFatal
    **/
   EvmCoreErrorExitFatal: {
     _enum: {
@@ -2023,7 +2027,7 @@
     }
   },
   /**
-   * Lookup250: frame_system::Phase
+   * Lookup251: frame_system::Phase
    **/
   FrameSystemPhase: {
     _enum: {
@@ -2033,14 +2037,14 @@
     }
   },
   /**
-   * Lookup252: frame_system::LastRuntimeUpgradeInfo
+   * Lookup253: frame_system::LastRuntimeUpgradeInfo
    **/
   FrameSystemLastRuntimeUpgradeInfo: {
     specVersion: 'Compact<u32>',
     specName: 'Text'
   },
   /**
-   * Lookup253: frame_system::limits::BlockWeights
+   * Lookup254: frame_system::limits::BlockWeights
    **/
   FrameSystemLimitsBlockWeights: {
     baseBlock: 'u64',
@@ -2048,7 +2052,7 @@
     perClass: 'FrameSupportWeightsPerDispatchClassWeightsPerClass'
   },
   /**
-   * Lookup254: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>
+   * Lookup255: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>
    **/
   FrameSupportWeightsPerDispatchClassWeightsPerClass: {
     normal: 'FrameSystemLimitsWeightsPerClass',
@@ -2056,7 +2060,7 @@
     mandatory: 'FrameSystemLimitsWeightsPerClass'
   },
   /**
-   * Lookup255: frame_system::limits::WeightsPerClass
+   * Lookup256: frame_system::limits::WeightsPerClass
    **/
   FrameSystemLimitsWeightsPerClass: {
     baseExtrinsic: 'u64',
@@ -2065,13 +2069,13 @@
     reserved: 'Option<u64>'
   },
   /**
-   * Lookup257: frame_system::limits::BlockLength
+   * Lookup258: frame_system::limits::BlockLength
    **/
   FrameSystemLimitsBlockLength: {
     max: 'FrameSupportWeightsPerDispatchClassU32'
   },
   /**
-   * Lookup258: frame_support::weights::PerDispatchClass<T>
+   * Lookup259: frame_support::weights::PerDispatchClass<T>
    **/
   FrameSupportWeightsPerDispatchClassU32: {
     normal: 'u32',
@@ -2079,14 +2083,14 @@
     mandatory: 'u32'
   },
   /**
-   * Lookup259: frame_support::weights::RuntimeDbWeight
+   * Lookup260: frame_support::weights::RuntimeDbWeight
    **/
   FrameSupportWeightsRuntimeDbWeight: {
     read: 'u64',
     write: 'u64'
   },
   /**
-   * Lookup260: sp_version::RuntimeVersion
+   * Lookup261: sp_version::RuntimeVersion
    **/
   SpVersionRuntimeVersion: {
     specName: 'Text',
@@ -2099,19 +2103,19 @@
     stateVersion: 'u8'
   },
   /**
-   * Lookup264: frame_system::pallet::Error<T>
+   * Lookup265: frame_system::pallet::Error<T>
    **/
   FrameSystemError: {
     _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']
   },
   /**
-   * Lookup266: orml_vesting::module::Error<T>
+   * Lookup267: orml_vesting::module::Error<T>
    **/
   OrmlVestingModuleError: {
     _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']
   },
   /**
-   * Lookup268: cumulus_pallet_xcmp_queue::InboundChannelDetails
+   * Lookup269: cumulus_pallet_xcmp_queue::InboundChannelDetails
    **/
   CumulusPalletXcmpQueueInboundChannelDetails: {
     sender: 'u32',
@@ -2119,19 +2123,19 @@
     messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'
   },
   /**
-   * Lookup269: cumulus_pallet_xcmp_queue::InboundState
+   * Lookup270: cumulus_pallet_xcmp_queue::InboundState
    **/
   CumulusPalletXcmpQueueInboundState: {
     _enum: ['Ok', 'Suspended']
   },
   /**
-   * Lookup272: polkadot_parachain::primitives::XcmpMessageFormat
+   * Lookup273: polkadot_parachain::primitives::XcmpMessageFormat
    **/
   PolkadotParachainPrimitivesXcmpMessageFormat: {
     _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']
   },
   /**
-   * Lookup275: cumulus_pallet_xcmp_queue::OutboundChannelDetails
+   * Lookup276: cumulus_pallet_xcmp_queue::OutboundChannelDetails
    **/
   CumulusPalletXcmpQueueOutboundChannelDetails: {
     recipient: 'u32',
@@ -2141,13 +2145,13 @@
     lastIndex: 'u16'
   },
   /**
-   * Lookup276: cumulus_pallet_xcmp_queue::OutboundState
+   * Lookup277: cumulus_pallet_xcmp_queue::OutboundState
    **/
   CumulusPalletXcmpQueueOutboundState: {
     _enum: ['Ok', 'Suspended']
   },
   /**
-   * Lookup278: cumulus_pallet_xcmp_queue::QueueConfigData
+   * Lookup279: cumulus_pallet_xcmp_queue::QueueConfigData
    **/
   CumulusPalletXcmpQueueQueueConfigData: {
     suspendThreshold: 'u32',
@@ -2158,29 +2162,29 @@
     xcmpMaxIndividualWeight: 'u64'
   },
   /**
-   * Lookup280: cumulus_pallet_xcmp_queue::pallet::Error<T>
+   * Lookup281: cumulus_pallet_xcmp_queue::pallet::Error<T>
    **/
   CumulusPalletXcmpQueueError: {
     _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']
   },
   /**
-   * Lookup281: pallet_xcm::pallet::Error<T>
+   * Lookup282: pallet_xcm::pallet::Error<T>
    **/
   PalletXcmError: {
     _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']
   },
   /**
-   * Lookup282: cumulus_pallet_xcm::pallet::Error<T>
+   * Lookup283: cumulus_pallet_xcm::pallet::Error<T>
    **/
   CumulusPalletXcmError: 'Null',
   /**
-   * Lookup283: cumulus_pallet_dmp_queue::ConfigData
+   * Lookup284: cumulus_pallet_dmp_queue::ConfigData
    **/
   CumulusPalletDmpQueueConfigData: {
     maxIndividual: 'u64'
   },
   /**
-   * Lookup284: cumulus_pallet_dmp_queue::PageIndexData
+   * Lookup285: cumulus_pallet_dmp_queue::PageIndexData
    **/
   CumulusPalletDmpQueuePageIndexData: {
     beginUsed: 'u32',
@@ -2188,19 +2192,19 @@
     overweightCount: 'u64'
   },
   /**
-   * Lookup287: cumulus_pallet_dmp_queue::pallet::Error<T>
+   * Lookup288: cumulus_pallet_dmp_queue::pallet::Error<T>
    **/
   CumulusPalletDmpQueueError: {
     _enum: ['Unknown', 'OverLimit']
   },
   /**
-   * Lookup291: pallet_unique::Error<T>
+   * Lookup292: pallet_unique::Error<T>
    **/
   PalletUniqueError: {
     _enum: ['CollectionDecimalPointLimitExceeded', 'ConfirmUnsetSponsorFail', 'EmptyArgument']
   },
   /**
-   * Lookup292: up_data_structs::Collection<sp_core::crypto::AccountId32>
+   * Lookup293: up_data_structs::Collection<sp_core::crypto::AccountId32>
    **/
   UpDataStructsCollection: {
     owner: 'AccountId32',
@@ -2219,7 +2223,7 @@
     metaUpdatePermission: 'UpDataStructsMetaUpdatePermission'
   },
   /**
-   * Lookup293: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
+   * Lookup294: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
    **/
   UpDataStructsSponsorshipState: {
     _enum: {
@@ -2229,7 +2233,7 @@
     }
   },
   /**
-   * Lookup296: up_data_structs::CollectionStats
+   * Lookup297: up_data_structs::CollectionStats
    **/
   UpDataStructsCollectionStats: {
     created: 'u32',
@@ -2237,52 +2241,52 @@
     alive: 'u32'
   },
   /**
-   * Lookup297: pallet_common::pallet::Error<T>
+   * Lookup298: pallet_common::pallet::Error<T>
    **/
   PalletCommonError: {
-    _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'TokenVariableDataLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation']
+    _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'TokenVariableDataLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds']
   },
   /**
-   * Lookup299: pallet_fungible::pallet::Error<T>
+   * Lookup300: pallet_fungible::pallet::Error<T>
    **/
   PalletFungibleError: {
     _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData']
   },
   /**
-   * Lookup300: pallet_refungible::ItemData
+   * Lookup301: pallet_refungible::ItemData
    **/
   PalletRefungibleItemData: {
     constData: 'Bytes',
     variableData: 'Bytes'
   },
   /**
-   * Lookup304: pallet_refungible::pallet::Error<T>
+   * Lookup305: pallet_refungible::pallet::Error<T>
    **/
   PalletRefungibleError: {
     _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces']
   },
   /**
-   * Lookup305: pallet_nonfungible::ItemData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup306: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   PalletNonfungibleItemData: {
     constData: 'Bytes',
     variableData: 'Bytes',
-    owner: 'PalletCommonAccountBasicCrossAccountIdRepr'
+    owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
   },
   /**
-   * Lookup306: pallet_nonfungible::pallet::Error<T>
+   * Lookup307: pallet_nonfungible::pallet::Error<T>
    **/
   PalletNonfungibleError: {
     _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount']
   },
   /**
-   * Lookup308: pallet_evm::pallet::Error<T>
+   * Lookup309: pallet_evm::pallet::Error<T>
    **/
   PalletEvmError: {
     _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce']
   },
   /**
-   * Lookup311: fp_rpc::TransactionStatus
+   * Lookup312: fp_rpc::TransactionStatus
    **/
   FpRpcTransactionStatus: {
     transactionHash: 'H256',
@@ -2294,11 +2298,11 @@
     logsBloom: 'EthbloomBloom'
   },
   /**
-   * Lookup314: ethbloom::Bloom
+   * Lookup315: ethbloom::Bloom
    **/
   EthbloomBloom: '[u8;256]',
   /**
-   * Lookup316: ethereum::receipt::ReceiptV3
+   * Lookup317: ethereum::receipt::ReceiptV3
    **/
   EthereumReceiptReceiptV3: {
     _enum: {
@@ -2308,7 +2312,7 @@
     }
   },
   /**
-   * Lookup317: ethereum::receipt::EIP658ReceiptData
+   * Lookup318: ethereum::receipt::EIP658ReceiptData
    **/
   EthereumReceiptEip658ReceiptData: {
     statusCode: 'u8',
@@ -2317,7 +2321,7 @@
     logs: 'Vec<EthereumLog>'
   },
   /**
-   * Lookup318: ethereum::block::Block<ethereum::transaction::TransactionV2>
+   * Lookup319: ethereum::block::Block<ethereum::transaction::TransactionV2>
    **/
   EthereumBlock: {
     header: 'EthereumHeader',
@@ -2325,7 +2329,7 @@
     ommers: 'Vec<EthereumHeader>'
   },
   /**
-   * Lookup319: ethereum::header::Header
+   * Lookup320: ethereum::header::Header
    **/
   EthereumHeader: {
     parentHash: 'H256',
@@ -2345,41 +2349,41 @@
     nonce: 'EthereumTypesHashH64'
   },
   /**
-   * Lookup320: ethereum_types::hash::H64
+   * Lookup321: ethereum_types::hash::H64
    **/
   EthereumTypesHashH64: '[u8;8]',
   /**
-   * Lookup325: pallet_ethereum::pallet::Error<T>
+   * Lookup326: pallet_ethereum::pallet::Error<T>
    **/
   PalletEthereumError: {
     _enum: ['InvalidSignature', 'PreLogExists']
   },
   /**
-   * Lookup326: pallet_evm_coder_substrate::pallet::Error<T>
+   * Lookup327: pallet_evm_coder_substrate::pallet::Error<T>
    **/
   PalletEvmCoderSubstrateError: {
     _enum: ['OutOfGas', 'OutOfFund']
   },
   /**
-   * Lookup327: pallet_evm_contract_helpers::SponsoringModeT
+   * Lookup328: pallet_evm_contract_helpers::SponsoringModeT
    **/
   PalletEvmContractHelpersSponsoringModeT: {
     _enum: ['Disabled', 'Allowlisted', 'Generous']
   },
   /**
-   * Lookup329: pallet_evm_contract_helpers::pallet::Error<T>
+   * Lookup330: pallet_evm_contract_helpers::pallet::Error<T>
    **/
   PalletEvmContractHelpersError: {
     _enum: ['NoPermission']
   },
   /**
-   * Lookup330: pallet_evm_migration::pallet::Error<T>
+   * Lookup331: pallet_evm_migration::pallet::Error<T>
    **/
   PalletEvmMigrationError: {
     _enum: ['AccountNotEmpty', 'AccountIsNotMigrating']
   },
   /**
-   * Lookup332: sp_runtime::MultiSignature
+   * Lookup333: sp_runtime::MultiSignature
    **/
   SpRuntimeMultiSignature: {
     _enum: {
@@ -2389,39 +2393,39 @@
     }
   },
   /**
-   * Lookup333: sp_core::ed25519::Signature
+   * Lookup334: sp_core::ed25519::Signature
    **/
   SpCoreEd25519Signature: '[u8;64]',
   /**
-   * Lookup335: sp_core::sr25519::Signature
+   * Lookup336: sp_core::sr25519::Signature
    **/
   SpCoreSr25519Signature: '[u8;64]',
   /**
-   * Lookup336: sp_core::ecdsa::Signature
+   * Lookup337: sp_core::ecdsa::Signature
    **/
   SpCoreEcdsaSignature: '[u8;65]',
   /**
-   * Lookup339: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
+   * Lookup340: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
    **/
   FrameSystemExtensionsCheckSpecVersion: 'Null',
   /**
-   * Lookup340: frame_system::extensions::check_genesis::CheckGenesis<T>
+   * Lookup341: frame_system::extensions::check_genesis::CheckGenesis<T>
    **/
   FrameSystemExtensionsCheckGenesis: 'Null',
   /**
-   * Lookup343: frame_system::extensions::check_nonce::CheckNonce<T>
+   * Lookup344: frame_system::extensions::check_nonce::CheckNonce<T>
    **/
   FrameSystemExtensionsCheckNonce: 'Compact<u32>',
   /**
-   * Lookup344: frame_system::extensions::check_weight::CheckWeight<T>
+   * Lookup345: frame_system::extensions::check_weight::CheckWeight<T>
    **/
   FrameSystemExtensionsCheckWeight: 'Null',
   /**
-   * Lookup345: pallet_template_transaction_payment::ChargeTransactionPayment<unique_runtime::Runtime>
+   * Lookup346: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
    **/
   PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',
   /**
-   * Lookup346: unique_runtime::Runtime
+   * Lookup347: opal_runtime::Runtime
    **/
-  UniqueRuntimeRuntime: 'Null'
+  OpalRuntimeRuntime: 'Null'
 };
modifiedtests/src/interfaces/types-lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -2,7 +2,7 @@
 /* eslint-disable */
 
 declare module '@polkadot/types/lookup' {
-  import type { BTreeMap, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
+  import type { BTreeMap, BTreeSet, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
   import type { ITuple } from '@polkadot/types-codec/types';
   import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';
   import type { Event } from '@polkadot/types/interfaces/system';
@@ -21,7 +21,15 @@
     readonly type: 'Present';
   }
 
-  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (10) */
+  /** @name SpTrieStorageProof (10) */
+  export interface SpTrieStorageProof extends Struct {
+    readonly trieNodes: BTreeSet;
+  }
+
+  /** @name BTreeSet (11) */
+  export interface BTreeSet extends Vec<Bytes> {}
+
+  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (13) */
   export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {
     readonly dmqMqcHead: H256;
     readonly relayDispatchQueueSize: ITuple<[u32, u32]>;
@@ -29,7 +37,7 @@
     readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;
   }
 
-  /** @name PolkadotPrimitivesV1AbridgedHrmpChannel (15) */
+  /** @name PolkadotPrimitivesV1AbridgedHrmpChannel (18) */
   export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {
     readonly maxCapacity: u32;
     readonly maxTotalSize: u32;
@@ -39,7 +47,7 @@
     readonly mqcHead: Option<H256>;
   }
 
-  /** @name PolkadotPrimitivesV1AbridgedHostConfiguration (17) */
+  /** @name PolkadotPrimitivesV1AbridgedHostConfiguration (20) */
   export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {
     readonly maxCodeSize: u32;
     readonly maxHeadDataSize: u32;
@@ -52,13 +60,13 @@
     readonly validationUpgradeDelay: u32;
   }
 
-  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (23) */
+  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (26) */
   export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {
     readonly recipient: u32;
     readonly data: Bytes;
   }
 
-  /** @name CumulusPalletParachainSystemCall (26) */
+  /** @name CumulusPalletParachainSystemCall (28) */
   export interface CumulusPalletParachainSystemCall extends Enum {
     readonly isSetValidationData: boolean;
     readonly asSetValidationData: {
@@ -79,7 +87,7 @@
     readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';
   }
 
-  /** @name CumulusPrimitivesParachainInherentParachainInherentData (27) */
+  /** @name CumulusPrimitivesParachainInherentParachainInherentData (29) */
   export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {
     readonly validationData: PolkadotPrimitivesV1PersistedValidationData;
     readonly relayChainState: SpTrieStorageProof;
@@ -87,24 +95,19 @@
     readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;
   }
 
-  /** @name SpTrieStorageProof (28) */
-  export interface SpTrieStorageProof extends Struct {
-    readonly trieNodes: Vec<Bytes>;
-  }
-
-  /** @name PolkadotCorePrimitivesInboundDownwardMessage (30) */
+  /** @name PolkadotCorePrimitivesInboundDownwardMessage (31) */
   export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {
     readonly sentAt: u32;
     readonly msg: Bytes;
   }
 
-  /** @name PolkadotCorePrimitivesInboundHrmpMessage (33) */
+  /** @name PolkadotCorePrimitivesInboundHrmpMessage (34) */
   export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {
     readonly sentAt: u32;
     readonly data: Bytes;
   }
 
-  /** @name CumulusPalletParachainSystemEvent (36) */
+  /** @name CumulusPalletParachainSystemEvent (37) */
   export interface CumulusPalletParachainSystemEvent extends Enum {
     readonly isValidationFunctionStored: boolean;
     readonly isValidationFunctionApplied: boolean;
@@ -119,7 +122,7 @@
     readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';
   }
 
-  /** @name CumulusPalletParachainSystemError (37) */
+  /** @name CumulusPalletParachainSystemError (38) */
   export interface CumulusPalletParachainSystemError extends Enum {
     readonly isOverlappingUpgrades: boolean;
     readonly isProhibitedByPolkadot: boolean;
@@ -132,7 +135,7 @@
     readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';
   }
 
-  /** @name PalletBalancesAccountData (40) */
+  /** @name PalletBalancesAccountData (41) */
   export interface PalletBalancesAccountData extends Struct {
     readonly free: u128;
     readonly reserved: u128;
@@ -140,14 +143,14 @@
     readonly feeFrozen: u128;
   }
 
-  /** @name PalletBalancesBalanceLock (42) */
+  /** @name PalletBalancesBalanceLock (43) */
   export interface PalletBalancesBalanceLock extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
     readonly reasons: PalletBalancesReasons;
   }
 
-  /** @name PalletBalancesReasons (44) */
+  /** @name PalletBalancesReasons (45) */
   export interface PalletBalancesReasons extends Enum {
     readonly isFee: boolean;
     readonly isMisc: boolean;
@@ -155,20 +158,20 @@
     readonly type: 'Fee' | 'Misc' | 'All';
   }
 
-  /** @name PalletBalancesReserveData (47) */
+  /** @name PalletBalancesReserveData (48) */
   export interface PalletBalancesReserveData extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
   }
 
-  /** @name PalletBalancesReleases (49) */
+  /** @name PalletBalancesReleases (50) */
   export interface PalletBalancesReleases extends Enum {
     readonly isV100: boolean;
     readonly isV200: boolean;
     readonly type: 'V100' | 'V200';
   }
 
-  /** @name PalletBalancesCall (50) */
+  /** @name PalletBalancesCall (51) */
   export interface PalletBalancesCall extends Enum {
     readonly isTransfer: boolean;
     readonly asTransfer: {
@@ -205,7 +208,7 @@
     readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';
   }
 
-  /** @name PalletBalancesEvent (56) */
+  /** @name PalletBalancesEvent (57) */
   export interface PalletBalancesEvent extends Enum {
     readonly isEndowed: boolean;
     readonly asEndowed: {
@@ -264,14 +267,14 @@
     readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';
   }
 
-  /** @name FrameSupportTokensMiscBalanceStatus (57) */
+  /** @name FrameSupportTokensMiscBalanceStatus (58) */
   export interface FrameSupportTokensMiscBalanceStatus extends Enum {
     readonly isFree: boolean;
     readonly isReserved: boolean;
     readonly type: 'Free' | 'Reserved';
   }
 
-  /** @name PalletBalancesError (58) */
+  /** @name PalletBalancesError (59) */
   export interface PalletBalancesError extends Enum {
     readonly isVestingBalance: boolean;
     readonly isLiquidityRestrictions: boolean;
@@ -284,7 +287,7 @@
     readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';
   }
 
-  /** @name PalletTimestampCall (61) */
+  /** @name PalletTimestampCall (62) */
   export interface PalletTimestampCall extends Enum {
     readonly isSet: boolean;
     readonly asSet: {
@@ -293,14 +296,14 @@
     readonly type: 'Set';
   }
 
-  /** @name PalletTransactionPaymentReleases (64) */
+  /** @name PalletTransactionPaymentReleases (65) */
   export interface PalletTransactionPaymentReleases extends Enum {
     readonly isV1Ancient: boolean;
     readonly isV2: boolean;
     readonly type: 'V1Ancient' | 'V2';
   }
 
-  /** @name FrameSupportWeightsWeightToFeeCoefficient (66) */
+  /** @name FrameSupportWeightsWeightToFeeCoefficient (67) */
   export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {
     readonly coeffInteger: u128;
     readonly coeffFrac: Perbill;
@@ -308,7 +311,7 @@
     readonly degree: u8;
   }
 
-  /** @name PalletTreasuryProposal (68) */
+  /** @name PalletTreasuryProposal (69) */
   export interface PalletTreasuryProposal extends Struct {
     readonly proposer: AccountId32;
     readonly value: u128;
@@ -316,7 +319,7 @@
     readonly bond: u128;
   }
 
-  /** @name PalletTreasuryCall (71) */
+  /** @name PalletTreasuryCall (72) */
   export interface PalletTreasuryCall extends Enum {
     readonly isProposeSpend: boolean;
     readonly asProposeSpend: {
@@ -334,7 +337,7 @@
     readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';
   }
 
-  /** @name PalletTreasuryEvent (73) */
+  /** @name PalletTreasuryEvent (74) */
   export interface PalletTreasuryEvent extends Enum {
     readonly isProposed: boolean;
     readonly asProposed: {
@@ -370,10 +373,10 @@
     readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';
   }
 
-  /** @name FrameSupportPalletId (76) */
+  /** @name FrameSupportPalletId (77) */
   export interface FrameSupportPalletId extends U8aFixed {}
 
-  /** @name PalletTreasuryError (77) */
+  /** @name PalletTreasuryError (78) */
   export interface PalletTreasuryError extends Enum {
     readonly isInsufficientProposersBalance: boolean;
     readonly isInvalidIndex: boolean;
@@ -381,7 +384,7 @@
     readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';
   }
 
-  /** @name PalletSudoCall (78) */
+  /** @name PalletSudoCall (79) */
   export interface PalletSudoCall extends Enum {
     readonly isSudo: boolean;
     readonly asSudo: {
@@ -404,7 +407,7 @@
     readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';
   }
 
-  /** @name FrameSystemCall (80) */
+  /** @name FrameSystemCall (81) */
   export interface FrameSystemCall extends Enum {
     readonly isFillBlock: boolean;
     readonly asFillBlock: {
@@ -446,7 +449,7 @@
     readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';
   }
 
-  /** @name OrmlVestingModuleCall (83) */
+  /** @name OrmlVestingModuleCall (84) */
   export interface OrmlVestingModuleCall extends Enum {
     readonly isClaim: boolean;
     readonly isVestedTransfer: boolean;
@@ -466,7 +469,7 @@
     readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';
   }
 
-  /** @name OrmlVestingVestingSchedule (84) */
+  /** @name OrmlVestingVestingSchedule (85) */
   export interface OrmlVestingVestingSchedule extends Struct {
     readonly start: u32;
     readonly period: u32;
@@ -474,7 +477,7 @@
     readonly perPeriod: Compact<u128>;
   }
 
-  /** @name CumulusPalletXcmpQueueCall (86) */
+  /** @name CumulusPalletXcmpQueueCall (87) */
   export interface CumulusPalletXcmpQueueCall extends Enum {
     readonly isServiceOverweight: boolean;
     readonly asServiceOverweight: {
@@ -510,7 +513,7 @@
     readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';
   }
 
-  /** @name PalletXcmCall (87) */
+  /** @name PalletXcmCall (88) */
   export interface PalletXcmCall extends Enum {
     readonly isSend: boolean;
     readonly asSend: {
@@ -572,7 +575,7 @@
     readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';
   }
 
-  /** @name XcmVersionedMultiLocation (88) */
+  /** @name XcmVersionedMultiLocation (89) */
   export interface XcmVersionedMultiLocation extends Enum {
     readonly isV0: boolean;
     readonly asV0: XcmV0MultiLocation;
@@ -581,7 +584,7 @@
     readonly type: 'V0' | 'V1';
   }
 
-  /** @name XcmV0MultiLocation (89) */
+  /** @name XcmV0MultiLocation (90) */
   export interface XcmV0MultiLocation extends Enum {
     readonly isNull: boolean;
     readonly isX1: boolean;
@@ -603,7 +606,7 @@
     readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';
   }
 
-  /** @name XcmV0Junction (90) */
+  /** @name XcmV0Junction (91) */
   export interface XcmV0Junction extends Enum {
     readonly isParent: boolean;
     readonly isParachain: boolean;
@@ -638,7 +641,7 @@
     readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';
   }
 
-  /** @name XcmV0JunctionNetworkId (91) */
+  /** @name XcmV0JunctionNetworkId (92) */
   export interface XcmV0JunctionNetworkId extends Enum {
     readonly isAny: boolean;
     readonly isNamed: boolean;
@@ -648,7 +651,7 @@
     readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';
   }
 
-  /** @name XcmV0JunctionBodyId (92) */
+  /** @name XcmV0JunctionBodyId (93) */
   export interface XcmV0JunctionBodyId extends Enum {
     readonly isUnit: boolean;
     readonly isNamed: boolean;
@@ -662,7 +665,7 @@
     readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';
   }
 
-  /** @name XcmV0JunctionBodyPart (93) */
+  /** @name XcmV0JunctionBodyPart (94) */
   export interface XcmV0JunctionBodyPart extends Enum {
     readonly isVoice: boolean;
     readonly isMembers: boolean;
@@ -687,13 +690,13 @@
     readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';
   }
 
-  /** @name XcmV1MultiLocation (94) */
+  /** @name XcmV1MultiLocation (95) */
   export interface XcmV1MultiLocation extends Struct {
     readonly parents: u8;
     readonly interior: XcmV1MultilocationJunctions;
   }
 
-  /** @name XcmV1MultilocationJunctions (95) */
+  /** @name XcmV1MultilocationJunctions (96) */
   export interface XcmV1MultilocationJunctions extends Enum {
     readonly isHere: boolean;
     readonly isX1: boolean;
@@ -715,7 +718,7 @@
     readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';
   }
 
-  /** @name XcmV1Junction (96) */
+  /** @name XcmV1Junction (97) */
   export interface XcmV1Junction extends Enum {
     readonly isParachain: boolean;
     readonly asParachain: Compact<u32>;
@@ -749,7 +752,7 @@
     readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';
   }
 
-  /** @name XcmVersionedXcm (97) */
+  /** @name XcmVersionedXcm (98) */
   export interface XcmVersionedXcm extends Enum {
     readonly isV0: boolean;
     readonly asV0: XcmV0Xcm;
@@ -760,7 +763,7 @@
     readonly type: 'V0' | 'V1' | 'V2';
   }
 
-  /** @name XcmV0Xcm (98) */
+  /** @name XcmV0Xcm (99) */
   export interface XcmV0Xcm extends Enum {
     readonly isWithdrawAsset: boolean;
     readonly asWithdrawAsset: {
@@ -823,7 +826,7 @@
     readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';
   }
 
-  /** @name XcmV0MultiAsset (100) */
+  /** @name XcmV0MultiAsset (101) */
   export interface XcmV0MultiAsset extends Enum {
     readonly isNone: boolean;
     readonly isAll: boolean;
@@ -868,7 +871,7 @@
     readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';
   }
 
-  /** @name XcmV1MultiassetAssetInstance (101) */
+  /** @name XcmV1MultiassetAssetInstance (102) */
   export interface XcmV1MultiassetAssetInstance extends Enum {
     readonly isUndefined: boolean;
     readonly isIndex: boolean;
@@ -886,7 +889,7 @@
     readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';
   }
 
-  /** @name XcmV0Order (105) */
+  /** @name XcmV0Order (106) */
   export interface XcmV0Order extends Enum {
     readonly isNull: boolean;
     readonly isDepositAsset: boolean;
@@ -934,14 +937,14 @@
     readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';
   }
 
-  /** @name XcmV0Response (107) */
+  /** @name XcmV0Response (108) */
   export interface XcmV0Response extends Enum {
     readonly isAssets: boolean;
     readonly asAssets: Vec<XcmV0MultiAsset>;
     readonly type: 'Assets';
   }
 
-  /** @name XcmV0OriginKind (108) */
+  /** @name XcmV0OriginKind (109) */
   export interface XcmV0OriginKind extends Enum {
     readonly isNative: boolean;
     readonly isSovereignAccount: boolean;
@@ -950,12 +953,12 @@
     readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';
   }
 
-  /** @name XcmDoubleEncoded (109) */
+  /** @name XcmDoubleEncoded (110) */
   export interface XcmDoubleEncoded extends Struct {
     readonly encoded: Bytes;
   }
 
-  /** @name XcmV1Xcm (110) */
+  /** @name XcmV1Xcm (111) */
   export interface XcmV1Xcm extends Enum {
     readonly isWithdrawAsset: boolean;
     readonly asWithdrawAsset: {
@@ -1024,16 +1027,16 @@
     readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';
   }
 
-  /** @name XcmV1MultiassetMultiAssets (111) */
+  /** @name XcmV1MultiassetMultiAssets (112) */
   export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}
 
-  /** @name XcmV1MultiAsset (113) */
+  /** @name XcmV1MultiAsset (114) */
   export interface XcmV1MultiAsset extends Struct {
     readonly id: XcmV1MultiassetAssetId;
     readonly fun: XcmV1MultiassetFungibility;
   }
 
-  /** @name XcmV1MultiassetAssetId (114) */
+  /** @name XcmV1MultiassetAssetId (115) */
   export interface XcmV1MultiassetAssetId extends Enum {
     readonly isConcrete: boolean;
     readonly asConcrete: XcmV1MultiLocation;
@@ -1042,7 +1045,7 @@
     readonly type: 'Concrete' | 'Abstract';
   }
 
-  /** @name XcmV1MultiassetFungibility (115) */
+  /** @name XcmV1MultiassetFungibility (116) */
   export interface XcmV1MultiassetFungibility extends Enum {
     readonly isFungible: boolean;
     readonly asFungible: Compact<u128>;
@@ -1051,7 +1054,7 @@
     readonly type: 'Fungible' | 'NonFungible';
   }
 
-  /** @name XcmV1Order (117) */
+  /** @name XcmV1Order (118) */
   export interface XcmV1Order extends Enum {
     readonly isNoop: boolean;
     readonly isDepositAsset: boolean;
@@ -1101,7 +1104,7 @@
     readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';
   }
 
-  /** @name XcmV1MultiassetMultiAssetFilter (118) */
+  /** @name XcmV1MultiassetMultiAssetFilter (119) */
   export interface XcmV1MultiassetMultiAssetFilter extends Enum {
     readonly isDefinite: boolean;
     readonly asDefinite: XcmV1MultiassetMultiAssets;
@@ -1110,7 +1113,7 @@
     readonly type: 'Definite' | 'Wild';
   }
 
-  /** @name XcmV1MultiassetWildMultiAsset (119) */
+  /** @name XcmV1MultiassetWildMultiAsset (120) */
   export interface XcmV1MultiassetWildMultiAsset extends Enum {
     readonly isAll: boolean;
     readonly isAllOf: boolean;
@@ -1121,14 +1124,14 @@
     readonly type: 'All' | 'AllOf';
   }
 
-  /** @name XcmV1MultiassetWildFungibility (120) */
+  /** @name XcmV1MultiassetWildFungibility (121) */
   export interface XcmV1MultiassetWildFungibility extends Enum {
     readonly isFungible: boolean;
     readonly isNonFungible: boolean;
     readonly type: 'Fungible' | 'NonFungible';
   }
 
-  /** @name XcmV1Response (122) */
+  /** @name XcmV1Response (123) */
   export interface XcmV1Response extends Enum {
     readonly isAssets: boolean;
     readonly asAssets: XcmV1MultiassetMultiAssets;
@@ -1137,10 +1140,10 @@
     readonly type: 'Assets' | 'Version';
   }
 
-  /** @name XcmV2Xcm (123) */
+  /** @name XcmV2Xcm (124) */
   export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}
 
-  /** @name XcmV2Instruction (125) */
+  /** @name XcmV2Instruction (126) */
   export interface XcmV2Instruction extends Enum {
     readonly isWithdrawAsset: boolean;
     readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;
@@ -1260,7 +1263,7 @@
     readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';
   }
 
-  /** @name XcmV2Response (126) */
+  /** @name XcmV2Response (127) */
   export interface XcmV2Response extends Enum {
     readonly isNull: boolean;
     readonly isAssets: boolean;
@@ -1272,7 +1275,7 @@
     readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';
   }
 
-  /** @name XcmV2TraitsError (129) */
+  /** @name XcmV2TraitsError (130) */
   export interface XcmV2TraitsError extends Enum {
     readonly isOverflow: boolean;
     readonly isUnimplemented: boolean;
@@ -1305,7 +1308,7 @@
     readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';
   }
 
-  /** @name XcmV2WeightLimit (130) */
+  /** @name XcmV2WeightLimit (131) */
   export interface XcmV2WeightLimit extends Enum {
     readonly isUnlimited: boolean;
     readonly isLimited: boolean;
@@ -1313,7 +1316,7 @@
     readonly type: 'Unlimited' | 'Limited';
   }
 
-  /** @name XcmVersionedMultiAssets (131) */
+  /** @name XcmVersionedMultiAssets (132) */
   export interface XcmVersionedMultiAssets extends Enum {
     readonly isV0: boolean;
     readonly asV0: Vec<XcmV0MultiAsset>;
@@ -1322,10 +1325,10 @@
     readonly type: 'V0' | 'V1';
   }
 
-  /** @name CumulusPalletXcmCall (146) */
+  /** @name CumulusPalletXcmCall (147) */
   export type CumulusPalletXcmCall = Null;
 
-  /** @name CumulusPalletDmpQueueCall (147) */
+  /** @name CumulusPalletDmpQueueCall (148) */
   export interface CumulusPalletDmpQueueCall extends Enum {
     readonly isServiceOverweight: boolean;
     readonly asServiceOverweight: {
@@ -1335,7 +1338,7 @@
     readonly type: 'ServiceOverweight';
   }
 
-  /** @name PalletInflationCall (148) */
+  /** @name PalletInflationCall (149) */
   export interface PalletInflationCall extends Enum {
     readonly isStartInflation: boolean;
     readonly asStartInflation: {
@@ -1344,7 +1347,7 @@
     readonly type: 'StartInflation';
   }
 
-  /** @name PalletUniqueCall (149) */
+  /** @name PalletUniqueCall (150) */
   export interface PalletUniqueCall extends Enum {
     readonly isCreateCollection: boolean;
     readonly asCreateCollection: {
@@ -1364,12 +1367,12 @@
     readonly isAddToAllowList: boolean;
     readonly asAddToAllowList: {
       readonly collectionId: u32;
-      readonly address: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly address: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isRemoveFromAllowList: boolean;
     readonly asRemoveFromAllowList: {
       readonly collectionId: u32;
-      readonly address: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly address: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isSetPublicAccessMode: boolean;
     readonly asSetPublicAccessMode: {
@@ -1389,12 +1392,12 @@
     readonly isAddCollectionAdmin: boolean;
     readonly asAddCollectionAdmin: {
       readonly collectionId: u32;
-      readonly newAdminId: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly newAdminId: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isRemoveCollectionAdmin: boolean;
     readonly asRemoveCollectionAdmin: {
       readonly collectionId: u32;
-      readonly accountId: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly accountId: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isSetCollectionSponsor: boolean;
     readonly asSetCollectionSponsor: {
@@ -1412,13 +1415,13 @@
     readonly isCreateItem: boolean;
     readonly asCreateItem: {
       readonly collectionId: u32;
-      readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly data: UpDataStructsCreateItemData;
     } & Struct;
     readonly isCreateMultipleItems: boolean;
     readonly asCreateMultipleItems: {
       readonly collectionId: u32;
-      readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly itemsData: Vec<UpDataStructsCreateItemData>;
     } & Struct;
     readonly isCreateMultipleItemsEx: boolean;
@@ -1440,28 +1443,28 @@
     readonly isBurnFrom: boolean;
     readonly asBurnFrom: {
       readonly collectionId: u32;
-      readonly from: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly from: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly itemId: u32;
       readonly value: u128;
     } & Struct;
     readonly isTransfer: boolean;
     readonly asTransfer: {
-      readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly collectionId: u32;
       readonly itemId: u32;
       readonly value: u128;
     } & Struct;
     readonly isApprove: boolean;
     readonly asApprove: {
-      readonly spender: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly spender: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly collectionId: u32;
       readonly itemId: u32;
       readonly amount: u128;
     } & Struct;
     readonly isTransferFrom: boolean;
     readonly asTransferFrom: {
-      readonly from: PalletCommonAccountBasicCrossAccountIdRepr;
-      readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly from: PalletEvmAccountBasicCrossAccountIdRepr;
+      readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly collectionId: u32;
       readonly itemId: u32;
       readonly value: u128;
@@ -1505,7 +1508,7 @@
     readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'SetPublicAccessMode' | 'SetMintPermission' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetVariableMetaData' | 'SetMetaUpdatePermissionFlag' | 'SetSchemaVersion' | 'SetOffchainSchema' | 'SetConstOnChainSchema' | 'SetVariableOnChainSchema' | 'SetCollectionLimits';
   }
 
-  /** @name UpDataStructsCollectionMode (155) */
+  /** @name UpDataStructsCollectionMode (156) */
   export interface UpDataStructsCollectionMode extends Enum {
     readonly isNft: boolean;
     readonly isFungible: boolean;
@@ -1514,7 +1517,7 @@
     readonly type: 'Nft' | 'Fungible' | 'ReFungible';
   }
 
-  /** @name UpDataStructsCreateCollectionData (156) */
+  /** @name UpDataStructsCreateCollectionData (157) */
   export interface UpDataStructsCreateCollectionData extends Struct {
     readonly mode: UpDataStructsCollectionMode;
     readonly access: Option<UpDataStructsAccessMode>;
@@ -1530,21 +1533,21 @@
     readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;
   }
 
-  /** @name UpDataStructsAccessMode (158) */
+  /** @name UpDataStructsAccessMode (159) */
   export interface UpDataStructsAccessMode extends Enum {
     readonly isNormal: boolean;
     readonly isAllowList: boolean;
     readonly type: 'Normal' | 'AllowList';
   }
 
-  /** @name UpDataStructsSchemaVersion (161) */
+  /** @name UpDataStructsSchemaVersion (162) */
   export interface UpDataStructsSchemaVersion extends Enum {
     readonly isImageURL: boolean;
     readonly isUnique: boolean;
     readonly type: 'ImageURL' | 'Unique';
   }
 
-  /** @name UpDataStructsCollectionLimits (164) */
+  /** @name UpDataStructsCollectionLimits (165) */
   export interface UpDataStructsCollectionLimits extends Struct {
     readonly accountTokenOwnershipLimit: Option<u32>;
     readonly sponsoredDataSize: Option<u32>;
@@ -1557,7 +1560,7 @@
     readonly transfersEnabled: Option<bool>;
   }
 
-  /** @name UpDataStructsSponsoringRateLimit (166) */
+  /** @name UpDataStructsSponsoringRateLimit (167) */
   export interface UpDataStructsSponsoringRateLimit extends Enum {
     readonly isSponsoringDisabled: boolean;
     readonly isBlocks: boolean;
@@ -1565,7 +1568,7 @@
     readonly type: 'SponsoringDisabled' | 'Blocks';
   }
 
-  /** @name UpDataStructsMetaUpdatePermission (170) */
+  /** @name UpDataStructsMetaUpdatePermission (171) */
   export interface UpDataStructsMetaUpdatePermission extends Enum {
     readonly isItemOwner: boolean;
     readonly isAdmin: boolean;
@@ -1573,8 +1576,8 @@
     readonly type: 'ItemOwner' | 'Admin' | 'None';
   }
 
-  /** @name PalletCommonAccountBasicCrossAccountIdRepr (172) */
-  export interface PalletCommonAccountBasicCrossAccountIdRepr extends Enum {
+  /** @name PalletEvmAccountBasicCrossAccountIdRepr (173) */
+  export interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum {
     readonly isSubstrate: boolean;
     readonly asSubstrate: AccountId32;
     readonly isEthereum: boolean;
@@ -1582,7 +1585,7 @@
     readonly type: 'Substrate' | 'Ethereum';
   }
 
-  /** @name UpDataStructsCreateItemData (174) */
+  /** @name UpDataStructsCreateItemData (175) */
   export interface UpDataStructsCreateItemData extends Enum {
     readonly isNft: boolean;
     readonly asNft: UpDataStructsCreateNftData;
@@ -1593,30 +1596,30 @@
     readonly type: 'Nft' | 'Fungible' | 'ReFungible';
   }
 
-  /** @name UpDataStructsCreateNftData (175) */
+  /** @name UpDataStructsCreateNftData (176) */
   export interface UpDataStructsCreateNftData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
   }
 
-  /** @name UpDataStructsCreateFungibleData (177) */
+  /** @name UpDataStructsCreateFungibleData (178) */
   export interface UpDataStructsCreateFungibleData extends Struct {
     readonly value: u128;
   }
 
-  /** @name UpDataStructsCreateReFungibleData (178) */
+  /** @name UpDataStructsCreateReFungibleData (179) */
   export interface UpDataStructsCreateReFungibleData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
     readonly pieces: u128;
   }
 
-  /** @name UpDataStructsCreateItemExData (180) */
+  /** @name UpDataStructsCreateItemExData (181) */
   export interface UpDataStructsCreateItemExData extends Enum {
     readonly isNft: boolean;
     readonly asNft: Vec<UpDataStructsCreateNftExData>;
     readonly isFungible: boolean;
-    readonly asFungible: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;
+    readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
     readonly isRefungibleMultipleItems: boolean;
     readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;
     readonly isRefungibleMultipleOwners: boolean;
@@ -1624,24 +1627,24 @@
     readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';
   }
 
-  /** @name UpDataStructsCreateNftExData (182) */
+  /** @name UpDataStructsCreateNftExData (183) */
   export interface UpDataStructsCreateNftExData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
-    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name UpDataStructsCreateRefungibleExData (189) */
+  /** @name UpDataStructsCreateRefungibleExData (190) */
   export interface UpDataStructsCreateRefungibleExData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
-    readonly users: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;
+    readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
   }
 
-  /** @name PalletTemplateTransactionPaymentCall (192) */
+  /** @name PalletTemplateTransactionPaymentCall (193) */
   export type PalletTemplateTransactionPaymentCall = Null;
 
-  /** @name PalletEvmCall (193) */
+  /** @name PalletEvmCall (194) */
   export interface PalletEvmCall extends Enum {
     readonly isWithdraw: boolean;
     readonly asWithdraw: {
@@ -1686,7 +1689,7 @@
     readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';
   }
 
-  /** @name PalletEthereumCall (199) */
+  /** @name PalletEthereumCall (200) */
   export interface PalletEthereumCall extends Enum {
     readonly isTransact: boolean;
     readonly asTransact: {
@@ -1695,7 +1698,7 @@
     readonly type: 'Transact';
   }
 
-  /** @name EthereumTransactionTransactionV2 (200) */
+  /** @name EthereumTransactionTransactionV2 (201) */
   export interface EthereumTransactionTransactionV2 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumTransactionLegacyTransaction;
@@ -1706,7 +1709,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumTransactionLegacyTransaction (201) */
+  /** @name EthereumTransactionLegacyTransaction (202) */
   export interface EthereumTransactionLegacyTransaction extends Struct {
     readonly nonce: U256;
     readonly gasPrice: U256;
@@ -1717,7 +1720,7 @@
     readonly signature: EthereumTransactionTransactionSignature;
   }
 
-  /** @name EthereumTransactionTransactionAction (202) */
+  /** @name EthereumTransactionTransactionAction (203) */
   export interface EthereumTransactionTransactionAction extends Enum {
     readonly isCall: boolean;
     readonly asCall: H160;
@@ -1725,14 +1728,14 @@
     readonly type: 'Call' | 'Create';
   }
 
-  /** @name EthereumTransactionTransactionSignature (203) */
+  /** @name EthereumTransactionTransactionSignature (204) */
   export interface EthereumTransactionTransactionSignature extends Struct {
     readonly v: u64;
     readonly r: H256;
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionEip2930Transaction (205) */
+  /** @name EthereumTransactionEip2930Transaction (206) */
   export interface EthereumTransactionEip2930Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -1747,13 +1750,13 @@
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionAccessListItem (207) */
+  /** @name EthereumTransactionAccessListItem (208) */
   export interface EthereumTransactionAccessListItem extends Struct {
     readonly address: H160;
-    readonly slots: Vec<H256>;
+    readonly storageKeys: Vec<H256>;
   }
 
-  /** @name EthereumTransactionEip1559Transaction (208) */
+  /** @name EthereumTransactionEip1559Transaction (209) */
   export interface EthereumTransactionEip1559Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -1769,7 +1772,7 @@
     readonly s: H256;
   }
 
-  /** @name PalletEvmMigrationCall (209) */
+  /** @name PalletEvmMigrationCall (210) */
   export interface PalletEvmMigrationCall extends Enum {
     readonly isBegin: boolean;
     readonly asBegin: {
@@ -1788,7 +1791,7 @@
     readonly type: 'Begin' | 'SetData' | 'Finish';
   }
 
-  /** @name PalletSudoEvent (212) */
+  /** @name PalletSudoEvent (213) */
   export interface PalletSudoEvent extends Enum {
     readonly isSudid: boolean;
     readonly asSudid: {
@@ -1805,7 +1808,7 @@
     readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';
   }
 
-  /** @name SpRuntimeDispatchError (214) */
+  /** @name SpRuntimeDispatchError (215) */
   export interface SpRuntimeDispatchError extends Enum {
     readonly isOther: boolean;
     readonly isCannotLookup: boolean;
@@ -1822,13 +1825,13 @@
     readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';
   }
 
-  /** @name SpRuntimeModuleError (215) */
+  /** @name SpRuntimeModuleError (216) */
   export interface SpRuntimeModuleError extends Struct {
     readonly index: u8;
     readonly error: u8;
   }
 
-  /** @name SpRuntimeTokenError (216) */
+  /** @name SpRuntimeTokenError (217) */
   export interface SpRuntimeTokenError extends Enum {
     readonly isNoFunds: boolean;
     readonly isWouldDie: boolean;
@@ -1840,7 +1843,7 @@
     readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';
   }
 
-  /** @name SpRuntimeArithmeticError (217) */
+  /** @name SpRuntimeArithmeticError (218) */
   export interface SpRuntimeArithmeticError extends Enum {
     readonly isUnderflow: boolean;
     readonly isOverflow: boolean;
@@ -1848,13 +1851,13 @@
     readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';
   }
 
-  /** @name PalletSudoError (218) */
+  /** @name PalletSudoError (219) */
   export interface PalletSudoError extends Enum {
     readonly isRequireSudo: boolean;
     readonly type: 'RequireSudo';
   }
 
-  /** @name FrameSystemAccountInfo (219) */
+  /** @name FrameSystemAccountInfo (220) */
   export interface FrameSystemAccountInfo extends Struct {
     readonly nonce: u32;
     readonly consumers: u32;
@@ -1863,19 +1866,19 @@
     readonly data: PalletBalancesAccountData;
   }
 
-  /** @name FrameSupportWeightsPerDispatchClassU64 (220) */
+  /** @name FrameSupportWeightsPerDispatchClassU64 (221) */
   export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {
     readonly normal: u64;
     readonly operational: u64;
     readonly mandatory: u64;
   }
 
-  /** @name SpRuntimeDigest (221) */
+  /** @name SpRuntimeDigest (222) */
   export interface SpRuntimeDigest extends Struct {
     readonly logs: Vec<SpRuntimeDigestDigestItem>;
   }
 
-  /** @name SpRuntimeDigestDigestItem (223) */
+  /** @name SpRuntimeDigestDigestItem (224) */
   export interface SpRuntimeDigestDigestItem extends Enum {
     readonly isOther: boolean;
     readonly asOther: Bytes;
@@ -1889,14 +1892,14 @@
     readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';
   }
 
-  /** @name FrameSystemEventRecord (225) */
+  /** @name FrameSystemEventRecord (226) */
   export interface FrameSystemEventRecord extends Struct {
     readonly phase: FrameSystemPhase;
     readonly event: Event;
     readonly topics: Vec<H256>;
   }
 
-  /** @name FrameSystemEvent (227) */
+  /** @name FrameSystemEvent (228) */
   export interface FrameSystemEvent extends Enum {
     readonly isExtrinsicSuccess: boolean;
     readonly asExtrinsicSuccess: {
@@ -1924,14 +1927,14 @@
     readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';
   }
 
-  /** @name FrameSupportWeightsDispatchInfo (228) */
+  /** @name FrameSupportWeightsDispatchInfo (229) */
   export interface FrameSupportWeightsDispatchInfo extends Struct {
     readonly weight: u64;
     readonly class: FrameSupportWeightsDispatchClass;
     readonly paysFee: FrameSupportWeightsPays;
   }
 
-  /** @name FrameSupportWeightsDispatchClass (229) */
+  /** @name FrameSupportWeightsDispatchClass (230) */
   export interface FrameSupportWeightsDispatchClass extends Enum {
     readonly isNormal: boolean;
     readonly isOperational: boolean;
@@ -1939,14 +1942,14 @@
     readonly type: 'Normal' | 'Operational' | 'Mandatory';
   }
 
-  /** @name FrameSupportWeightsPays (230) */
+  /** @name FrameSupportWeightsPays (231) */
   export interface FrameSupportWeightsPays extends Enum {
     readonly isYes: boolean;
     readonly isNo: boolean;
     readonly type: 'Yes' | 'No';
   }
 
-  /** @name OrmlVestingModuleEvent (231) */
+  /** @name OrmlVestingModuleEvent (232) */
   export interface OrmlVestingModuleEvent extends Enum {
     readonly isVestingScheduleAdded: boolean;
     readonly asVestingScheduleAdded: {
@@ -1966,7 +1969,7 @@
     readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';
   }
 
-  /** @name CumulusPalletXcmpQueueEvent (232) */
+  /** @name CumulusPalletXcmpQueueEvent (233) */
   export interface CumulusPalletXcmpQueueEvent extends Enum {
     readonly isSuccess: boolean;
     readonly asSuccess: Option<H256>;
@@ -1987,7 +1990,7 @@
     readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';
   }
 
-  /** @name PalletXcmEvent (233) */
+  /** @name PalletXcmEvent (234) */
   export interface PalletXcmEvent extends Enum {
     readonly isAttempted: boolean;
     readonly asAttempted: XcmV2TraitsOutcome;
@@ -2024,7 +2027,7 @@
     readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';
   }
 
-  /** @name XcmV2TraitsOutcome (234) */
+  /** @name XcmV2TraitsOutcome (235) */
   export interface XcmV2TraitsOutcome extends Enum {
     readonly isComplete: boolean;
     readonly asComplete: u64;
@@ -2035,7 +2038,7 @@
     readonly type: 'Complete' | 'Incomplete' | 'Error';
   }
 
-  /** @name CumulusPalletXcmEvent (236) */
+  /** @name CumulusPalletXcmEvent (237) */
   export interface CumulusPalletXcmEvent extends Enum {
     readonly isInvalidFormat: boolean;
     readonly asInvalidFormat: U8aFixed;
@@ -2046,7 +2049,7 @@
     readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';
   }
 
-  /** @name CumulusPalletDmpQueueEvent (237) */
+  /** @name CumulusPalletDmpQueueEvent (238) */
   export interface CumulusPalletDmpQueueEvent extends Enum {
     readonly isInvalidFormat: boolean;
     readonly asInvalidFormat: U8aFixed;
@@ -2063,12 +2066,12 @@
     readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';
   }
 
-  /** @name PalletUniqueRawEvent (238) */
+  /** @name PalletUniqueRawEvent (239) */
   export interface PalletUniqueRawEvent extends Enum {
     readonly isCollectionSponsorRemoved: boolean;
     readonly asCollectionSponsorRemoved: u32;
     readonly isCollectionAdminAdded: boolean;
-    readonly asCollectionAdminAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asCollectionAdminAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isCollectionOwnedChanged: boolean;
     readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;
     readonly isCollectionSponsorSet: boolean;
@@ -2078,11 +2081,11 @@
     readonly isSponsorshipConfirmed: boolean;
     readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;
     readonly isCollectionAdminRemoved: boolean;
-    readonly asCollectionAdminRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asCollectionAdminRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isAllowListAddressRemoved: boolean;
-    readonly asAllowListAddressRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asAllowListAddressRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isAllowListAddressAdded: boolean;
-    readonly asAllowListAddressAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asAllowListAddressAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isCollectionLimitSet: boolean;
     readonly asCollectionLimitSet: u32;
     readonly isMintPermissionSet: boolean;
@@ -2098,24 +2101,24 @@
     readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';
   }
 
-  /** @name PalletCommonEvent (239) */
+  /** @name PalletCommonEvent (240) */
   export interface PalletCommonEvent extends Enum {
     readonly isCollectionCreated: boolean;
     readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;
     readonly isCollectionDestroyed: boolean;
     readonly asCollectionDestroyed: u32;
     readonly isItemCreated: boolean;
-    readonly asItemCreated: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asItemCreated: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly isItemDestroyed: boolean;
-    readonly asItemDestroyed: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asItemDestroyed: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly isTransfer: boolean;
-    readonly asTransfer: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asTransfer: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly isApproved: boolean;
-    readonly asApproved: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asApproved: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';
   }
 
-  /** @name PalletEvmEvent (240) */
+  /** @name PalletEvmEvent (241) */
   export interface PalletEvmEvent extends Enum {
     readonly isLog: boolean;
     readonly asLog: EthereumLog;
@@ -2134,21 +2137,21 @@
     readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';
   }
 
-  /** @name EthereumLog (241) */
+  /** @name EthereumLog (242) */
   export interface EthereumLog extends Struct {
     readonly address: H160;
     readonly topics: Vec<H256>;
     readonly data: Bytes;
   }
 
-  /** @name PalletEthereumEvent (242) */
+  /** @name PalletEthereumEvent (243) */
   export interface PalletEthereumEvent extends Enum {
     readonly isExecuted: boolean;
     readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;
     readonly type: 'Executed';
   }
 
-  /** @name EvmCoreErrorExitReason (243) */
+  /** @name EvmCoreErrorExitReason (244) */
   export interface EvmCoreErrorExitReason extends Enum {
     readonly isSucceed: boolean;
     readonly asSucceed: EvmCoreErrorExitSucceed;
@@ -2161,7 +2164,7 @@
     readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';
   }
 
-  /** @name EvmCoreErrorExitSucceed (244) */
+  /** @name EvmCoreErrorExitSucceed (245) */
   export interface EvmCoreErrorExitSucceed extends Enum {
     readonly isStopped: boolean;
     readonly isReturned: boolean;
@@ -2169,7 +2172,7 @@
     readonly type: 'Stopped' | 'Returned' | 'Suicided';
   }
 
-  /** @name EvmCoreErrorExitError (245) */
+  /** @name EvmCoreErrorExitError (246) */
   export interface EvmCoreErrorExitError extends Enum {
     readonly isStackUnderflow: boolean;
     readonly isStackOverflow: boolean;
@@ -2190,13 +2193,13 @@
     readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';
   }
 
-  /** @name EvmCoreErrorExitRevert (248) */
+  /** @name EvmCoreErrorExitRevert (249) */
   export interface EvmCoreErrorExitRevert extends Enum {
     readonly isReverted: boolean;
     readonly type: 'Reverted';
   }
 
-  /** @name EvmCoreErrorExitFatal (249) */
+  /** @name EvmCoreErrorExitFatal (250) */
   export interface EvmCoreErrorExitFatal extends Enum {
     readonly isNotSupported: boolean;
     readonly isUnhandledInterrupt: boolean;
@@ -2207,7 +2210,7 @@
     readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';
   }
 
-  /** @name FrameSystemPhase (250) */
+  /** @name FrameSystemPhase (251) */
   export interface FrameSystemPhase extends Enum {
     readonly isApplyExtrinsic: boolean;
     readonly asApplyExtrinsic: u32;
@@ -2216,27 +2219,27 @@
     readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';
   }
 
-  /** @name FrameSystemLastRuntimeUpgradeInfo (252) */
+  /** @name FrameSystemLastRuntimeUpgradeInfo (253) */
   export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {
     readonly specVersion: Compact<u32>;
     readonly specName: Text;
   }
 
-  /** @name FrameSystemLimitsBlockWeights (253) */
+  /** @name FrameSystemLimitsBlockWeights (254) */
   export interface FrameSystemLimitsBlockWeights extends Struct {
     readonly baseBlock: u64;
     readonly maxBlock: u64;
     readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;
   }
 
-  /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (254) */
+  /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (255) */
   export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {
     readonly normal: FrameSystemLimitsWeightsPerClass;
     readonly operational: FrameSystemLimitsWeightsPerClass;
     readonly mandatory: FrameSystemLimitsWeightsPerClass;
   }
 
-  /** @name FrameSystemLimitsWeightsPerClass (255) */
+  /** @name FrameSystemLimitsWeightsPerClass (256) */
   export interface FrameSystemLimitsWeightsPerClass extends Struct {
     readonly baseExtrinsic: u64;
     readonly maxExtrinsic: Option<u64>;
@@ -2244,25 +2247,25 @@
     readonly reserved: Option<u64>;
   }
 
-  /** @name FrameSystemLimitsBlockLength (257) */
+  /** @name FrameSystemLimitsBlockLength (258) */
   export interface FrameSystemLimitsBlockLength extends Struct {
     readonly max: FrameSupportWeightsPerDispatchClassU32;
   }
 
-  /** @name FrameSupportWeightsPerDispatchClassU32 (258) */
+  /** @name FrameSupportWeightsPerDispatchClassU32 (259) */
   export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {
     readonly normal: u32;
     readonly operational: u32;
     readonly mandatory: u32;
   }
 
-  /** @name FrameSupportWeightsRuntimeDbWeight (259) */
+  /** @name FrameSupportWeightsRuntimeDbWeight (260) */
   export interface FrameSupportWeightsRuntimeDbWeight extends Struct {
     readonly read: u64;
     readonly write: u64;
   }
 
-  /** @name SpVersionRuntimeVersion (260) */
+  /** @name SpVersionRuntimeVersion (261) */
   export interface SpVersionRuntimeVersion extends Struct {
     readonly specName: Text;
     readonly implName: Text;
@@ -2274,7 +2277,7 @@
     readonly stateVersion: u8;
   }
 
-  /** @name FrameSystemError (264) */
+  /** @name FrameSystemError (265) */
   export interface FrameSystemError extends Enum {
     readonly isInvalidSpecName: boolean;
     readonly isSpecVersionNeedsToIncrease: boolean;
@@ -2285,7 +2288,7 @@
     readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';
   }
 
-  /** @name OrmlVestingModuleError (266) */
+  /** @name OrmlVestingModuleError (267) */
   export interface OrmlVestingModuleError extends Enum {
     readonly isZeroVestingPeriod: boolean;
     readonly isZeroVestingPeriodCount: boolean;
@@ -2296,21 +2299,21 @@
     readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';
   }
 
-  /** @name CumulusPalletXcmpQueueInboundChannelDetails (268) */
+  /** @name CumulusPalletXcmpQueueInboundChannelDetails (269) */
   export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {
     readonly sender: u32;
     readonly state: CumulusPalletXcmpQueueInboundState;
     readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;
   }
 
-  /** @name CumulusPalletXcmpQueueInboundState (269) */
+  /** @name CumulusPalletXcmpQueueInboundState (270) */
   export interface CumulusPalletXcmpQueueInboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (272) */
+  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (273) */
   export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {
     readonly isConcatenatedVersionedXcm: boolean;
     readonly isConcatenatedEncodedBlob: boolean;
@@ -2318,7 +2321,7 @@
     readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (275) */
+  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (276) */
   export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {
     readonly recipient: u32;
     readonly state: CumulusPalletXcmpQueueOutboundState;
@@ -2327,14 +2330,14 @@
     readonly lastIndex: u16;
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundState (276) */
+  /** @name CumulusPalletXcmpQueueOutboundState (277) */
   export interface CumulusPalletXcmpQueueOutboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name CumulusPalletXcmpQueueQueueConfigData (278) */
+  /** @name CumulusPalletXcmpQueueQueueConfigData (279) */
   export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {
     readonly suspendThreshold: u32;
     readonly dropThreshold: u32;
@@ -2344,7 +2347,7 @@
     readonly xcmpMaxIndividualWeight: u64;
   }
 
-  /** @name CumulusPalletXcmpQueueError (280) */
+  /** @name CumulusPalletXcmpQueueError (281) */
   export interface CumulusPalletXcmpQueueError extends Enum {
     readonly isFailedToSend: boolean;
     readonly isBadXcmOrigin: boolean;
@@ -2354,7 +2357,7 @@
     readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';
   }
 
-  /** @name PalletXcmError (281) */
+  /** @name PalletXcmError (282) */
   export interface PalletXcmError extends Enum {
     readonly isUnreachable: boolean;
     readonly isSendFailure: boolean;
@@ -2372,29 +2375,29 @@
     readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';
   }
 
-  /** @name CumulusPalletXcmError (282) */
+  /** @name CumulusPalletXcmError (283) */
   export type CumulusPalletXcmError = Null;
 
-  /** @name CumulusPalletDmpQueueConfigData (283) */
+  /** @name CumulusPalletDmpQueueConfigData (284) */
   export interface CumulusPalletDmpQueueConfigData extends Struct {
     readonly maxIndividual: u64;
   }
 
-  /** @name CumulusPalletDmpQueuePageIndexData (284) */
+  /** @name CumulusPalletDmpQueuePageIndexData (285) */
   export interface CumulusPalletDmpQueuePageIndexData extends Struct {
     readonly beginUsed: u32;
     readonly endUsed: u32;
     readonly overweightCount: u64;
   }
 
-  /** @name CumulusPalletDmpQueueError (287) */
+  /** @name CumulusPalletDmpQueueError (288) */
   export interface CumulusPalletDmpQueueError extends Enum {
     readonly isUnknown: boolean;
     readonly isOverLimit: boolean;
     readonly type: 'Unknown' | 'OverLimit';
   }
 
-  /** @name PalletUniqueError (291) */
+  /** @name PalletUniqueError (292) */
   export interface PalletUniqueError extends Enum {
     readonly isCollectionDecimalPointLimitExceeded: boolean;
     readonly isConfirmUnsetSponsorFail: boolean;
@@ -2402,7 +2405,7 @@
     readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';
   }
 
-  /** @name UpDataStructsCollection (292) */
+  /** @name UpDataStructsCollection (293) */
   export interface UpDataStructsCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -2420,7 +2423,7 @@
     readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;
   }
 
-  /** @name UpDataStructsSponsorshipState (293) */
+  /** @name UpDataStructsSponsorshipState (294) */
   export interface UpDataStructsSponsorshipState extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -2430,14 +2433,14 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name UpDataStructsCollectionStats (296) */
+  /** @name UpDataStructsCollectionStats (297) */
   export interface UpDataStructsCollectionStats extends Struct {
     readonly created: u32;
     readonly destroyed: u32;
     readonly alive: u32;
   }
 
-  /** @name PalletCommonError (297) */
+  /** @name PalletCommonError (298) */
   export interface PalletCommonError extends Enum {
     readonly isCollectionNotFound: boolean;
     readonly isMustBeTokenOwner: boolean;
@@ -2462,10 +2465,11 @@
     readonly isCantApproveMoreThanOwned: boolean;
     readonly isAddressIsZero: boolean;
     readonly isUnsupportedOperation: boolean;
-    readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation';
+    readonly isNotSufficientFounds: boolean;
+    readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds';
   }
 
-  /** @name PalletFungibleError (299) */
+  /** @name PalletFungibleError (300) */
   export interface PalletFungibleError extends Enum {
     readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isFungibleItemsHaveNoId: boolean;
@@ -2473,34 +2477,34 @@
     readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData';
   }
 
-  /** @name PalletRefungibleItemData (300) */
+  /** @name PalletRefungibleItemData (301) */
   export interface PalletRefungibleItemData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
   }
 
-  /** @name PalletRefungibleError (304) */
+  /** @name PalletRefungibleError (305) */
   export interface PalletRefungibleError extends Enum {
     readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isWrongRefungiblePieces: boolean;
     readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces';
   }
 
-  /** @name PalletNonfungibleItemData (305) */
+  /** @name PalletNonfungibleItemData (306) */
   export interface PalletNonfungibleItemData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
-    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name PalletNonfungibleError (306) */
+  /** @name PalletNonfungibleError (307) */
   export interface PalletNonfungibleError extends Enum {
     readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isNonfungibleItemsHaveNoAmount: boolean;
     readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';
   }
 
-  /** @name PalletEvmError (308) */
+  /** @name PalletEvmError (309) */
   export interface PalletEvmError extends Enum {
     readonly isBalanceLow: boolean;
     readonly isFeeOverflow: boolean;
@@ -2511,7 +2515,7 @@
     readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';
   }
 
-  /** @name FpRpcTransactionStatus (311) */
+  /** @name FpRpcTransactionStatus (312) */
   export interface FpRpcTransactionStatus extends Struct {
     readonly transactionHash: H256;
     readonly transactionIndex: u32;
@@ -2522,10 +2526,10 @@
     readonly logsBloom: EthbloomBloom;
   }
 
-  /** @name EthbloomBloom (314) */
+  /** @name EthbloomBloom (315) */
   export interface EthbloomBloom extends U8aFixed {}
 
-  /** @name EthereumReceiptReceiptV3 (316) */
+  /** @name EthereumReceiptReceiptV3 (317) */
   export interface EthereumReceiptReceiptV3 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumReceiptEip658ReceiptData;
@@ -2536,7 +2540,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumReceiptEip658ReceiptData (317) */
+  /** @name EthereumReceiptEip658ReceiptData (318) */
   export interface EthereumReceiptEip658ReceiptData extends Struct {
     readonly statusCode: u8;
     readonly usedGas: U256;
@@ -2544,14 +2548,14 @@
     readonly logs: Vec<EthereumLog>;
   }
 
-  /** @name EthereumBlock (318) */
+  /** @name EthereumBlock (319) */
   export interface EthereumBlock extends Struct {
     readonly header: EthereumHeader;
     readonly transactions: Vec<EthereumTransactionTransactionV2>;
     readonly ommers: Vec<EthereumHeader>;
   }
 
-  /** @name EthereumHeader (319) */
+  /** @name EthereumHeader (320) */
   export interface EthereumHeader extends Struct {
     readonly parentHash: H256;
     readonly ommersHash: H256;
@@ -2570,24 +2574,24 @@
     readonly nonce: EthereumTypesHashH64;
   }
 
-  /** @name EthereumTypesHashH64 (320) */
+  /** @name EthereumTypesHashH64 (321) */
   export interface EthereumTypesHashH64 extends U8aFixed {}
 
-  /** @name PalletEthereumError (325) */
+  /** @name PalletEthereumError (326) */
   export interface PalletEthereumError extends Enum {
     readonly isInvalidSignature: boolean;
     readonly isPreLogExists: boolean;
     readonly type: 'InvalidSignature' | 'PreLogExists';
   }
 
-  /** @name PalletEvmCoderSubstrateError (326) */
+  /** @name PalletEvmCoderSubstrateError (327) */
   export interface PalletEvmCoderSubstrateError extends Enum {
     readonly isOutOfGas: boolean;
     readonly isOutOfFund: boolean;
     readonly type: 'OutOfGas' | 'OutOfFund';
   }
 
-  /** @name PalletEvmContractHelpersSponsoringModeT (327) */
+  /** @name PalletEvmContractHelpersSponsoringModeT (328) */
   export interface PalletEvmContractHelpersSponsoringModeT extends Enum {
     readonly isDisabled: boolean;
     readonly isAllowlisted: boolean;
@@ -2595,20 +2599,20 @@
     readonly type: 'Disabled' | 'Allowlisted' | 'Generous';
   }
 
-  /** @name PalletEvmContractHelpersError (329) */
+  /** @name PalletEvmContractHelpersError (330) */
   export interface PalletEvmContractHelpersError extends Enum {
     readonly isNoPermission: boolean;
     readonly type: 'NoPermission';
   }
 
-  /** @name PalletEvmMigrationError (330) */
+  /** @name PalletEvmMigrationError (331) */
   export interface PalletEvmMigrationError extends Enum {
     readonly isAccountNotEmpty: boolean;
     readonly isAccountIsNotMigrating: boolean;
     readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';
   }
 
-  /** @name SpRuntimeMultiSignature (332) */
+  /** @name SpRuntimeMultiSignature (333) */
   export interface SpRuntimeMultiSignature extends Enum {
     readonly isEd25519: boolean;
     readonly asEd25519: SpCoreEd25519Signature;
@@ -2619,31 +2623,31 @@
     readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';
   }
 
-  /** @name SpCoreEd25519Signature (333) */
+  /** @name SpCoreEd25519Signature (334) */
   export interface SpCoreEd25519Signature extends U8aFixed {}
 
-  /** @name SpCoreSr25519Signature (335) */
+  /** @name SpCoreSr25519Signature (336) */
   export interface SpCoreSr25519Signature extends U8aFixed {}
 
-  /** @name SpCoreEcdsaSignature (336) */
+  /** @name SpCoreEcdsaSignature (337) */
   export interface SpCoreEcdsaSignature extends U8aFixed {}
 
-  /** @name FrameSystemExtensionsCheckSpecVersion (339) */
+  /** @name FrameSystemExtensionsCheckSpecVersion (340) */
   export type FrameSystemExtensionsCheckSpecVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckGenesis (340) */
+  /** @name FrameSystemExtensionsCheckGenesis (341) */
   export type FrameSystemExtensionsCheckGenesis = Null;
 
-  /** @name FrameSystemExtensionsCheckNonce (343) */
+  /** @name FrameSystemExtensionsCheckNonce (344) */
   export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}
 
-  /** @name FrameSystemExtensionsCheckWeight (344) */
+  /** @name FrameSystemExtensionsCheckWeight (345) */
   export type FrameSystemExtensionsCheckWeight = Null;
 
-  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (345) */
+  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (346) */
   export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
 
-  /** @name UniqueRuntimeRuntime (346) */
-  export type UniqueRuntimeRuntime = Null;
+  /** @name OpalRuntimeRuntime (347) */
+  export type OpalRuntimeRuntime = Null;
 
 } // declare module
modifiedtests/src/interfaces/unique/definitions.tsdiffbeforeafterboth
--- a/tests/src/interfaces/unique/definitions.ts
+++ b/tests/src/interfaces/unique/definitions.ts
@@ -22,7 +22,7 @@
   isOptional?: true;
 };
 
-const CROSS_ACCOUNT_ID_TYPE = 'PalletCommonAccountBasicCrossAccountIdRepr';
+const CROSS_ACCOUNT_ID_TYPE = 'PalletEvmAccountBasicCrossAccountIdRepr';
 
 const collectionParam = {name: 'collection', type: 'u32'};
 const tokenParam = {name: 'tokenId', type: 'u32'};
@@ -38,8 +38,8 @@
 export default {
   types,
   rpc: {
-    adminlist: fun('Get admin list', [collectionParam], 'Vec<PalletCommonAccountBasicCrossAccountIdRepr>'),
-    allowlist: fun('Get allowlist', [collectionParam], 'Vec<PalletCommonAccountBasicCrossAccountIdRepr>'),
+    adminlist: fun('Get admin list', [collectionParam], 'Vec<PalletEvmAccountBasicCrossAccountIdRepr>'),
+    allowlist: fun('Get allowlist', [collectionParam], 'Vec<PalletEvmAccountBasicCrossAccountIdRepr>'),
 
     accountTokens: fun('Get tokens owned by account', [collectionParam, crossAccountParam()], 'Vec<u32>'),
     collectionTokens: fun('Get tokens contained in collection', [collectionParam], 'Vec<u32>'),
@@ -55,5 +55,7 @@
     collectionById: fun('Get collection by specified id', [collectionParam], 'Option<UpDataStructsCollection>'),
     collectionStats: fun('Get collection stats', [], 'UpDataStructsCollectionStats'),
     allowed: fun('Check if user is allowed to use collection', [collectionParam, crossAccountParam()], 'bool'),
+    nextSponsored: fun('Get number of blocks when sponsored transaction is available', [collectionParam, crossAccountParam(), tokenParam], 'Option<u64>'),
+    effectiveCollectionLimits: fun('Get effective collection limits', [collectionParam], 'Option<UpDataStructsCollectionLimits>'),
   },
 };
modifiedtests/src/interfaces/unique/types.tsdiffbeforeafterboth
before · tests/src/interfaces/unique/types.ts
1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34import type { BTreeMap, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';5import type { ITuple } from '@polkadot/types-codec/types';6import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';7import type { Event } from '@polkadot/types/interfaces/system';89/** @name CumulusPalletDmpQueueCall */10export interface CumulusPalletDmpQueueCall extends Enum {11  readonly isServiceOverweight: boolean;12  readonly asServiceOverweight: {13    readonly index: u64;14    readonly weightLimit: u64;15  } & Struct;16  readonly type: 'ServiceOverweight';17}1819/** @name CumulusPalletDmpQueueConfigData */20export interface CumulusPalletDmpQueueConfigData extends Struct {21  readonly maxIndividual: u64;22}2324/** @name CumulusPalletDmpQueueError */25export interface CumulusPalletDmpQueueError extends Enum {26  readonly isUnknown: boolean;27  readonly isOverLimit: boolean;28  readonly type: 'Unknown' | 'OverLimit';29}3031/** @name CumulusPalletDmpQueueEvent */32export interface CumulusPalletDmpQueueEvent extends Enum {33  readonly isInvalidFormat: boolean;34  readonly asInvalidFormat: U8aFixed;35  readonly isUnsupportedVersion: boolean;36  readonly asUnsupportedVersion: U8aFixed;37  readonly isExecutedDownward: boolean;38  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;39  readonly isWeightExhausted: boolean;40  readonly asWeightExhausted: ITuple<[U8aFixed, u64, u64]>;41  readonly isOverweightEnqueued: boolean;42  readonly asOverweightEnqueued: ITuple<[U8aFixed, u64, u64]>;43  readonly isOverweightServiced: boolean;44  readonly asOverweightServiced: ITuple<[u64, u64]>;45  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';46}4748/** @name CumulusPalletDmpQueuePageIndexData */49export interface CumulusPalletDmpQueuePageIndexData extends Struct {50  readonly beginUsed: u32;51  readonly endUsed: u32;52  readonly overweightCount: u64;53}5455/** @name CumulusPalletParachainSystemCall */56export interface CumulusPalletParachainSystemCall extends Enum {57  readonly isSetValidationData: boolean;58  readonly asSetValidationData: {59    readonly data: CumulusPrimitivesParachainInherentParachainInherentData;60  } & Struct;61  readonly isSudoSendUpwardMessage: boolean;62  readonly asSudoSendUpwardMessage: {63    readonly message: Bytes;64  } & Struct;65  readonly isAuthorizeUpgrade: boolean;66  readonly asAuthorizeUpgrade: {67    readonly codeHash: H256;68  } & Struct;69  readonly isEnactAuthorizedUpgrade: boolean;70  readonly asEnactAuthorizedUpgrade: {71    readonly code: Bytes;72  } & Struct;73  readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';74}7576/** @name CumulusPalletParachainSystemError */77export interface CumulusPalletParachainSystemError extends Enum {78  readonly isOverlappingUpgrades: boolean;79  readonly isProhibitedByPolkadot: boolean;80  readonly isTooBig: boolean;81  readonly isValidationDataNotAvailable: boolean;82  readonly isHostConfigurationNotAvailable: boolean;83  readonly isNotScheduled: boolean;84  readonly isNothingAuthorized: boolean;85  readonly isUnauthorized: boolean;86  readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';87}8889/** @name CumulusPalletParachainSystemEvent */90export interface CumulusPalletParachainSystemEvent extends Enum {91  readonly isValidationFunctionStored: boolean;92  readonly isValidationFunctionApplied: boolean;93  readonly asValidationFunctionApplied: u32;94  readonly isValidationFunctionDiscarded: boolean;95  readonly isUpgradeAuthorized: boolean;96  readonly asUpgradeAuthorized: H256;97  readonly isDownwardMessagesReceived: boolean;98  readonly asDownwardMessagesReceived: u32;99  readonly isDownwardMessagesProcessed: boolean;100  readonly asDownwardMessagesProcessed: ITuple<[u64, H256]>;101  readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';102}103104/** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot */105export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {106  readonly dmqMqcHead: H256;107  readonly relayDispatchQueueSize: ITuple<[u32, u32]>;108  readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;109  readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;110}111112/** @name CumulusPalletXcmCall */113export interface CumulusPalletXcmCall extends Null {}114115/** @name CumulusPalletXcmError */116export interface CumulusPalletXcmError extends Null {}117118/** @name CumulusPalletXcmEvent */119export interface CumulusPalletXcmEvent extends Enum {120  readonly isInvalidFormat: boolean;121  readonly asInvalidFormat: U8aFixed;122  readonly isUnsupportedVersion: boolean;123  readonly asUnsupportedVersion: U8aFixed;124  readonly isExecutedDownward: boolean;125  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;126  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';127}128129/** @name CumulusPalletXcmpQueueCall */130export interface CumulusPalletXcmpQueueCall extends Enum {131  readonly isServiceOverweight: boolean;132  readonly asServiceOverweight: {133    readonly index: u64;134    readonly weightLimit: u64;135  } & Struct;136  readonly isSuspendXcmExecution: boolean;137  readonly isResumeXcmExecution: boolean;138  readonly isUpdateSuspendThreshold: boolean;139  readonly asUpdateSuspendThreshold: {140    readonly new_: u32;141  } & Struct;142  readonly isUpdateDropThreshold: boolean;143  readonly asUpdateDropThreshold: {144    readonly new_: u32;145  } & Struct;146  readonly isUpdateResumeThreshold: boolean;147  readonly asUpdateResumeThreshold: {148    readonly new_: u32;149  } & Struct;150  readonly isUpdateThresholdWeight: boolean;151  readonly asUpdateThresholdWeight: {152    readonly new_: u64;153  } & Struct;154  readonly isUpdateWeightRestrictDecay: boolean;155  readonly asUpdateWeightRestrictDecay: {156    readonly new_: u64;157  } & Struct;158  readonly isUpdateXcmpMaxIndividualWeight: boolean;159  readonly asUpdateXcmpMaxIndividualWeight: {160    readonly new_: u64;161  } & Struct;162  readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';163}164165/** @name CumulusPalletXcmpQueueError */166export interface CumulusPalletXcmpQueueError extends Enum {167  readonly isFailedToSend: boolean;168  readonly isBadXcmOrigin: boolean;169  readonly isBadXcm: boolean;170  readonly isBadOverweightIndex: boolean;171  readonly isWeightOverLimit: boolean;172  readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';173}174175/** @name CumulusPalletXcmpQueueEvent */176export interface CumulusPalletXcmpQueueEvent extends Enum {177  readonly isSuccess: boolean;178  readonly asSuccess: Option<H256>;179  readonly isFail: boolean;180  readonly asFail: ITuple<[Option<H256>, XcmV2TraitsError]>;181  readonly isBadVersion: boolean;182  readonly asBadVersion: Option<H256>;183  readonly isBadFormat: boolean;184  readonly asBadFormat: Option<H256>;185  readonly isUpwardMessageSent: boolean;186  readonly asUpwardMessageSent: Option<H256>;187  readonly isXcmpMessageSent: boolean;188  readonly asXcmpMessageSent: Option<H256>;189  readonly isOverweightEnqueued: boolean;190  readonly asOverweightEnqueued: ITuple<[u32, u32, u64, u64]>;191  readonly isOverweightServiced: boolean;192  readonly asOverweightServiced: ITuple<[u64, u64]>;193  readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';194}195196/** @name CumulusPalletXcmpQueueInboundChannelDetails */197export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {198  readonly sender: u32;199  readonly state: CumulusPalletXcmpQueueInboundState;200  readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;201}202203/** @name CumulusPalletXcmpQueueInboundState */204export interface CumulusPalletXcmpQueueInboundState extends Enum {205  readonly isOk: boolean;206  readonly isSuspended: boolean;207  readonly type: 'Ok' | 'Suspended';208}209210/** @name CumulusPalletXcmpQueueOutboundChannelDetails */211export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {212  readonly recipient: u32;213  readonly state: CumulusPalletXcmpQueueOutboundState;214  readonly signalsExist: bool;215  readonly firstIndex: u16;216  readonly lastIndex: u16;217}218219/** @name CumulusPalletXcmpQueueOutboundState */220export interface CumulusPalletXcmpQueueOutboundState extends Enum {221  readonly isOk: boolean;222  readonly isSuspended: boolean;223  readonly type: 'Ok' | 'Suspended';224}225226/** @name CumulusPalletXcmpQueueQueueConfigData */227export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {228  readonly suspendThreshold: u32;229  readonly dropThreshold: u32;230  readonly resumeThreshold: u32;231  readonly thresholdWeight: u64;232  readonly weightRestrictDecay: u64;233  readonly xcmpMaxIndividualWeight: u64;234}235236/** @name CumulusPrimitivesParachainInherentParachainInherentData */237export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {238  readonly validationData: PolkadotPrimitivesV1PersistedValidationData;239  readonly relayChainState: SpTrieStorageProof;240  readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;241  readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;242}243244/** @name EthbloomBloom */245export interface EthbloomBloom extends U8aFixed {}246247/** @name EthereumBlock */248export interface EthereumBlock extends Struct {249  readonly header: EthereumHeader;250  readonly transactions: Vec<EthereumTransactionTransactionV2>;251  readonly ommers: Vec<EthereumHeader>;252}253254/** @name EthereumHeader */255export interface EthereumHeader extends Struct {256  readonly parentHash: H256;257  readonly ommersHash: H256;258  readonly beneficiary: H160;259  readonly stateRoot: H256;260  readonly transactionsRoot: H256;261  readonly receiptsRoot: H256;262  readonly logsBloom: EthbloomBloom;263  readonly difficulty: U256;264  readonly number: U256;265  readonly gasLimit: U256;266  readonly gasUsed: U256;267  readonly timestamp: u64;268  readonly extraData: Bytes;269  readonly mixHash: H256;270  readonly nonce: EthereumTypesHashH64;271}272273/** @name EthereumLog */274export interface EthereumLog extends Struct {275  readonly address: H160;276  readonly topics: Vec<H256>;277  readonly data: Bytes;278}279280/** @name EthereumReceiptEip658ReceiptData */281export interface EthereumReceiptEip658ReceiptData extends Struct {282  readonly statusCode: u8;283  readonly usedGas: U256;284  readonly logsBloom: EthbloomBloom;285  readonly logs: Vec<EthereumLog>;286}287288/** @name EthereumReceiptReceiptV3 */289export interface EthereumReceiptReceiptV3 extends Enum {290  readonly isLegacy: boolean;291  readonly asLegacy: EthereumReceiptEip658ReceiptData;292  readonly isEip2930: boolean;293  readonly asEip2930: EthereumReceiptEip658ReceiptData;294  readonly isEip1559: boolean;295  readonly asEip1559: EthereumReceiptEip658ReceiptData;296  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';297}298299/** @name EthereumTransactionAccessListItem */300export interface EthereumTransactionAccessListItem extends Struct {301  readonly address: H160;302  readonly slots: Vec<H256>;303}304305/** @name EthereumTransactionEip1559Transaction */306export interface EthereumTransactionEip1559Transaction extends Struct {307  readonly chainId: u64;308  readonly nonce: U256;309  readonly maxPriorityFeePerGas: U256;310  readonly maxFeePerGas: U256;311  readonly gasLimit: U256;312  readonly action: EthereumTransactionTransactionAction;313  readonly value: U256;314  readonly input: Bytes;315  readonly accessList: Vec<EthereumTransactionAccessListItem>;316  readonly oddYParity: bool;317  readonly r: H256;318  readonly s: H256;319}320321/** @name EthereumTransactionEip2930Transaction */322export interface EthereumTransactionEip2930Transaction extends Struct {323  readonly chainId: u64;324  readonly nonce: U256;325  readonly gasPrice: U256;326  readonly gasLimit: U256;327  readonly action: EthereumTransactionTransactionAction;328  readonly value: U256;329  readonly input: Bytes;330  readonly accessList: Vec<EthereumTransactionAccessListItem>;331  readonly oddYParity: bool;332  readonly r: H256;333  readonly s: H256;334}335336/** @name EthereumTransactionLegacyTransaction */337export interface EthereumTransactionLegacyTransaction extends Struct {338  readonly nonce: U256;339  readonly gasPrice: U256;340  readonly gasLimit: U256;341  readonly action: EthereumTransactionTransactionAction;342  readonly value: U256;343  readonly input: Bytes;344  readonly signature: EthereumTransactionTransactionSignature;345}346347/** @name EthereumTransactionTransactionAction */348export interface EthereumTransactionTransactionAction extends Enum {349  readonly isCall: boolean;350  readonly asCall: H160;351  readonly isCreate: boolean;352  readonly type: 'Call' | 'Create';353}354355/** @name EthereumTransactionTransactionSignature */356export interface EthereumTransactionTransactionSignature extends Struct {357  readonly v: u64;358  readonly r: H256;359  readonly s: H256;360}361362/** @name EthereumTransactionTransactionV2 */363export interface EthereumTransactionTransactionV2 extends Enum {364  readonly isLegacy: boolean;365  readonly asLegacy: EthereumTransactionLegacyTransaction;366  readonly isEip2930: boolean;367  readonly asEip2930: EthereumTransactionEip2930Transaction;368  readonly isEip1559: boolean;369  readonly asEip1559: EthereumTransactionEip1559Transaction;370  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';371}372373/** @name EthereumTypesHashH64 */374export interface EthereumTypesHashH64 extends U8aFixed {}375376/** @name EvmCoreErrorExitError */377export interface EvmCoreErrorExitError extends Enum {378  readonly isStackUnderflow: boolean;379  readonly isStackOverflow: boolean;380  readonly isInvalidJump: boolean;381  readonly isInvalidRange: boolean;382  readonly isDesignatedInvalid: boolean;383  readonly isCallTooDeep: boolean;384  readonly isCreateCollision: boolean;385  readonly isCreateContractLimit: boolean;386  readonly isInvalidCode: boolean;387  readonly isOutOfOffset: boolean;388  readonly isOutOfGas: boolean;389  readonly isOutOfFund: boolean;390  readonly isPcUnderflow: boolean;391  readonly isCreateEmpty: boolean;392  readonly isOther: boolean;393  readonly asOther: Text;394  readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';395}396397/** @name EvmCoreErrorExitFatal */398export interface EvmCoreErrorExitFatal extends Enum {399  readonly isNotSupported: boolean;400  readonly isUnhandledInterrupt: boolean;401  readonly isCallErrorAsFatal: boolean;402  readonly asCallErrorAsFatal: EvmCoreErrorExitError;403  readonly isOther: boolean;404  readonly asOther: Text;405  readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';406}407408/** @name EvmCoreErrorExitReason */409export interface EvmCoreErrorExitReason extends Enum {410  readonly isSucceed: boolean;411  readonly asSucceed: EvmCoreErrorExitSucceed;412  readonly isError: boolean;413  readonly asError: EvmCoreErrorExitError;414  readonly isRevert: boolean;415  readonly asRevert: EvmCoreErrorExitRevert;416  readonly isFatal: boolean;417  readonly asFatal: EvmCoreErrorExitFatal;418  readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';419}420421/** @name EvmCoreErrorExitRevert */422export interface EvmCoreErrorExitRevert extends Enum {423  readonly isReverted: boolean;424  readonly type: 'Reverted';425}426427/** @name EvmCoreErrorExitSucceed */428export interface EvmCoreErrorExitSucceed extends Enum {429  readonly isStopped: boolean;430  readonly isReturned: boolean;431  readonly isSuicided: boolean;432  readonly type: 'Stopped' | 'Returned' | 'Suicided';433}434435/** @name FpRpcTransactionStatus */436export interface FpRpcTransactionStatus extends Struct {437  readonly transactionHash: H256;438  readonly transactionIndex: u32;439  readonly from: H160;440  readonly to: Option<H160>;441  readonly contractAddress: Option<H160>;442  readonly logs: Vec<EthereumLog>;443  readonly logsBloom: EthbloomBloom;444}445446/** @name FrameSupportPalletId */447export interface FrameSupportPalletId extends U8aFixed {}448449/** @name FrameSupportTokensMiscBalanceStatus */450export interface FrameSupportTokensMiscBalanceStatus extends Enum {451  readonly isFree: boolean;452  readonly isReserved: boolean;453  readonly type: 'Free' | 'Reserved';454}455456/** @name FrameSupportWeightsDispatchClass */457export interface FrameSupportWeightsDispatchClass extends Enum {458  readonly isNormal: boolean;459  readonly isOperational: boolean;460  readonly isMandatory: boolean;461  readonly type: 'Normal' | 'Operational' | 'Mandatory';462}463464/** @name FrameSupportWeightsDispatchInfo */465export interface FrameSupportWeightsDispatchInfo extends Struct {466  readonly weight: u64;467  readonly class: FrameSupportWeightsDispatchClass;468  readonly paysFee: FrameSupportWeightsPays;469}470471/** @name FrameSupportWeightsPays */472export interface FrameSupportWeightsPays extends Enum {473  readonly isYes: boolean;474  readonly isNo: boolean;475  readonly type: 'Yes' | 'No';476}477478/** @name FrameSupportWeightsPerDispatchClassU32 */479export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {480  readonly normal: u32;481  readonly operational: u32;482  readonly mandatory: u32;483}484485/** @name FrameSupportWeightsPerDispatchClassU64 */486export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {487  readonly normal: u64;488  readonly operational: u64;489  readonly mandatory: u64;490}491492/** @name FrameSupportWeightsPerDispatchClassWeightsPerClass */493export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {494  readonly normal: FrameSystemLimitsWeightsPerClass;495  readonly operational: FrameSystemLimitsWeightsPerClass;496  readonly mandatory: FrameSystemLimitsWeightsPerClass;497}498499/** @name FrameSupportWeightsRuntimeDbWeight */500export interface FrameSupportWeightsRuntimeDbWeight extends Struct {501  readonly read: u64;502  readonly write: u64;503}504505/** @name FrameSupportWeightsWeightToFeeCoefficient */506export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {507  readonly coeffInteger: u128;508  readonly coeffFrac: Perbill;509  readonly negative: bool;510  readonly degree: u8;511}512513/** @name FrameSystemAccountInfo */514export interface FrameSystemAccountInfo extends Struct {515  readonly nonce: u32;516  readonly consumers: u32;517  readonly providers: u32;518  readonly sufficients: u32;519  readonly data: PalletBalancesAccountData;520}521522/** @name FrameSystemCall */523export interface FrameSystemCall extends Enum {524  readonly isFillBlock: boolean;525  readonly asFillBlock: {526    readonly ratio: Perbill;527  } & Struct;528  readonly isRemark: boolean;529  readonly asRemark: {530    readonly remark: Bytes;531  } & Struct;532  readonly isSetHeapPages: boolean;533  readonly asSetHeapPages: {534    readonly pages: u64;535  } & Struct;536  readonly isSetCode: boolean;537  readonly asSetCode: {538    readonly code: Bytes;539  } & Struct;540  readonly isSetCodeWithoutChecks: boolean;541  readonly asSetCodeWithoutChecks: {542    readonly code: Bytes;543  } & Struct;544  readonly isSetStorage: boolean;545  readonly asSetStorage: {546    readonly items: Vec<ITuple<[Bytes, Bytes]>>;547  } & Struct;548  readonly isKillStorage: boolean;549  readonly asKillStorage: {550    readonly keys_: Vec<Bytes>;551  } & Struct;552  readonly isKillPrefix: boolean;553  readonly asKillPrefix: {554    readonly prefix: Bytes;555    readonly subkeys: u32;556  } & Struct;557  readonly isRemarkWithEvent: boolean;558  readonly asRemarkWithEvent: {559    readonly remark: Bytes;560  } & Struct;561  readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';562}563564/** @name FrameSystemError */565export interface FrameSystemError extends Enum {566  readonly isInvalidSpecName: boolean;567  readonly isSpecVersionNeedsToIncrease: boolean;568  readonly isFailedToExtractRuntimeVersion: boolean;569  readonly isNonDefaultComposite: boolean;570  readonly isNonZeroRefCount: boolean;571  readonly isCallFiltered: boolean;572  readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';573}574575/** @name FrameSystemEvent */576export interface FrameSystemEvent extends Enum {577  readonly isExtrinsicSuccess: boolean;578  readonly asExtrinsicSuccess: {579    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;580  } & Struct;581  readonly isExtrinsicFailed: boolean;582  readonly asExtrinsicFailed: {583    readonly dispatchError: SpRuntimeDispatchError;584    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;585  } & Struct;586  readonly isCodeUpdated: boolean;587  readonly isNewAccount: boolean;588  readonly asNewAccount: {589    readonly account: AccountId32;590  } & Struct;591  readonly isKilledAccount: boolean;592  readonly asKilledAccount: {593    readonly account: AccountId32;594  } & Struct;595  readonly isRemarked: boolean;596  readonly asRemarked: {597    readonly sender: AccountId32;598    readonly hash_: H256;599  } & Struct;600  readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';601}602603/** @name FrameSystemEventRecord */604export interface FrameSystemEventRecord extends Struct {605  readonly phase: FrameSystemPhase;606  readonly event: Event;607  readonly topics: Vec<H256>;608}609610/** @name FrameSystemExtensionsCheckGenesis */611export interface FrameSystemExtensionsCheckGenesis extends Null {}612613/** @name FrameSystemExtensionsCheckNonce */614export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}615616/** @name FrameSystemExtensionsCheckSpecVersion */617export interface FrameSystemExtensionsCheckSpecVersion extends Null {}618619/** @name FrameSystemExtensionsCheckWeight */620export interface FrameSystemExtensionsCheckWeight extends Null {}621622/** @name FrameSystemLastRuntimeUpgradeInfo */623export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {624  readonly specVersion: Compact<u32>;625  readonly specName: Text;626}627628/** @name FrameSystemLimitsBlockLength */629export interface FrameSystemLimitsBlockLength extends Struct {630  readonly max: FrameSupportWeightsPerDispatchClassU32;631}632633/** @name FrameSystemLimitsBlockWeights */634export interface FrameSystemLimitsBlockWeights extends Struct {635  readonly baseBlock: u64;636  readonly maxBlock: u64;637  readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;638}639640/** @name FrameSystemLimitsWeightsPerClass */641export interface FrameSystemLimitsWeightsPerClass extends Struct {642  readonly baseExtrinsic: u64;643  readonly maxExtrinsic: Option<u64>;644  readonly maxTotal: Option<u64>;645  readonly reserved: Option<u64>;646}647648/** @name FrameSystemPhase */649export interface FrameSystemPhase extends Enum {650  readonly isApplyExtrinsic: boolean;651  readonly asApplyExtrinsic: u32;652  readonly isFinalization: boolean;653  readonly isInitialization: boolean;654  readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';655}656657/** @name OrmlVestingModuleCall */658export interface OrmlVestingModuleCall extends Enum {659  readonly isClaim: boolean;660  readonly isVestedTransfer: boolean;661  readonly asVestedTransfer: {662    readonly dest: MultiAddress;663    readonly schedule: OrmlVestingVestingSchedule;664  } & Struct;665  readonly isUpdateVestingSchedules: boolean;666  readonly asUpdateVestingSchedules: {667    readonly who: MultiAddress;668    readonly vestingSchedules: Vec<OrmlVestingVestingSchedule>;669  } & Struct;670  readonly isClaimFor: boolean;671  readonly asClaimFor: {672    readonly dest: MultiAddress;673  } & Struct;674  readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';675}676677/** @name OrmlVestingModuleError */678export interface OrmlVestingModuleError extends Enum {679  readonly isZeroVestingPeriod: boolean;680  readonly isZeroVestingPeriodCount: boolean;681  readonly isInsufficientBalanceToLock: boolean;682  readonly isTooManyVestingSchedules: boolean;683  readonly isAmountLow: boolean;684  readonly isMaxVestingSchedulesExceeded: boolean;685  readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';686}687688/** @name OrmlVestingModuleEvent */689export interface OrmlVestingModuleEvent extends Enum {690  readonly isVestingScheduleAdded: boolean;691  readonly asVestingScheduleAdded: {692    readonly from: AccountId32;693    readonly to: AccountId32;694    readonly vestingSchedule: OrmlVestingVestingSchedule;695  } & Struct;696  readonly isClaimed: boolean;697  readonly asClaimed: {698    readonly who: AccountId32;699    readonly amount: u128;700  } & Struct;701  readonly isVestingSchedulesUpdated: boolean;702  readonly asVestingSchedulesUpdated: {703    readonly who: AccountId32;704  } & Struct;705  readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';706}707708/** @name OrmlVestingVestingSchedule */709export interface OrmlVestingVestingSchedule extends Struct {710  readonly start: u32;711  readonly period: u32;712  readonly periodCount: u32;713  readonly perPeriod: Compact<u128>;714}715716/** @name PalletBalancesAccountData */717export interface PalletBalancesAccountData extends Struct {718  readonly free: u128;719  readonly reserved: u128;720  readonly miscFrozen: u128;721  readonly feeFrozen: u128;722}723724/** @name PalletBalancesBalanceLock */725export interface PalletBalancesBalanceLock extends Struct {726  readonly id: U8aFixed;727  readonly amount: u128;728  readonly reasons: PalletBalancesReasons;729}730731/** @name PalletBalancesCall */732export interface PalletBalancesCall extends Enum {733  readonly isTransfer: boolean;734  readonly asTransfer: {735    readonly dest: MultiAddress;736    readonly value: Compact<u128>;737  } & Struct;738  readonly isSetBalance: boolean;739  readonly asSetBalance: {740    readonly who: MultiAddress;741    readonly newFree: Compact<u128>;742    readonly newReserved: Compact<u128>;743  } & Struct;744  readonly isForceTransfer: boolean;745  readonly asForceTransfer: {746    readonly source: MultiAddress;747    readonly dest: MultiAddress;748    readonly value: Compact<u128>;749  } & Struct;750  readonly isTransferKeepAlive: boolean;751  readonly asTransferKeepAlive: {752    readonly dest: MultiAddress;753    readonly value: Compact<u128>;754  } & Struct;755  readonly isTransferAll: boolean;756  readonly asTransferAll: {757    readonly dest: MultiAddress;758    readonly keepAlive: bool;759  } & Struct;760  readonly isForceUnreserve: boolean;761  readonly asForceUnreserve: {762    readonly who: MultiAddress;763    readonly amount: u128;764  } & Struct;765  readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';766}767768/** @name PalletBalancesError */769export interface PalletBalancesError extends Enum {770  readonly isVestingBalance: boolean;771  readonly isLiquidityRestrictions: boolean;772  readonly isInsufficientBalance: boolean;773  readonly isExistentialDeposit: boolean;774  readonly isKeepAlive: boolean;775  readonly isExistingVestingSchedule: boolean;776  readonly isDeadAccount: boolean;777  readonly isTooManyReserves: boolean;778  readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';779}780781/** @name PalletBalancesEvent */782export interface PalletBalancesEvent extends Enum {783  readonly isEndowed: boolean;784  readonly asEndowed: {785    readonly account: AccountId32;786    readonly freeBalance: u128;787  } & Struct;788  readonly isDustLost: boolean;789  readonly asDustLost: {790    readonly account: AccountId32;791    readonly amount: u128;792  } & Struct;793  readonly isTransfer: boolean;794  readonly asTransfer: {795    readonly from: AccountId32;796    readonly to: AccountId32;797    readonly amount: u128;798  } & Struct;799  readonly isBalanceSet: boolean;800  readonly asBalanceSet: {801    readonly who: AccountId32;802    readonly free: u128;803    readonly reserved: u128;804  } & Struct;805  readonly isReserved: boolean;806  readonly asReserved: {807    readonly who: AccountId32;808    readonly amount: u128;809  } & Struct;810  readonly isUnreserved: boolean;811  readonly asUnreserved: {812    readonly who: AccountId32;813    readonly amount: u128;814  } & Struct;815  readonly isReserveRepatriated: boolean;816  readonly asReserveRepatriated: {817    readonly from: AccountId32;818    readonly to: AccountId32;819    readonly amount: u128;820    readonly destinationStatus: FrameSupportTokensMiscBalanceStatus;821  } & Struct;822  readonly isDeposit: boolean;823  readonly asDeposit: {824    readonly who: AccountId32;825    readonly amount: u128;826  } & Struct;827  readonly isWithdraw: boolean;828  readonly asWithdraw: {829    readonly who: AccountId32;830    readonly amount: u128;831  } & Struct;832  readonly isSlashed: boolean;833  readonly asSlashed: {834    readonly who: AccountId32;835    readonly amount: u128;836  } & Struct;837  readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';838}839840/** @name PalletBalancesReasons */841export interface PalletBalancesReasons extends Enum {842  readonly isFee: boolean;843  readonly isMisc: boolean;844  readonly isAll: boolean;845  readonly type: 'Fee' | 'Misc' | 'All';846}847848/** @name PalletBalancesReleases */849export interface PalletBalancesReleases extends Enum {850  readonly isV100: boolean;851  readonly isV200: boolean;852  readonly type: 'V100' | 'V200';853}854855/** @name PalletBalancesReserveData */856export interface PalletBalancesReserveData extends Struct {857  readonly id: U8aFixed;858  readonly amount: u128;859}860861/** @name PalletCommonAccountBasicCrossAccountIdRepr */862export interface PalletCommonAccountBasicCrossAccountIdRepr extends Enum {863  readonly isSubstrate: boolean;864  readonly asSubstrate: AccountId32;865  readonly isEthereum: boolean;866  readonly asEthereum: H160;867  readonly type: 'Substrate' | 'Ethereum';868}869870/** @name PalletCommonError */871export interface PalletCommonError extends Enum {872  readonly isCollectionNotFound: boolean;873  readonly isMustBeTokenOwner: boolean;874  readonly isNoPermission: boolean;875  readonly isPublicMintingNotAllowed: boolean;876  readonly isAddressNotInAllowlist: boolean;877  readonly isCollectionNameLimitExceeded: boolean;878  readonly isCollectionDescriptionLimitExceeded: boolean;879  readonly isCollectionTokenPrefixLimitExceeded: boolean;880  readonly isTotalCollectionsLimitExceeded: boolean;881  readonly isTokenVariableDataLimitExceeded: boolean;882  readonly isCollectionAdminCountExceeded: boolean;883  readonly isCollectionLimitBoundsExceeded: boolean;884  readonly isOwnerPermissionsCantBeReverted: boolean;885  readonly isTransferNotAllowed: boolean;886  readonly isAccountTokenLimitExceeded: boolean;887  readonly isCollectionTokenLimitExceeded: boolean;888  readonly isMetadataFlagFrozen: boolean;889  readonly isTokenNotFound: boolean;890  readonly isTokenValueTooLow: boolean;891  readonly isApprovedValueTooLow: boolean;892  readonly isCantApproveMoreThanOwned: boolean;893  readonly isAddressIsZero: boolean;894  readonly isUnsupportedOperation: boolean;895  readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation';896}897898/** @name PalletCommonEvent */899export interface PalletCommonEvent extends Enum {900  readonly isCollectionCreated: boolean;901  readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;902  readonly isCollectionDestroyed: boolean;903  readonly asCollectionDestroyed: u32;904  readonly isItemCreated: boolean;905  readonly asItemCreated: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;906  readonly isItemDestroyed: boolean;907  readonly asItemDestroyed: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;908  readonly isTransfer: boolean;909  readonly asTransfer: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;910  readonly isApproved: boolean;911  readonly asApproved: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;912  readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';913}914915/** @name PalletEthereumCall */916export interface PalletEthereumCall extends Enum {917  readonly isTransact: boolean;918  readonly asTransact: {919    readonly transaction: EthereumTransactionTransactionV2;920  } & Struct;921  readonly type: 'Transact';922}923924/** @name PalletEthereumError */925export interface PalletEthereumError extends Enum {926  readonly isInvalidSignature: boolean;927  readonly isPreLogExists: boolean;928  readonly type: 'InvalidSignature' | 'PreLogExists';929}930931/** @name PalletEthereumEvent */932export interface PalletEthereumEvent extends Enum {933  readonly isExecuted: boolean;934  readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;935  readonly type: 'Executed';936}937938/** @name PalletEvmCall */939export interface PalletEvmCall extends Enum {940  readonly isWithdraw: boolean;941  readonly asWithdraw: {942    readonly address: H160;943    readonly value: u128;944  } & Struct;945  readonly isCall: boolean;946  readonly asCall: {947    readonly source: H160;948    readonly target: H160;949    readonly input: Bytes;950    readonly value: U256;951    readonly gasLimit: u64;952    readonly maxFeePerGas: U256;953    readonly maxPriorityFeePerGas: Option<U256>;954    readonly nonce: Option<U256>;955    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;956  } & Struct;957  readonly isCreate: boolean;958  readonly asCreate: {959    readonly source: H160;960    readonly init: Bytes;961    readonly value: U256;962    readonly gasLimit: u64;963    readonly maxFeePerGas: U256;964    readonly maxPriorityFeePerGas: Option<U256>;965    readonly nonce: Option<U256>;966    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;967  } & Struct;968  readonly isCreate2: boolean;969  readonly asCreate2: {970    readonly source: H160;971    readonly init: Bytes;972    readonly salt: H256;973    readonly value: U256;974    readonly gasLimit: u64;975    readonly maxFeePerGas: U256;976    readonly maxPriorityFeePerGas: Option<U256>;977    readonly nonce: Option<U256>;978    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;979  } & Struct;980  readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';981}982983/** @name PalletEvmCoderSubstrateError */984export interface PalletEvmCoderSubstrateError extends Enum {985  readonly isOutOfGas: boolean;986  readonly isOutOfFund: boolean;987  readonly type: 'OutOfGas' | 'OutOfFund';988}989990/** @name PalletEvmContractHelpersError */991export interface PalletEvmContractHelpersError extends Enum {992  readonly isNoPermission: boolean;993  readonly type: 'NoPermission';994}995996/** @name PalletEvmContractHelpersSponsoringModeT */997export interface PalletEvmContractHelpersSponsoringModeT extends Enum {998  readonly isDisabled: boolean;999  readonly isAllowlisted: boolean;1000  readonly isGenerous: boolean;1001  readonly type: 'Disabled' | 'Allowlisted' | 'Generous';1002}10031004/** @name PalletEvmError */1005export interface PalletEvmError extends Enum {1006  readonly isBalanceLow: boolean;1007  readonly isFeeOverflow: boolean;1008  readonly isPaymentOverflow: boolean;1009  readonly isWithdrawFailed: boolean;1010  readonly isGasPriceTooLow: boolean;1011  readonly isInvalidNonce: boolean;1012  readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';1013}10141015/** @name PalletEvmEvent */1016export interface PalletEvmEvent extends Enum {1017  readonly isLog: boolean;1018  readonly asLog: EthereumLog;1019  readonly isCreated: boolean;1020  readonly asCreated: H160;1021  readonly isCreatedFailed: boolean;1022  readonly asCreatedFailed: H160;1023  readonly isExecuted: boolean;1024  readonly asExecuted: H160;1025  readonly isExecutedFailed: boolean;1026  readonly asExecutedFailed: H160;1027  readonly isBalanceDeposit: boolean;1028  readonly asBalanceDeposit: ITuple<[AccountId32, H160, U256]>;1029  readonly isBalanceWithdraw: boolean;1030  readonly asBalanceWithdraw: ITuple<[AccountId32, H160, U256]>;1031  readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';1032}10331034/** @name PalletEvmMigrationCall */1035export interface PalletEvmMigrationCall extends Enum {1036  readonly isBegin: boolean;1037  readonly asBegin: {1038    readonly address: H160;1039  } & Struct;1040  readonly isSetData: boolean;1041  readonly asSetData: {1042    readonly address: H160;1043    readonly data: Vec<ITuple<[H256, H256]>>;1044  } & Struct;1045  readonly isFinish: boolean;1046  readonly asFinish: {1047    readonly address: H160;1048    readonly code: Bytes;1049  } & Struct;1050  readonly type: 'Begin' | 'SetData' | 'Finish';1051}10521053/** @name PalletEvmMigrationError */1054export interface PalletEvmMigrationError extends Enum {1055  readonly isAccountNotEmpty: boolean;1056  readonly isAccountIsNotMigrating: boolean;1057  readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';1058}10591060/** @name PalletFungibleError */1061export interface PalletFungibleError extends Enum {1062  readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;1063  readonly isFungibleItemsHaveNoId: boolean;1064  readonly isFungibleItemsDontHaveData: boolean;1065  readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData';1066}10671068/** @name PalletInflationCall */1069export interface PalletInflationCall extends Enum {1070  readonly isStartInflation: boolean;1071  readonly asStartInflation: {1072    readonly inflationStartRelayBlock: u32;1073  } & Struct;1074  readonly type: 'StartInflation';1075}10761077/** @name PalletNonfungibleError */1078export interface PalletNonfungibleError extends Enum {1079  readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;1080  readonly isNonfungibleItemsHaveNoAmount: boolean;1081  readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';1082}10831084/** @name PalletNonfungibleItemData */1085export interface PalletNonfungibleItemData extends Struct {1086  readonly constData: Bytes;1087  readonly variableData: Bytes;1088  readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1089}10901091/** @name PalletRefungibleError */1092export interface PalletRefungibleError extends Enum {1093  readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;1094  readonly isWrongRefungiblePieces: boolean;1095  readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces';1096}10971098/** @name PalletRefungibleItemData */1099export interface PalletRefungibleItemData extends Struct {1100  readonly constData: Bytes;1101  readonly variableData: Bytes;1102}11031104/** @name PalletSudoCall */1105export interface PalletSudoCall extends Enum {1106  readonly isSudo: boolean;1107  readonly asSudo: {1108    readonly call: Call;1109  } & Struct;1110  readonly isSudoUncheckedWeight: boolean;1111  readonly asSudoUncheckedWeight: {1112    readonly call: Call;1113    readonly weight: u64;1114  } & Struct;1115  readonly isSetKey: boolean;1116  readonly asSetKey: {1117    readonly new_: MultiAddress;1118  } & Struct;1119  readonly isSudoAs: boolean;1120  readonly asSudoAs: {1121    readonly who: MultiAddress;1122    readonly call: Call;1123  } & Struct;1124  readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';1125}11261127/** @name PalletSudoError */1128export interface PalletSudoError extends Enum {1129  readonly isRequireSudo: boolean;1130  readonly type: 'RequireSudo';1131}11321133/** @name PalletSudoEvent */1134export interface PalletSudoEvent extends Enum {1135  readonly isSudid: boolean;1136  readonly asSudid: {1137    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1138  } & Struct;1139  readonly isKeyChanged: boolean;1140  readonly asKeyChanged: {1141    readonly oldSudoer: Option<AccountId32>;1142  } & Struct;1143  readonly isSudoAsDone: boolean;1144  readonly asSudoAsDone: {1145    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1146  } & Struct;1147  readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';1148}11491150/** @name PalletTemplateTransactionPaymentCall */1151export interface PalletTemplateTransactionPaymentCall extends Null {}11521153/** @name PalletTemplateTransactionPaymentChargeTransactionPayment */1154export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}11551156/** @name PalletTimestampCall */1157export interface PalletTimestampCall extends Enum {1158  readonly isSet: boolean;1159  readonly asSet: {1160    readonly now: Compact<u64>;1161  } & Struct;1162  readonly type: 'Set';1163}11641165/** @name PalletTransactionPaymentReleases */1166export interface PalletTransactionPaymentReleases extends Enum {1167  readonly isV1Ancient: boolean;1168  readonly isV2: boolean;1169  readonly type: 'V1Ancient' | 'V2';1170}11711172/** @name PalletTreasuryCall */1173export interface PalletTreasuryCall extends Enum {1174  readonly isProposeSpend: boolean;1175  readonly asProposeSpend: {1176    readonly value: Compact<u128>;1177    readonly beneficiary: MultiAddress;1178  } & Struct;1179  readonly isRejectProposal: boolean;1180  readonly asRejectProposal: {1181    readonly proposalId: Compact<u32>;1182  } & Struct;1183  readonly isApproveProposal: boolean;1184  readonly asApproveProposal: {1185    readonly proposalId: Compact<u32>;1186  } & Struct;1187  readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';1188}11891190/** @name PalletTreasuryError */1191export interface PalletTreasuryError extends Enum {1192  readonly isInsufficientProposersBalance: boolean;1193  readonly isInvalidIndex: boolean;1194  readonly isTooManyApprovals: boolean;1195  readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';1196}11971198/** @name PalletTreasuryEvent */1199export interface PalletTreasuryEvent extends Enum {1200  readonly isProposed: boolean;1201  readonly asProposed: {1202    readonly proposalIndex: u32;1203  } & Struct;1204  readonly isSpending: boolean;1205  readonly asSpending: {1206    readonly budgetRemaining: u128;1207  } & Struct;1208  readonly isAwarded: boolean;1209  readonly asAwarded: {1210    readonly proposalIndex: u32;1211    readonly award: u128;1212    readonly account: AccountId32;1213  } & Struct;1214  readonly isRejected: boolean;1215  readonly asRejected: {1216    readonly proposalIndex: u32;1217    readonly slashed: u128;1218  } & Struct;1219  readonly isBurnt: boolean;1220  readonly asBurnt: {1221    readonly burntFunds: u128;1222  } & Struct;1223  readonly isRollover: boolean;1224  readonly asRollover: {1225    readonly rolloverBalance: u128;1226  } & Struct;1227  readonly isDeposit: boolean;1228  readonly asDeposit: {1229    readonly value: u128;1230  } & Struct;1231  readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';1232}12331234/** @name PalletTreasuryProposal */1235export interface PalletTreasuryProposal extends Struct {1236  readonly proposer: AccountId32;1237  readonly value: u128;1238  readonly beneficiary: AccountId32;1239  readonly bond: u128;1240}12411242/** @name PalletUniqueCall */1243export interface PalletUniqueCall extends Enum {1244  readonly isCreateCollection: boolean;1245  readonly asCreateCollection: {1246    readonly collectionName: Vec<u16>;1247    readonly collectionDescription: Vec<u16>;1248    readonly tokenPrefix: Bytes;1249    readonly mode: UpDataStructsCollectionMode;1250  } & Struct;1251  readonly isCreateCollectionEx: boolean;1252  readonly asCreateCollectionEx: {1253    readonly data: UpDataStructsCreateCollectionData;1254  } & Struct;1255  readonly isDestroyCollection: boolean;1256  readonly asDestroyCollection: {1257    readonly collectionId: u32;1258  } & Struct;1259  readonly isAddToAllowList: boolean;1260  readonly asAddToAllowList: {1261    readonly collectionId: u32;1262    readonly address: PalletCommonAccountBasicCrossAccountIdRepr;1263  } & Struct;1264  readonly isRemoveFromAllowList: boolean;1265  readonly asRemoveFromAllowList: {1266    readonly collectionId: u32;1267    readonly address: PalletCommonAccountBasicCrossAccountIdRepr;1268  } & Struct;1269  readonly isSetPublicAccessMode: boolean;1270  readonly asSetPublicAccessMode: {1271    readonly collectionId: u32;1272    readonly mode: UpDataStructsAccessMode;1273  } & Struct;1274  readonly isSetMintPermission: boolean;1275  readonly asSetMintPermission: {1276    readonly collectionId: u32;1277    readonly mintPermission: bool;1278  } & Struct;1279  readonly isChangeCollectionOwner: boolean;1280  readonly asChangeCollectionOwner: {1281    readonly collectionId: u32;1282    readonly newOwner: AccountId32;1283  } & Struct;1284  readonly isAddCollectionAdmin: boolean;1285  readonly asAddCollectionAdmin: {1286    readonly collectionId: u32;1287    readonly newAdminId: PalletCommonAccountBasicCrossAccountIdRepr;1288  } & Struct;1289  readonly isRemoveCollectionAdmin: boolean;1290  readonly asRemoveCollectionAdmin: {1291    readonly collectionId: u32;1292    readonly accountId: PalletCommonAccountBasicCrossAccountIdRepr;1293  } & Struct;1294  readonly isSetCollectionSponsor: boolean;1295  readonly asSetCollectionSponsor: {1296    readonly collectionId: u32;1297    readonly newSponsor: AccountId32;1298  } & Struct;1299  readonly isConfirmSponsorship: boolean;1300  readonly asConfirmSponsorship: {1301    readonly collectionId: u32;1302  } & Struct;1303  readonly isRemoveCollectionSponsor: boolean;1304  readonly asRemoveCollectionSponsor: {1305    readonly collectionId: u32;1306  } & Struct;1307  readonly isCreateItem: boolean;1308  readonly asCreateItem: {1309    readonly collectionId: u32;1310    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1311    readonly data: UpDataStructsCreateItemData;1312  } & Struct;1313  readonly isCreateMultipleItems: boolean;1314  readonly asCreateMultipleItems: {1315    readonly collectionId: u32;1316    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1317    readonly itemsData: Vec<UpDataStructsCreateItemData>;1318  } & Struct;1319  readonly isCreateMultipleItemsEx: boolean;1320  readonly asCreateMultipleItemsEx: {1321    readonly collectionId: u32;1322    readonly data: UpDataStructsCreateItemExData;1323  } & Struct;1324  readonly isSetTransfersEnabledFlag: boolean;1325  readonly asSetTransfersEnabledFlag: {1326    readonly collectionId: u32;1327    readonly value: bool;1328  } & Struct;1329  readonly isBurnItem: boolean;1330  readonly asBurnItem: {1331    readonly collectionId: u32;1332    readonly itemId: u32;1333    readonly value: u128;1334  } & Struct;1335  readonly isBurnFrom: boolean;1336  readonly asBurnFrom: {1337    readonly collectionId: u32;1338    readonly from: PalletCommonAccountBasicCrossAccountIdRepr;1339    readonly itemId: u32;1340    readonly value: u128;1341  } & Struct;1342  readonly isTransfer: boolean;1343  readonly asTransfer: {1344    readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;1345    readonly collectionId: u32;1346    readonly itemId: u32;1347    readonly value: u128;1348  } & Struct;1349  readonly isApprove: boolean;1350  readonly asApprove: {1351    readonly spender: PalletCommonAccountBasicCrossAccountIdRepr;1352    readonly collectionId: u32;1353    readonly itemId: u32;1354    readonly amount: u128;1355  } & Struct;1356  readonly isTransferFrom: boolean;1357  readonly asTransferFrom: {1358    readonly from: PalletCommonAccountBasicCrossAccountIdRepr;1359    readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;1360    readonly collectionId: u32;1361    readonly itemId: u32;1362    readonly value: u128;1363  } & Struct;1364  readonly isSetVariableMetaData: boolean;1365  readonly asSetVariableMetaData: {1366    readonly collectionId: u32;1367    readonly itemId: u32;1368    readonly data: Bytes;1369  } & Struct;1370  readonly isSetMetaUpdatePermissionFlag: boolean;1371  readonly asSetMetaUpdatePermissionFlag: {1372    readonly collectionId: u32;1373    readonly value: UpDataStructsMetaUpdatePermission;1374  } & Struct;1375  readonly isSetSchemaVersion: boolean;1376  readonly asSetSchemaVersion: {1377    readonly collectionId: u32;1378    readonly version: UpDataStructsSchemaVersion;1379  } & Struct;1380  readonly isSetOffchainSchema: boolean;1381  readonly asSetOffchainSchema: {1382    readonly collectionId: u32;1383    readonly schema: Bytes;1384  } & Struct;1385  readonly isSetConstOnChainSchema: boolean;1386  readonly asSetConstOnChainSchema: {1387    readonly collectionId: u32;1388    readonly schema: Bytes;1389  } & Struct;1390  readonly isSetVariableOnChainSchema: boolean;1391  readonly asSetVariableOnChainSchema: {1392    readonly collectionId: u32;1393    readonly schema: Bytes;1394  } & Struct;1395  readonly isSetCollectionLimits: boolean;1396  readonly asSetCollectionLimits: {1397    readonly collectionId: u32;1398    readonly newLimit: UpDataStructsCollectionLimits;1399  } & Struct;1400  readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'SetPublicAccessMode' | 'SetMintPermission' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetVariableMetaData' | 'SetMetaUpdatePermissionFlag' | 'SetSchemaVersion' | 'SetOffchainSchema' | 'SetConstOnChainSchema' | 'SetVariableOnChainSchema' | 'SetCollectionLimits';1401}14021403/** @name PalletUniqueError */1404export interface PalletUniqueError extends Enum {1405  readonly isCollectionDecimalPointLimitExceeded: boolean;1406  readonly isConfirmUnsetSponsorFail: boolean;1407  readonly isEmptyArgument: boolean;1408  readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';1409}14101411/** @name PalletUniqueRawEvent */1412export interface PalletUniqueRawEvent extends Enum {1413  readonly isCollectionSponsorRemoved: boolean;1414  readonly asCollectionSponsorRemoved: u32;1415  readonly isCollectionAdminAdded: boolean;1416  readonly asCollectionAdminAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1417  readonly isCollectionOwnedChanged: boolean;1418  readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;1419  readonly isCollectionSponsorSet: boolean;1420  readonly asCollectionSponsorSet: ITuple<[u32, AccountId32]>;1421  readonly isConstOnChainSchemaSet: boolean;1422  readonly asConstOnChainSchemaSet: u32;1423  readonly isSponsorshipConfirmed: boolean;1424  readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;1425  readonly isCollectionAdminRemoved: boolean;1426  readonly asCollectionAdminRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1427  readonly isAllowListAddressRemoved: boolean;1428  readonly asAllowListAddressRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1429  readonly isAllowListAddressAdded: boolean;1430  readonly asAllowListAddressAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1431  readonly isCollectionLimitSet: boolean;1432  readonly asCollectionLimitSet: u32;1433  readonly isMintPermissionSet: boolean;1434  readonly asMintPermissionSet: u32;1435  readonly isOffchainSchemaSet: boolean;1436  readonly asOffchainSchemaSet: u32;1437  readonly isPublicAccessModeSet: boolean;1438  readonly asPublicAccessModeSet: ITuple<[u32, UpDataStructsAccessMode]>;1439  readonly isSchemaVersionSet: boolean;1440  readonly asSchemaVersionSet: u32;1441  readonly isVariableOnChainSchemaSet: boolean;1442  readonly asVariableOnChainSchemaSet: u32;1443  readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';1444}14451446/** @name PalletXcmCall */1447export interface PalletXcmCall extends Enum {1448  readonly isSend: boolean;1449  readonly asSend: {1450    readonly dest: XcmVersionedMultiLocation;1451    readonly message: XcmVersionedXcm;1452  } & Struct;1453  readonly isTeleportAssets: boolean;1454  readonly asTeleportAssets: {1455    readonly dest: XcmVersionedMultiLocation;1456    readonly beneficiary: XcmVersionedMultiLocation;1457    readonly assets: XcmVersionedMultiAssets;1458    readonly feeAssetItem: u32;1459  } & Struct;1460  readonly isReserveTransferAssets: boolean;1461  readonly asReserveTransferAssets: {1462    readonly dest: XcmVersionedMultiLocation;1463    readonly beneficiary: XcmVersionedMultiLocation;1464    readonly assets: XcmVersionedMultiAssets;1465    readonly feeAssetItem: u32;1466  } & Struct;1467  readonly isExecute: boolean;1468  readonly asExecute: {1469    readonly message: XcmVersionedXcm;1470    readonly maxWeight: u64;1471  } & Struct;1472  readonly isForceXcmVersion: boolean;1473  readonly asForceXcmVersion: {1474    readonly location: XcmV1MultiLocation;1475    readonly xcmVersion: u32;1476  } & Struct;1477  readonly isForceDefaultXcmVersion: boolean;1478  readonly asForceDefaultXcmVersion: {1479    readonly maybeXcmVersion: Option<u32>;1480  } & Struct;1481  readonly isForceSubscribeVersionNotify: boolean;1482  readonly asForceSubscribeVersionNotify: {1483    readonly location: XcmVersionedMultiLocation;1484  } & Struct;1485  readonly isForceUnsubscribeVersionNotify: boolean;1486  readonly asForceUnsubscribeVersionNotify: {1487    readonly location: XcmVersionedMultiLocation;1488  } & Struct;1489  readonly isLimitedReserveTransferAssets: boolean;1490  readonly asLimitedReserveTransferAssets: {1491    readonly dest: XcmVersionedMultiLocation;1492    readonly beneficiary: XcmVersionedMultiLocation;1493    readonly assets: XcmVersionedMultiAssets;1494    readonly feeAssetItem: u32;1495    readonly weightLimit: XcmV2WeightLimit;1496  } & Struct;1497  readonly isLimitedTeleportAssets: boolean;1498  readonly asLimitedTeleportAssets: {1499    readonly dest: XcmVersionedMultiLocation;1500    readonly beneficiary: XcmVersionedMultiLocation;1501    readonly assets: XcmVersionedMultiAssets;1502    readonly feeAssetItem: u32;1503    readonly weightLimit: XcmV2WeightLimit;1504  } & Struct;1505  readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';1506}15071508/** @name PalletXcmError */1509export interface PalletXcmError extends Enum {1510  readonly isUnreachable: boolean;1511  readonly isSendFailure: boolean;1512  readonly isFiltered: boolean;1513  readonly isUnweighableMessage: boolean;1514  readonly isDestinationNotInvertible: boolean;1515  readonly isEmpty: boolean;1516  readonly isCannotReanchor: boolean;1517  readonly isTooManyAssets: boolean;1518  readonly isInvalidOrigin: boolean;1519  readonly isBadVersion: boolean;1520  readonly isBadLocation: boolean;1521  readonly isNoSubscription: boolean;1522  readonly isAlreadySubscribed: boolean;1523  readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';1524}15251526/** @name PalletXcmEvent */1527export interface PalletXcmEvent extends Enum {1528  readonly isAttempted: boolean;1529  readonly asAttempted: XcmV2TraitsOutcome;1530  readonly isSent: boolean;1531  readonly asSent: ITuple<[XcmV1MultiLocation, XcmV1MultiLocation, XcmV2Xcm]>;1532  readonly isUnexpectedResponse: boolean;1533  readonly asUnexpectedResponse: ITuple<[XcmV1MultiLocation, u64]>;1534  readonly isResponseReady: boolean;1535  readonly asResponseReady: ITuple<[u64, XcmV2Response]>;1536  readonly isNotified: boolean;1537  readonly asNotified: ITuple<[u64, u8, u8]>;1538  readonly isNotifyOverweight: boolean;1539  readonly asNotifyOverweight: ITuple<[u64, u8, u8, u64, u64]>;1540  readonly isNotifyDispatchError: boolean;1541  readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;1542  readonly isNotifyDecodeFailed: boolean;1543  readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;1544  readonly isInvalidResponder: boolean;1545  readonly asInvalidResponder: ITuple<[XcmV1MultiLocation, u64, Option<XcmV1MultiLocation>]>;1546  readonly isInvalidResponderVersion: boolean;1547  readonly asInvalidResponderVersion: ITuple<[XcmV1MultiLocation, u64]>;1548  readonly isResponseTaken: boolean;1549  readonly asResponseTaken: u64;1550  readonly isAssetsTrapped: boolean;1551  readonly asAssetsTrapped: ITuple<[H256, XcmV1MultiLocation, XcmVersionedMultiAssets]>;1552  readonly isVersionChangeNotified: boolean;1553  readonly asVersionChangeNotified: ITuple<[XcmV1MultiLocation, u32]>;1554  readonly isSupportedVersionChanged: boolean;1555  readonly asSupportedVersionChanged: ITuple<[XcmV1MultiLocation, u32]>;1556  readonly isNotifyTargetSendFail: boolean;1557  readonly asNotifyTargetSendFail: ITuple<[XcmV1MultiLocation, u64, XcmV2TraitsError]>;1558  readonly isNotifyTargetMigrationFail: boolean;1559  readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;1560  readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';1561}15621563/** @name PolkadotCorePrimitivesInboundDownwardMessage */1564export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {1565  readonly sentAt: u32;1566  readonly msg: Bytes;1567}15681569/** @name PolkadotCorePrimitivesInboundHrmpMessage */1570export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {1571  readonly sentAt: u32;1572  readonly data: Bytes;1573}15741575/** @name PolkadotCorePrimitivesOutboundHrmpMessage */1576export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {1577  readonly recipient: u32;1578  readonly data: Bytes;1579}15801581/** @name PolkadotParachainPrimitivesXcmpMessageFormat */1582export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {1583  readonly isConcatenatedVersionedXcm: boolean;1584  readonly isConcatenatedEncodedBlob: boolean;1585  readonly isSignals: boolean;1586  readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';1587}15881589/** @name PolkadotPrimitivesV1AbridgedHostConfiguration */1590export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {1591  readonly maxCodeSize: u32;1592  readonly maxHeadDataSize: u32;1593  readonly maxUpwardQueueCount: u32;1594  readonly maxUpwardQueueSize: u32;1595  readonly maxUpwardMessageSize: u32;1596  readonly maxUpwardMessageNumPerCandidate: u32;1597  readonly hrmpMaxMessageNumPerCandidate: u32;1598  readonly validationUpgradeCooldown: u32;1599  readonly validationUpgradeDelay: u32;1600}16011602/** @name PolkadotPrimitivesV1AbridgedHrmpChannel */1603export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {1604  readonly maxCapacity: u32;1605  readonly maxTotalSize: u32;1606  readonly maxMessageSize: u32;1607  readonly msgCount: u32;1608  readonly totalSize: u32;1609  readonly mqcHead: Option<H256>;1610}16111612/** @name PolkadotPrimitivesV1PersistedValidationData */1613export interface PolkadotPrimitivesV1PersistedValidationData extends Struct {1614  readonly parentHead: Bytes;1615  readonly relayParentNumber: u32;1616  readonly relayParentStorageRoot: H256;1617  readonly maxPovSize: u32;1618}16191620/** @name PolkadotPrimitivesV1UpgradeRestriction */1621export interface PolkadotPrimitivesV1UpgradeRestriction extends Enum {1622  readonly isPresent: boolean;1623  readonly type: 'Present';1624}16251626/** @name SpCoreEcdsaSignature */1627export interface SpCoreEcdsaSignature extends U8aFixed {}16281629/** @name SpCoreEd25519Signature */1630export interface SpCoreEd25519Signature extends U8aFixed {}16311632/** @name SpCoreSr25519Signature */1633export interface SpCoreSr25519Signature extends U8aFixed {}16341635/** @name SpRuntimeArithmeticError */1636export interface SpRuntimeArithmeticError extends Enum {1637  readonly isUnderflow: boolean;1638  readonly isOverflow: boolean;1639  readonly isDivisionByZero: boolean;1640  readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';1641}16421643/** @name SpRuntimeDigest */1644export interface SpRuntimeDigest extends Struct {1645  readonly logs: Vec<SpRuntimeDigestDigestItem>;1646}16471648/** @name SpRuntimeDigestDigestItem */1649export interface SpRuntimeDigestDigestItem extends Enum {1650  readonly isOther: boolean;1651  readonly asOther: Bytes;1652  readonly isConsensus: boolean;1653  readonly asConsensus: ITuple<[U8aFixed, Bytes]>;1654  readonly isSeal: boolean;1655  readonly asSeal: ITuple<[U8aFixed, Bytes]>;1656  readonly isPreRuntime: boolean;1657  readonly asPreRuntime: ITuple<[U8aFixed, Bytes]>;1658  readonly isRuntimeEnvironmentUpdated: boolean;1659  readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';1660}16611662/** @name SpRuntimeDispatchError */1663export interface SpRuntimeDispatchError extends Enum {1664  readonly isOther: boolean;1665  readonly isCannotLookup: boolean;1666  readonly isBadOrigin: boolean;1667  readonly isModule: boolean;1668  readonly asModule: SpRuntimeModuleError;1669  readonly isConsumerRemaining: boolean;1670  readonly isNoProviders: boolean;1671  readonly isTooManyConsumers: boolean;1672  readonly isToken: boolean;1673  readonly asToken: SpRuntimeTokenError;1674  readonly isArithmetic: boolean;1675  readonly asArithmetic: SpRuntimeArithmeticError;1676  readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';1677}16781679/** @name SpRuntimeModuleError */1680export interface SpRuntimeModuleError extends Struct {1681  readonly index: u8;1682  readonly error: u8;1683}16841685/** @name SpRuntimeMultiSignature */1686export interface SpRuntimeMultiSignature extends Enum {1687  readonly isEd25519: boolean;1688  readonly asEd25519: SpCoreEd25519Signature;1689  readonly isSr25519: boolean;1690  readonly asSr25519: SpCoreSr25519Signature;1691  readonly isEcdsa: boolean;1692  readonly asEcdsa: SpCoreEcdsaSignature;1693  readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';1694}16951696/** @name SpRuntimeTokenError */1697export interface SpRuntimeTokenError extends Enum {1698  readonly isNoFunds: boolean;1699  readonly isWouldDie: boolean;1700  readonly isBelowMinimum: boolean;1701  readonly isCannotCreate: boolean;1702  readonly isUnknownAsset: boolean;1703  readonly isFrozen: boolean;1704  readonly isUnsupported: boolean;1705  readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';1706}17071708/** @name SpTrieStorageProof */1709export interface SpTrieStorageProof extends Struct {1710  readonly trieNodes: Vec<Bytes>;1711}17121713/** @name SpVersionRuntimeVersion */1714export interface SpVersionRuntimeVersion extends Struct {1715  readonly specName: Text;1716  readonly implName: Text;1717  readonly authoringVersion: u32;1718  readonly specVersion: u32;1719  readonly implVersion: u32;1720  readonly apis: Vec<ITuple<[U8aFixed, u32]>>;1721  readonly transactionVersion: u32;1722  readonly stateVersion: u8;1723}17241725/** @name UniqueRuntimeRuntime */1726export interface UniqueRuntimeRuntime extends Null {}17271728/** @name UpDataStructsAccessMode */1729export interface UpDataStructsAccessMode extends Enum {1730  readonly isNormal: boolean;1731  readonly isAllowList: boolean;1732  readonly type: 'Normal' | 'AllowList';1733}17341735/** @name UpDataStructsCollection */1736export interface UpDataStructsCollection extends Struct {1737  readonly owner: AccountId32;1738  readonly mode: UpDataStructsCollectionMode;1739  readonly access: UpDataStructsAccessMode;1740  readonly name: Vec<u16>;1741  readonly description: Vec<u16>;1742  readonly tokenPrefix: Bytes;1743  readonly mintMode: bool;1744  readonly offchainSchema: Bytes;1745  readonly schemaVersion: UpDataStructsSchemaVersion;1746  readonly sponsorship: UpDataStructsSponsorshipState;1747  readonly limits: UpDataStructsCollectionLimits;1748  readonly variableOnChainSchema: Bytes;1749  readonly constOnChainSchema: Bytes;1750  readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;1751}17521753/** @name UpDataStructsCollectionLimits */1754export interface UpDataStructsCollectionLimits extends Struct {1755  readonly accountTokenOwnershipLimit: Option<u32>;1756  readonly sponsoredDataSize: Option<u32>;1757  readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;1758  readonly tokenLimit: Option<u32>;1759  readonly sponsorTransferTimeout: Option<u32>;1760  readonly sponsorApproveTimeout: Option<u32>;1761  readonly ownerCanTransfer: Option<bool>;1762  readonly ownerCanDestroy: Option<bool>;1763  readonly transfersEnabled: Option<bool>;1764}17651766/** @name UpDataStructsCollectionMode */1767export interface UpDataStructsCollectionMode extends Enum {1768  readonly isNft: boolean;1769  readonly isFungible: boolean;1770  readonly asFungible: u8;1771  readonly isReFungible: boolean;1772  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1773}17741775/** @name UpDataStructsCollectionStats */1776export interface UpDataStructsCollectionStats extends Struct {1777  readonly created: u32;1778  readonly destroyed: u32;1779  readonly alive: u32;1780}17811782/** @name UpDataStructsCreateCollectionData */1783export interface UpDataStructsCreateCollectionData extends Struct {1784  readonly mode: UpDataStructsCollectionMode;1785  readonly access: Option<UpDataStructsAccessMode>;1786  readonly name: Vec<u16>;1787  readonly description: Vec<u16>;1788  readonly tokenPrefix: Bytes;1789  readonly offchainSchema: Bytes;1790  readonly schemaVersion: Option<UpDataStructsSchemaVersion>;1791  readonly pendingSponsor: Option<AccountId32>;1792  readonly limits: Option<UpDataStructsCollectionLimits>;1793  readonly variableOnChainSchema: Bytes;1794  readonly constOnChainSchema: Bytes;1795  readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;1796}17971798/** @name UpDataStructsCreateFungibleData */1799export interface UpDataStructsCreateFungibleData extends Struct {1800  readonly value: u128;1801}18021803/** @name UpDataStructsCreateItemData */1804export interface UpDataStructsCreateItemData extends Enum {1805  readonly isNft: boolean;1806  readonly asNft: UpDataStructsCreateNftData;1807  readonly isFungible: boolean;1808  readonly asFungible: UpDataStructsCreateFungibleData;1809  readonly isReFungible: boolean;1810  readonly asReFungible: UpDataStructsCreateReFungibleData;1811  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1812}18131814/** @name UpDataStructsCreateItemExData */1815export interface UpDataStructsCreateItemExData extends Enum {1816  readonly isNft: boolean;1817  readonly asNft: Vec<UpDataStructsCreateNftExData>;1818  readonly isFungible: boolean;1819  readonly asFungible: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr,u128>;1820  readonly isRefungibleMultipleItems: boolean;1821  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;1822  readonly isRefungibleMultipleOwners: boolean;1823  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;1824  readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1825}18261827/** @name UpDataStructsCreateNftData */1828export interface UpDataStructsCreateNftData extends Struct {1829  readonly constData: Bytes;1830  readonly variableData: Bytes;1831}18321833/** @name UpDataStructsCreateNftExData */1834export interface UpDataStructsCreateNftExData extends Struct {1835  readonly constData: Bytes;1836  readonly variableData: Bytes;1837  readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1838}18391840/** @name UpDataStructsCreateReFungibleData */1841export interface UpDataStructsCreateReFungibleData extends Struct {1842  readonly constData: Bytes;1843  readonly variableData: Bytes;1844  readonly pieces: u128;1845}18461847/** @name UpDataStructsCreateRefungibleExData */1848export interface UpDataStructsCreateRefungibleExData extends Struct {1849  readonly constData: Bytes;1850  readonly variableData: Bytes;1851  readonly users: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;1852}18531854/** @name UpDataStructsMetaUpdatePermission */1855export interface UpDataStructsMetaUpdatePermission extends Enum {1856  readonly isItemOwner: boolean;1857  readonly isAdmin: boolean;1858  readonly isNone: boolean;1859  readonly type: 'ItemOwner' | 'Admin' | 'None';1860}18611862/** @name UpDataStructsSchemaVersion */1863export interface UpDataStructsSchemaVersion extends Enum {1864  readonly isImageURL: boolean;1865  readonly isUnique: boolean;1866  readonly type: 'ImageURL' | 'Unique';1867}18681869/** @name UpDataStructsSponsoringRateLimit */1870export interface UpDataStructsSponsoringRateLimit extends Enum {1871  readonly isSponsoringDisabled: boolean;1872  readonly isBlocks: boolean;1873  readonly asBlocks: u32;1874  readonly type: 'SponsoringDisabled' | 'Blocks';1875}18761877/** @name UpDataStructsSponsorshipState */1878export interface UpDataStructsSponsorshipState extends Enum {1879  readonly isDisabled: boolean;1880  readonly isUnconfirmed: boolean;1881  readonly asUnconfirmed: AccountId32;1882  readonly isConfirmed: boolean;1883  readonly asConfirmed: AccountId32;1884  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';1885}18861887/** @name XcmDoubleEncoded */1888export interface XcmDoubleEncoded extends Struct {1889  readonly encoded: Bytes;1890}18911892/** @name XcmV0Junction */1893export interface XcmV0Junction extends Enum {1894  readonly isParent: boolean;1895  readonly isParachain: boolean;1896  readonly asParachain: Compact<u32>;1897  readonly isAccountId32: boolean;1898  readonly asAccountId32: {1899    readonly network: XcmV0JunctionNetworkId;1900    readonly id: U8aFixed;1901  } & Struct;1902  readonly isAccountIndex64: boolean;1903  readonly asAccountIndex64: {1904    readonly network: XcmV0JunctionNetworkId;1905    readonly index: Compact<u64>;1906  } & Struct;1907  readonly isAccountKey20: boolean;1908  readonly asAccountKey20: {1909    readonly network: XcmV0JunctionNetworkId;1910    readonly key: U8aFixed;1911  } & Struct;1912  readonly isPalletInstance: boolean;1913  readonly asPalletInstance: u8;1914  readonly isGeneralIndex: boolean;1915  readonly asGeneralIndex: Compact<u128>;1916  readonly isGeneralKey: boolean;1917  readonly asGeneralKey: Bytes;1918  readonly isOnlyChild: boolean;1919  readonly isPlurality: boolean;1920  readonly asPlurality: {1921    readonly id: XcmV0JunctionBodyId;1922    readonly part: XcmV0JunctionBodyPart;1923  } & Struct;1924  readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';1925}19261927/** @name XcmV0JunctionBodyId */1928export interface XcmV0JunctionBodyId extends Enum {1929  readonly isUnit: boolean;1930  readonly isNamed: boolean;1931  readonly asNamed: Bytes;1932  readonly isIndex: boolean;1933  readonly asIndex: Compact<u32>;1934  readonly isExecutive: boolean;1935  readonly isTechnical: boolean;1936  readonly isLegislative: boolean;1937  readonly isJudicial: boolean;1938  readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';1939}19401941/** @name XcmV0JunctionBodyPart */1942export interface XcmV0JunctionBodyPart extends Enum {1943  readonly isVoice: boolean;1944  readonly isMembers: boolean;1945  readonly asMembers: {1946    readonly count: Compact<u32>;1947  } & Struct;1948  readonly isFraction: boolean;1949  readonly asFraction: {1950    readonly nom: Compact<u32>;1951    readonly denom: Compact<u32>;1952  } & Struct;1953  readonly isAtLeastProportion: boolean;1954  readonly asAtLeastProportion: {1955    readonly nom: Compact<u32>;1956    readonly denom: Compact<u32>;1957  } & Struct;1958  readonly isMoreThanProportion: boolean;1959  readonly asMoreThanProportion: {1960    readonly nom: Compact<u32>;1961    readonly denom: Compact<u32>;1962  } & Struct;1963  readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';1964}19651966/** @name XcmV0JunctionNetworkId */1967export interface XcmV0JunctionNetworkId extends Enum {1968  readonly isAny: boolean;1969  readonly isNamed: boolean;1970  readonly asNamed: Bytes;1971  readonly isPolkadot: boolean;1972  readonly isKusama: boolean;1973  readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';1974}19751976/** @name XcmV0MultiAsset */1977export interface XcmV0MultiAsset extends Enum {1978  readonly isNone: boolean;1979  readonly isAll: boolean;1980  readonly isAllFungible: boolean;1981  readonly isAllNonFungible: boolean;1982  readonly isAllAbstractFungible: boolean;1983  readonly asAllAbstractFungible: {1984    readonly id: Bytes;1985  } & Struct;1986  readonly isAllAbstractNonFungible: boolean;1987  readonly asAllAbstractNonFungible: {1988    readonly class: Bytes;1989  } & Struct;1990  readonly isAllConcreteFungible: boolean;1991  readonly asAllConcreteFungible: {1992    readonly id: XcmV0MultiLocation;1993  } & Struct;1994  readonly isAllConcreteNonFungible: boolean;1995  readonly asAllConcreteNonFungible: {1996    readonly class: XcmV0MultiLocation;1997  } & Struct;1998  readonly isAbstractFungible: boolean;1999  readonly asAbstractFungible: {2000    readonly id: Bytes;2001    readonly amount: Compact<u128>;2002  } & Struct;2003  readonly isAbstractNonFungible: boolean;2004  readonly asAbstractNonFungible: {2005    readonly class: Bytes;2006    readonly instance: XcmV1MultiassetAssetInstance;2007  } & Struct;2008  readonly isConcreteFungible: boolean;2009  readonly asConcreteFungible: {2010    readonly id: XcmV0MultiLocation;2011    readonly amount: Compact<u128>;2012  } & Struct;2013  readonly isConcreteNonFungible: boolean;2014  readonly asConcreteNonFungible: {2015    readonly class: XcmV0MultiLocation;2016    readonly instance: XcmV1MultiassetAssetInstance;2017  } & Struct;2018  readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';2019}20202021/** @name XcmV0MultiLocation */2022export interface XcmV0MultiLocation extends Enum {2023  readonly isNull: boolean;2024  readonly isX1: boolean;2025  readonly asX1: XcmV0Junction;2026  readonly isX2: boolean;2027  readonly asX2: ITuple<[XcmV0Junction, XcmV0Junction]>;2028  readonly isX3: boolean;2029  readonly asX3: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2030  readonly isX4: boolean;2031  readonly asX4: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2032  readonly isX5: boolean;2033  readonly asX5: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2034  readonly isX6: boolean;2035  readonly asX6: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2036  readonly isX7: boolean;2037  readonly asX7: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2038  readonly isX8: boolean;2039  readonly asX8: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2040  readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2041}20422043/** @name XcmV0Order */2044export interface XcmV0Order extends Enum {2045  readonly isNull: boolean;2046  readonly isDepositAsset: boolean;2047  readonly asDepositAsset: {2048    readonly assets: Vec<XcmV0MultiAsset>;2049    readonly dest: XcmV0MultiLocation;2050  } & Struct;2051  readonly isDepositReserveAsset: boolean;2052  readonly asDepositReserveAsset: {2053    readonly assets: Vec<XcmV0MultiAsset>;2054    readonly dest: XcmV0MultiLocation;2055    readonly effects: Vec<XcmV0Order>;2056  } & Struct;2057  readonly isExchangeAsset: boolean;2058  readonly asExchangeAsset: {2059    readonly give: Vec<XcmV0MultiAsset>;2060    readonly receive: Vec<XcmV0MultiAsset>;2061  } & Struct;2062  readonly isInitiateReserveWithdraw: boolean;2063  readonly asInitiateReserveWithdraw: {2064    readonly assets: Vec<XcmV0MultiAsset>;2065    readonly reserve: XcmV0MultiLocation;2066    readonly effects: Vec<XcmV0Order>;2067  } & Struct;2068  readonly isInitiateTeleport: boolean;2069  readonly asInitiateTeleport: {2070    readonly assets: Vec<XcmV0MultiAsset>;2071    readonly dest: XcmV0MultiLocation;2072    readonly effects: Vec<XcmV0Order>;2073  } & Struct;2074  readonly isQueryHolding: boolean;2075  readonly asQueryHolding: {2076    readonly queryId: Compact<u64>;2077    readonly dest: XcmV0MultiLocation;2078    readonly assets: Vec<XcmV0MultiAsset>;2079  } & Struct;2080  readonly isBuyExecution: boolean;2081  readonly asBuyExecution: {2082    readonly fees: XcmV0MultiAsset;2083    readonly weight: u64;2084    readonly debt: u64;2085    readonly haltOnError: bool;2086    readonly xcm: Vec<XcmV0Xcm>;2087  } & Struct;2088  readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2089}20902091/** @name XcmV0OriginKind */2092export interface XcmV0OriginKind extends Enum {2093  readonly isNative: boolean;2094  readonly isSovereignAccount: boolean;2095  readonly isSuperuser: boolean;2096  readonly isXcm: boolean;2097  readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';2098}20992100/** @name XcmV0Response */2101export interface XcmV0Response extends Enum {2102  readonly isAssets: boolean;2103  readonly asAssets: Vec<XcmV0MultiAsset>;2104  readonly type: 'Assets';2105}21062107/** @name XcmV0Xcm */2108export interface XcmV0Xcm extends Enum {2109  readonly isWithdrawAsset: boolean;2110  readonly asWithdrawAsset: {2111    readonly assets: Vec<XcmV0MultiAsset>;2112    readonly effects: Vec<XcmV0Order>;2113  } & Struct;2114  readonly isReserveAssetDeposit: boolean;2115  readonly asReserveAssetDeposit: {2116    readonly assets: Vec<XcmV0MultiAsset>;2117    readonly effects: Vec<XcmV0Order>;2118  } & Struct;2119  readonly isTeleportAsset: boolean;2120  readonly asTeleportAsset: {2121    readonly assets: Vec<XcmV0MultiAsset>;2122    readonly effects: Vec<XcmV0Order>;2123  } & Struct;2124  readonly isQueryResponse: boolean;2125  readonly asQueryResponse: {2126    readonly queryId: Compact<u64>;2127    readonly response: XcmV0Response;2128  } & Struct;2129  readonly isTransferAsset: boolean;2130  readonly asTransferAsset: {2131    readonly assets: Vec<XcmV0MultiAsset>;2132    readonly dest: XcmV0MultiLocation;2133  } & Struct;2134  readonly isTransferReserveAsset: boolean;2135  readonly asTransferReserveAsset: {2136    readonly assets: Vec<XcmV0MultiAsset>;2137    readonly dest: XcmV0MultiLocation;2138    readonly effects: Vec<XcmV0Order>;2139  } & Struct;2140  readonly isTransact: boolean;2141  readonly asTransact: {2142    readonly originType: XcmV0OriginKind;2143    readonly requireWeightAtMost: u64;2144    readonly call: XcmDoubleEncoded;2145  } & Struct;2146  readonly isHrmpNewChannelOpenRequest: boolean;2147  readonly asHrmpNewChannelOpenRequest: {2148    readonly sender: Compact<u32>;2149    readonly maxMessageSize: Compact<u32>;2150    readonly maxCapacity: Compact<u32>;2151  } & Struct;2152  readonly isHrmpChannelAccepted: boolean;2153  readonly asHrmpChannelAccepted: {2154    readonly recipient: Compact<u32>;2155  } & Struct;2156  readonly isHrmpChannelClosing: boolean;2157  readonly asHrmpChannelClosing: {2158    readonly initiator: Compact<u32>;2159    readonly sender: Compact<u32>;2160    readonly recipient: Compact<u32>;2161  } & Struct;2162  readonly isRelayedFrom: boolean;2163  readonly asRelayedFrom: {2164    readonly who: XcmV0MultiLocation;2165    readonly message: XcmV0Xcm;2166  } & Struct;2167  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';2168}21692170/** @name XcmV1Junction */2171export interface XcmV1Junction extends Enum {2172  readonly isParachain: boolean;2173  readonly asParachain: Compact<u32>;2174  readonly isAccountId32: boolean;2175  readonly asAccountId32: {2176    readonly network: XcmV0JunctionNetworkId;2177    readonly id: U8aFixed;2178  } & Struct;2179  readonly isAccountIndex64: boolean;2180  readonly asAccountIndex64: {2181    readonly network: XcmV0JunctionNetworkId;2182    readonly index: Compact<u64>;2183  } & Struct;2184  readonly isAccountKey20: boolean;2185  readonly asAccountKey20: {2186    readonly network: XcmV0JunctionNetworkId;2187    readonly key: U8aFixed;2188  } & Struct;2189  readonly isPalletInstance: boolean;2190  readonly asPalletInstance: u8;2191  readonly isGeneralIndex: boolean;2192  readonly asGeneralIndex: Compact<u128>;2193  readonly isGeneralKey: boolean;2194  readonly asGeneralKey: Bytes;2195  readonly isOnlyChild: boolean;2196  readonly isPlurality: boolean;2197  readonly asPlurality: {2198    readonly id: XcmV0JunctionBodyId;2199    readonly part: XcmV0JunctionBodyPart;2200  } & Struct;2201  readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';2202}22032204/** @name XcmV1MultiAsset */2205export interface XcmV1MultiAsset extends Struct {2206  readonly id: XcmV1MultiassetAssetId;2207  readonly fun: XcmV1MultiassetFungibility;2208}22092210/** @name XcmV1MultiassetAssetId */2211export interface XcmV1MultiassetAssetId extends Enum {2212  readonly isConcrete: boolean;2213  readonly asConcrete: XcmV1MultiLocation;2214  readonly isAbstract: boolean;2215  readonly asAbstract: Bytes;2216  readonly type: 'Concrete' | 'Abstract';2217}22182219/** @name XcmV1MultiassetAssetInstance */2220export interface XcmV1MultiassetAssetInstance extends Enum {2221  readonly isUndefined: boolean;2222  readonly isIndex: boolean;2223  readonly asIndex: Compact<u128>;2224  readonly isArray4: boolean;2225  readonly asArray4: U8aFixed;2226  readonly isArray8: boolean;2227  readonly asArray8: U8aFixed;2228  readonly isArray16: boolean;2229  readonly asArray16: U8aFixed;2230  readonly isArray32: boolean;2231  readonly asArray32: U8aFixed;2232  readonly isBlob: boolean;2233  readonly asBlob: Bytes;2234  readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';2235}22362237/** @name XcmV1MultiassetFungibility */2238export interface XcmV1MultiassetFungibility extends Enum {2239  readonly isFungible: boolean;2240  readonly asFungible: Compact<u128>;2241  readonly isNonFungible: boolean;2242  readonly asNonFungible: XcmV1MultiassetAssetInstance;2243  readonly type: 'Fungible' | 'NonFungible';2244}22452246/** @name XcmV1MultiassetMultiAssetFilter */2247export interface XcmV1MultiassetMultiAssetFilter extends Enum {2248  readonly isDefinite: boolean;2249  readonly asDefinite: XcmV1MultiassetMultiAssets;2250  readonly isWild: boolean;2251  readonly asWild: XcmV1MultiassetWildMultiAsset;2252  readonly type: 'Definite' | 'Wild';2253}22542255/** @name XcmV1MultiassetMultiAssets */2256export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}22572258/** @name XcmV1MultiassetWildFungibility */2259export interface XcmV1MultiassetWildFungibility extends Enum {2260  readonly isFungible: boolean;2261  readonly isNonFungible: boolean;2262  readonly type: 'Fungible' | 'NonFungible';2263}22642265/** @name XcmV1MultiassetWildMultiAsset */2266export interface XcmV1MultiassetWildMultiAsset extends Enum {2267  readonly isAll: boolean;2268  readonly isAllOf: boolean;2269  readonly asAllOf: {2270    readonly id: XcmV1MultiassetAssetId;2271    readonly fun: XcmV1MultiassetWildFungibility;2272  } & Struct;2273  readonly type: 'All' | 'AllOf';2274}22752276/** @name XcmV1MultiLocation */2277export interface XcmV1MultiLocation extends Struct {2278  readonly parents: u8;2279  readonly interior: XcmV1MultilocationJunctions;2280}22812282/** @name XcmV1MultilocationJunctions */2283export interface XcmV1MultilocationJunctions extends Enum {2284  readonly isHere: boolean;2285  readonly isX1: boolean;2286  readonly asX1: XcmV1Junction;2287  readonly isX2: boolean;2288  readonly asX2: ITuple<[XcmV1Junction, XcmV1Junction]>;2289  readonly isX3: boolean;2290  readonly asX3: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2291  readonly isX4: boolean;2292  readonly asX4: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2293  readonly isX5: boolean;2294  readonly asX5: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2295  readonly isX6: boolean;2296  readonly asX6: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2297  readonly isX7: boolean;2298  readonly asX7: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2299  readonly isX8: boolean;2300  readonly asX8: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2301  readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2302}23032304/** @name XcmV1Order */2305export interface XcmV1Order extends Enum {2306  readonly isNoop: boolean;2307  readonly isDepositAsset: boolean;2308  readonly asDepositAsset: {2309    readonly assets: XcmV1MultiassetMultiAssetFilter;2310    readonly maxAssets: u32;2311    readonly beneficiary: XcmV1MultiLocation;2312  } & Struct;2313  readonly isDepositReserveAsset: boolean;2314  readonly asDepositReserveAsset: {2315    readonly assets: XcmV1MultiassetMultiAssetFilter;2316    readonly maxAssets: u32;2317    readonly dest: XcmV1MultiLocation;2318    readonly effects: Vec<XcmV1Order>;2319  } & Struct;2320  readonly isExchangeAsset: boolean;2321  readonly asExchangeAsset: {2322    readonly give: XcmV1MultiassetMultiAssetFilter;2323    readonly receive: XcmV1MultiassetMultiAssets;2324  } & Struct;2325  readonly isInitiateReserveWithdraw: boolean;2326  readonly asInitiateReserveWithdraw: {2327    readonly assets: XcmV1MultiassetMultiAssetFilter;2328    readonly reserve: XcmV1MultiLocation;2329    readonly effects: Vec<XcmV1Order>;2330  } & Struct;2331  readonly isInitiateTeleport: boolean;2332  readonly asInitiateTeleport: {2333    readonly assets: XcmV1MultiassetMultiAssetFilter;2334    readonly dest: XcmV1MultiLocation;2335    readonly effects: Vec<XcmV1Order>;2336  } & Struct;2337  readonly isQueryHolding: boolean;2338  readonly asQueryHolding: {2339    readonly queryId: Compact<u64>;2340    readonly dest: XcmV1MultiLocation;2341    readonly assets: XcmV1MultiassetMultiAssetFilter;2342  } & Struct;2343  readonly isBuyExecution: boolean;2344  readonly asBuyExecution: {2345    readonly fees: XcmV1MultiAsset;2346    readonly weight: u64;2347    readonly debt: u64;2348    readonly haltOnError: bool;2349    readonly instructions: Vec<XcmV1Xcm>;2350  } & Struct;2351  readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2352}23532354/** @name XcmV1Response */2355export interface XcmV1Response extends Enum {2356  readonly isAssets: boolean;2357  readonly asAssets: XcmV1MultiassetMultiAssets;2358  readonly isVersion: boolean;2359  readonly asVersion: u32;2360  readonly type: 'Assets' | 'Version';2361}23622363/** @name XcmV1Xcm */2364export interface XcmV1Xcm extends Enum {2365  readonly isWithdrawAsset: boolean;2366  readonly asWithdrawAsset: {2367    readonly assets: XcmV1MultiassetMultiAssets;2368    readonly effects: Vec<XcmV1Order>;2369  } & Struct;2370  readonly isReserveAssetDeposited: boolean;2371  readonly asReserveAssetDeposited: {2372    readonly assets: XcmV1MultiassetMultiAssets;2373    readonly effects: Vec<XcmV1Order>;2374  } & Struct;2375  readonly isReceiveTeleportedAsset: boolean;2376  readonly asReceiveTeleportedAsset: {2377    readonly assets: XcmV1MultiassetMultiAssets;2378    readonly effects: Vec<XcmV1Order>;2379  } & Struct;2380  readonly isQueryResponse: boolean;2381  readonly asQueryResponse: {2382    readonly queryId: Compact<u64>;2383    readonly response: XcmV1Response;2384  } & Struct;2385  readonly isTransferAsset: boolean;2386  readonly asTransferAsset: {2387    readonly assets: XcmV1MultiassetMultiAssets;2388    readonly beneficiary: XcmV1MultiLocation;2389  } & Struct;2390  readonly isTransferReserveAsset: boolean;2391  readonly asTransferReserveAsset: {2392    readonly assets: XcmV1MultiassetMultiAssets;2393    readonly dest: XcmV1MultiLocation;2394    readonly effects: Vec<XcmV1Order>;2395  } & Struct;2396  readonly isTransact: boolean;2397  readonly asTransact: {2398    readonly originType: XcmV0OriginKind;2399    readonly requireWeightAtMost: u64;2400    readonly call: XcmDoubleEncoded;2401  } & Struct;2402  readonly isHrmpNewChannelOpenRequest: boolean;2403  readonly asHrmpNewChannelOpenRequest: {2404    readonly sender: Compact<u32>;2405    readonly maxMessageSize: Compact<u32>;2406    readonly maxCapacity: Compact<u32>;2407  } & Struct;2408  readonly isHrmpChannelAccepted: boolean;2409  readonly asHrmpChannelAccepted: {2410    readonly recipient: Compact<u32>;2411  } & Struct;2412  readonly isHrmpChannelClosing: boolean;2413  readonly asHrmpChannelClosing: {2414    readonly initiator: Compact<u32>;2415    readonly sender: Compact<u32>;2416    readonly recipient: Compact<u32>;2417  } & Struct;2418  readonly isRelayedFrom: boolean;2419  readonly asRelayedFrom: {2420    readonly who: XcmV1MultilocationJunctions;2421    readonly message: XcmV1Xcm;2422  } & Struct;2423  readonly isSubscribeVersion: boolean;2424  readonly asSubscribeVersion: {2425    readonly queryId: Compact<u64>;2426    readonly maxResponseWeight: Compact<u64>;2427  } & Struct;2428  readonly isUnsubscribeVersion: boolean;2429  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';2430}24312432/** @name XcmV2Instruction */2433export interface XcmV2Instruction extends Enum {2434  readonly isWithdrawAsset: boolean;2435  readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;2436  readonly isReserveAssetDeposited: boolean;2437  readonly asReserveAssetDeposited: XcmV1MultiassetMultiAssets;2438  readonly isReceiveTeleportedAsset: boolean;2439  readonly asReceiveTeleportedAsset: XcmV1MultiassetMultiAssets;2440  readonly isQueryResponse: boolean;2441  readonly asQueryResponse: {2442    readonly queryId: Compact<u64>;2443    readonly response: XcmV2Response;2444    readonly maxWeight: Compact<u64>;2445  } & Struct;2446  readonly isTransferAsset: boolean;2447  readonly asTransferAsset: {2448    readonly assets: XcmV1MultiassetMultiAssets;2449    readonly beneficiary: XcmV1MultiLocation;2450  } & Struct;2451  readonly isTransferReserveAsset: boolean;2452  readonly asTransferReserveAsset: {2453    readonly assets: XcmV1MultiassetMultiAssets;2454    readonly dest: XcmV1MultiLocation;2455    readonly xcm: XcmV2Xcm;2456  } & Struct;2457  readonly isTransact: boolean;2458  readonly asTransact: {2459    readonly originType: XcmV0OriginKind;2460    readonly requireWeightAtMost: Compact<u64>;2461    readonly call: XcmDoubleEncoded;2462  } & Struct;2463  readonly isHrmpNewChannelOpenRequest: boolean;2464  readonly asHrmpNewChannelOpenRequest: {2465    readonly sender: Compact<u32>;2466    readonly maxMessageSize: Compact<u32>;2467    readonly maxCapacity: Compact<u32>;2468  } & Struct;2469  readonly isHrmpChannelAccepted: boolean;2470  readonly asHrmpChannelAccepted: {2471    readonly recipient: Compact<u32>;2472  } & Struct;2473  readonly isHrmpChannelClosing: boolean;2474  readonly asHrmpChannelClosing: {2475    readonly initiator: Compact<u32>;2476    readonly sender: Compact<u32>;2477    readonly recipient: Compact<u32>;2478  } & Struct;2479  readonly isClearOrigin: boolean;2480  readonly isDescendOrigin: boolean;2481  readonly asDescendOrigin: XcmV1MultilocationJunctions;2482  readonly isReportError: boolean;2483  readonly asReportError: {2484    readonly queryId: Compact<u64>;2485    readonly dest: XcmV1MultiLocation;2486    readonly maxResponseWeight: Compact<u64>;2487  } & Struct;2488  readonly isDepositAsset: boolean;2489  readonly asDepositAsset: {2490    readonly assets: XcmV1MultiassetMultiAssetFilter;2491    readonly maxAssets: Compact<u32>;2492    readonly beneficiary: XcmV1MultiLocation;2493  } & Struct;2494  readonly isDepositReserveAsset: boolean;2495  readonly asDepositReserveAsset: {2496    readonly assets: XcmV1MultiassetMultiAssetFilter;2497    readonly maxAssets: Compact<u32>;2498    readonly dest: XcmV1MultiLocation;2499    readonly xcm: XcmV2Xcm;2500  } & Struct;2501  readonly isExchangeAsset: boolean;2502  readonly asExchangeAsset: {2503    readonly give: XcmV1MultiassetMultiAssetFilter;2504    readonly receive: XcmV1MultiassetMultiAssets;2505  } & Struct;2506  readonly isInitiateReserveWithdraw: boolean;2507  readonly asInitiateReserveWithdraw: {2508    readonly assets: XcmV1MultiassetMultiAssetFilter;2509    readonly reserve: XcmV1MultiLocation;2510    readonly xcm: XcmV2Xcm;2511  } & Struct;2512  readonly isInitiateTeleport: boolean;2513  readonly asInitiateTeleport: {2514    readonly assets: XcmV1MultiassetMultiAssetFilter;2515    readonly dest: XcmV1MultiLocation;2516    readonly xcm: XcmV2Xcm;2517  } & Struct;2518  readonly isQueryHolding: boolean;2519  readonly asQueryHolding: {2520    readonly queryId: Compact<u64>;2521    readonly dest: XcmV1MultiLocation;2522    readonly assets: XcmV1MultiassetMultiAssetFilter;2523    readonly maxResponseWeight: Compact<u64>;2524  } & Struct;2525  readonly isBuyExecution: boolean;2526  readonly asBuyExecution: {2527    readonly fees: XcmV1MultiAsset;2528    readonly weightLimit: XcmV2WeightLimit;2529  } & Struct;2530  readonly isRefundSurplus: boolean;2531  readonly isSetErrorHandler: boolean;2532  readonly asSetErrorHandler: XcmV2Xcm;2533  readonly isSetAppendix: boolean;2534  readonly asSetAppendix: XcmV2Xcm;2535  readonly isClearError: boolean;2536  readonly isClaimAsset: boolean;2537  readonly asClaimAsset: {2538    readonly assets: XcmV1MultiassetMultiAssets;2539    readonly ticket: XcmV1MultiLocation;2540  } & Struct;2541  readonly isTrap: boolean;2542  readonly asTrap: Compact<u64>;2543  readonly isSubscribeVersion: boolean;2544  readonly asSubscribeVersion: {2545    readonly queryId: Compact<u64>;2546    readonly maxResponseWeight: Compact<u64>;2547  } & Struct;2548  readonly isUnsubscribeVersion: boolean;2549  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';2550}25512552/** @name XcmV2Response */2553export interface XcmV2Response extends Enum {2554  readonly isNull: boolean;2555  readonly isAssets: boolean;2556  readonly asAssets: XcmV1MultiassetMultiAssets;2557  readonly isExecutionResult: boolean;2558  readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;2559  readonly isVersion: boolean;2560  readonly asVersion: u32;2561  readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';2562}25632564/** @name XcmV2TraitsError */2565export interface XcmV2TraitsError extends Enum {2566  readonly isOverflow: boolean;2567  readonly isUnimplemented: boolean;2568  readonly isUntrustedReserveLocation: boolean;2569  readonly isUntrustedTeleportLocation: boolean;2570  readonly isMultiLocationFull: boolean;2571  readonly isMultiLocationNotInvertible: boolean;2572  readonly isBadOrigin: boolean;2573  readonly isInvalidLocation: boolean;2574  readonly isAssetNotFound: boolean;2575  readonly isFailedToTransactAsset: boolean;2576  readonly isNotWithdrawable: boolean;2577  readonly isLocationCannotHold: boolean;2578  readonly isExceedsMaxMessageSize: boolean;2579  readonly isDestinationUnsupported: boolean;2580  readonly isTransport: boolean;2581  readonly isUnroutable: boolean;2582  readonly isUnknownClaim: boolean;2583  readonly isFailedToDecode: boolean;2584  readonly isMaxWeightInvalid: boolean;2585  readonly isNotHoldingFees: boolean;2586  readonly isTooExpensive: boolean;2587  readonly isTrap: boolean;2588  readonly asTrap: u64;2589  readonly isUnhandledXcmVersion: boolean;2590  readonly isWeightLimitReached: boolean;2591  readonly asWeightLimitReached: u64;2592  readonly isBarrier: boolean;2593  readonly isWeightNotComputable: boolean;2594  readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';2595}25962597/** @name XcmV2TraitsOutcome */2598export interface XcmV2TraitsOutcome extends Enum {2599  readonly isComplete: boolean;2600  readonly asComplete: u64;2601  readonly isIncomplete: boolean;2602  readonly asIncomplete: ITuple<[u64, XcmV2TraitsError]>;2603  readonly isError: boolean;2604  readonly asError: XcmV2TraitsError;2605  readonly type: 'Complete' | 'Incomplete' | 'Error';2606}26072608/** @name XcmV2WeightLimit */2609export interface XcmV2WeightLimit extends Enum {2610  readonly isUnlimited: boolean;2611  readonly isLimited: boolean;2612  readonly asLimited: Compact<u64>;2613  readonly type: 'Unlimited' | 'Limited';2614}26152616/** @name XcmV2Xcm */2617export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}26182619/** @name XcmVersionedMultiAssets */2620export interface XcmVersionedMultiAssets extends Enum {2621  readonly isV0: boolean;2622  readonly asV0: Vec<XcmV0MultiAsset>;2623  readonly isV1: boolean;2624  readonly asV1: XcmV1MultiassetMultiAssets;2625  readonly type: 'V0' | 'V1';2626}26272628/** @name XcmVersionedMultiLocation */2629export interface XcmVersionedMultiLocation extends Enum {2630  readonly isV0: boolean;2631  readonly asV0: XcmV0MultiLocation;2632  readonly isV1: boolean;2633  readonly asV1: XcmV1MultiLocation;2634  readonly type: 'V0' | 'V1';2635}26362637/** @name XcmVersionedXcm */2638export interface XcmVersionedXcm extends Enum {2639  readonly isV0: boolean;2640  readonly asV0: XcmV0Xcm;2641  readonly isV1: boolean;2642  readonly asV1: XcmV1Xcm;2643  readonly isV2: boolean;2644  readonly asV2: XcmV2Xcm;2645  readonly type: 'V0' | 'V1' | 'V2';2646}26472648export type PHANTOM_UNIQUE = 'unique';
after · tests/src/interfaces/unique/types.ts
1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34import type { BTreeMap, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';5import type { ITuple } from '@polkadot/types-codec/types';6import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';7import type { Event } from '@polkadot/types/interfaces/system';89/** @name BTreeSet */10export interface BTreeSet extends Vec<Bytes> {}1112/** @name CumulusPalletDmpQueueCall */13export interface CumulusPalletDmpQueueCall extends Enum {14  readonly isServiceOverweight: boolean;15  readonly asServiceOverweight: {16    readonly index: u64;17    readonly weightLimit: u64;18  } & Struct;19  readonly type: 'ServiceOverweight';20}2122/** @name CumulusPalletDmpQueueConfigData */23export interface CumulusPalletDmpQueueConfigData extends Struct {24  readonly maxIndividual: u64;25}2627/** @name CumulusPalletDmpQueueError */28export interface CumulusPalletDmpQueueError extends Enum {29  readonly isUnknown: boolean;30  readonly isOverLimit: boolean;31  readonly type: 'Unknown' | 'OverLimit';32}3334/** @name CumulusPalletDmpQueueEvent */35export interface CumulusPalletDmpQueueEvent extends Enum {36  readonly isInvalidFormat: boolean;37  readonly asInvalidFormat: U8aFixed;38  readonly isUnsupportedVersion: boolean;39  readonly asUnsupportedVersion: U8aFixed;40  readonly isExecutedDownward: boolean;41  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;42  readonly isWeightExhausted: boolean;43  readonly asWeightExhausted: ITuple<[U8aFixed, u64, u64]>;44  readonly isOverweightEnqueued: boolean;45  readonly asOverweightEnqueued: ITuple<[U8aFixed, u64, u64]>;46  readonly isOverweightServiced: boolean;47  readonly asOverweightServiced: ITuple<[u64, u64]>;48  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';49}5051/** @name CumulusPalletDmpQueuePageIndexData */52export interface CumulusPalletDmpQueuePageIndexData extends Struct {53  readonly beginUsed: u32;54  readonly endUsed: u32;55  readonly overweightCount: u64;56}5758/** @name CumulusPalletParachainSystemCall */59export interface CumulusPalletParachainSystemCall extends Enum {60  readonly isSetValidationData: boolean;61  readonly asSetValidationData: {62    readonly data: CumulusPrimitivesParachainInherentParachainInherentData;63  } & Struct;64  readonly isSudoSendUpwardMessage: boolean;65  readonly asSudoSendUpwardMessage: {66    readonly message: Bytes;67  } & Struct;68  readonly isAuthorizeUpgrade: boolean;69  readonly asAuthorizeUpgrade: {70    readonly codeHash: H256;71  } & Struct;72  readonly isEnactAuthorizedUpgrade: boolean;73  readonly asEnactAuthorizedUpgrade: {74    readonly code: Bytes;75  } & Struct;76  readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';77}7879/** @name CumulusPalletParachainSystemError */80export interface CumulusPalletParachainSystemError extends Enum {81  readonly isOverlappingUpgrades: boolean;82  readonly isProhibitedByPolkadot: boolean;83  readonly isTooBig: boolean;84  readonly isValidationDataNotAvailable: boolean;85  readonly isHostConfigurationNotAvailable: boolean;86  readonly isNotScheduled: boolean;87  readonly isNothingAuthorized: boolean;88  readonly isUnauthorized: boolean;89  readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';90}9192/** @name CumulusPalletParachainSystemEvent */93export interface CumulusPalletParachainSystemEvent extends Enum {94  readonly isValidationFunctionStored: boolean;95  readonly isValidationFunctionApplied: boolean;96  readonly asValidationFunctionApplied: u32;97  readonly isValidationFunctionDiscarded: boolean;98  readonly isUpgradeAuthorized: boolean;99  readonly asUpgradeAuthorized: H256;100  readonly isDownwardMessagesReceived: boolean;101  readonly asDownwardMessagesReceived: u32;102  readonly isDownwardMessagesProcessed: boolean;103  readonly asDownwardMessagesProcessed: ITuple<[u64, H256]>;104  readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';105}106107/** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot */108export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {109  readonly dmqMqcHead: H256;110  readonly relayDispatchQueueSize: ITuple<[u32, u32]>;111  readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;112  readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;113}114115/** @name CumulusPalletXcmCall */116export interface CumulusPalletXcmCall extends Null {}117118/** @name CumulusPalletXcmError */119export interface CumulusPalletXcmError extends Null {}120121/** @name CumulusPalletXcmEvent */122export interface CumulusPalletXcmEvent extends Enum {123  readonly isInvalidFormat: boolean;124  readonly asInvalidFormat: U8aFixed;125  readonly isUnsupportedVersion: boolean;126  readonly asUnsupportedVersion: U8aFixed;127  readonly isExecutedDownward: boolean;128  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;129  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';130}131132/** @name CumulusPalletXcmpQueueCall */133export interface CumulusPalletXcmpQueueCall extends Enum {134  readonly isServiceOverweight: boolean;135  readonly asServiceOverweight: {136    readonly index: u64;137    readonly weightLimit: u64;138  } & Struct;139  readonly isSuspendXcmExecution: boolean;140  readonly isResumeXcmExecution: boolean;141  readonly isUpdateSuspendThreshold: boolean;142  readonly asUpdateSuspendThreshold: {143    readonly new_: u32;144  } & Struct;145  readonly isUpdateDropThreshold: boolean;146  readonly asUpdateDropThreshold: {147    readonly new_: u32;148  } & Struct;149  readonly isUpdateResumeThreshold: boolean;150  readonly asUpdateResumeThreshold: {151    readonly new_: u32;152  } & Struct;153  readonly isUpdateThresholdWeight: boolean;154  readonly asUpdateThresholdWeight: {155    readonly new_: u64;156  } & Struct;157  readonly isUpdateWeightRestrictDecay: boolean;158  readonly asUpdateWeightRestrictDecay: {159    readonly new_: u64;160  } & Struct;161  readonly isUpdateXcmpMaxIndividualWeight: boolean;162  readonly asUpdateXcmpMaxIndividualWeight: {163    readonly new_: u64;164  } & Struct;165  readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';166}167168/** @name CumulusPalletXcmpQueueError */169export interface CumulusPalletXcmpQueueError extends Enum {170  readonly isFailedToSend: boolean;171  readonly isBadXcmOrigin: boolean;172  readonly isBadXcm: boolean;173  readonly isBadOverweightIndex: boolean;174  readonly isWeightOverLimit: boolean;175  readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';176}177178/** @name CumulusPalletXcmpQueueEvent */179export interface CumulusPalletXcmpQueueEvent extends Enum {180  readonly isSuccess: boolean;181  readonly asSuccess: Option<H256>;182  readonly isFail: boolean;183  readonly asFail: ITuple<[Option<H256>, XcmV2TraitsError]>;184  readonly isBadVersion: boolean;185  readonly asBadVersion: Option<H256>;186  readonly isBadFormat: boolean;187  readonly asBadFormat: Option<H256>;188  readonly isUpwardMessageSent: boolean;189  readonly asUpwardMessageSent: Option<H256>;190  readonly isXcmpMessageSent: boolean;191  readonly asXcmpMessageSent: Option<H256>;192  readonly isOverweightEnqueued: boolean;193  readonly asOverweightEnqueued: ITuple<[u32, u32, u64, u64]>;194  readonly isOverweightServiced: boolean;195  readonly asOverweightServiced: ITuple<[u64, u64]>;196  readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';197}198199/** @name CumulusPalletXcmpQueueInboundChannelDetails */200export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {201  readonly sender: u32;202  readonly state: CumulusPalletXcmpQueueInboundState;203  readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;204}205206/** @name CumulusPalletXcmpQueueInboundState */207export interface CumulusPalletXcmpQueueInboundState extends Enum {208  readonly isOk: boolean;209  readonly isSuspended: boolean;210  readonly type: 'Ok' | 'Suspended';211}212213/** @name CumulusPalletXcmpQueueOutboundChannelDetails */214export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {215  readonly recipient: u32;216  readonly state: CumulusPalletXcmpQueueOutboundState;217  readonly signalsExist: bool;218  readonly firstIndex: u16;219  readonly lastIndex: u16;220}221222/** @name CumulusPalletXcmpQueueOutboundState */223export interface CumulusPalletXcmpQueueOutboundState extends Enum {224  readonly isOk: boolean;225  readonly isSuspended: boolean;226  readonly type: 'Ok' | 'Suspended';227}228229/** @name CumulusPalletXcmpQueueQueueConfigData */230export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {231  readonly suspendThreshold: u32;232  readonly dropThreshold: u32;233  readonly resumeThreshold: u32;234  readonly thresholdWeight: u64;235  readonly weightRestrictDecay: u64;236  readonly xcmpMaxIndividualWeight: u64;237}238239/** @name CumulusPrimitivesParachainInherentParachainInherentData */240export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {241  readonly validationData: PolkadotPrimitivesV1PersistedValidationData;242  readonly relayChainState: SpTrieStorageProof;243  readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;244  readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;245}246247/** @name EthbloomBloom */248export interface EthbloomBloom extends U8aFixed {}249250/** @name EthereumBlock */251export interface EthereumBlock extends Struct {252  readonly header: EthereumHeader;253  readonly transactions: Vec<EthereumTransactionTransactionV2>;254  readonly ommers: Vec<EthereumHeader>;255}256257/** @name EthereumHeader */258export interface EthereumHeader extends Struct {259  readonly parentHash: H256;260  readonly ommersHash: H256;261  readonly beneficiary: H160;262  readonly stateRoot: H256;263  readonly transactionsRoot: H256;264  readonly receiptsRoot: H256;265  readonly logsBloom: EthbloomBloom;266  readonly difficulty: U256;267  readonly number: U256;268  readonly gasLimit: U256;269  readonly gasUsed: U256;270  readonly timestamp: u64;271  readonly extraData: Bytes;272  readonly mixHash: H256;273  readonly nonce: EthereumTypesHashH64;274}275276/** @name EthereumLog */277export interface EthereumLog extends Struct {278  readonly address: H160;279  readonly topics: Vec<H256>;280  readonly data: Bytes;281}282283/** @name EthereumReceiptEip658ReceiptData */284export interface EthereumReceiptEip658ReceiptData extends Struct {285  readonly statusCode: u8;286  readonly usedGas: U256;287  readonly logsBloom: EthbloomBloom;288  readonly logs: Vec<EthereumLog>;289}290291/** @name EthereumReceiptReceiptV3 */292export interface EthereumReceiptReceiptV3 extends Enum {293  readonly isLegacy: boolean;294  readonly asLegacy: EthereumReceiptEip658ReceiptData;295  readonly isEip2930: boolean;296  readonly asEip2930: EthereumReceiptEip658ReceiptData;297  readonly isEip1559: boolean;298  readonly asEip1559: EthereumReceiptEip658ReceiptData;299  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';300}301302/** @name EthereumTransactionAccessListItem */303export interface EthereumTransactionAccessListItem extends Struct {304  readonly address: H160;305  readonly storageKeys: Vec<H256>;306}307308/** @name EthereumTransactionEip1559Transaction */309export interface EthereumTransactionEip1559Transaction extends Struct {310  readonly chainId: u64;311  readonly nonce: U256;312  readonly maxPriorityFeePerGas: U256;313  readonly maxFeePerGas: U256;314  readonly gasLimit: U256;315  readonly action: EthereumTransactionTransactionAction;316  readonly value: U256;317  readonly input: Bytes;318  readonly accessList: Vec<EthereumTransactionAccessListItem>;319  readonly oddYParity: bool;320  readonly r: H256;321  readonly s: H256;322}323324/** @name EthereumTransactionEip2930Transaction */325export interface EthereumTransactionEip2930Transaction extends Struct {326  readonly chainId: u64;327  readonly nonce: U256;328  readonly gasPrice: U256;329  readonly gasLimit: U256;330  readonly action: EthereumTransactionTransactionAction;331  readonly value: U256;332  readonly input: Bytes;333  readonly accessList: Vec<EthereumTransactionAccessListItem>;334  readonly oddYParity: bool;335  readonly r: H256;336  readonly s: H256;337}338339/** @name EthereumTransactionLegacyTransaction */340export interface EthereumTransactionLegacyTransaction extends Struct {341  readonly nonce: U256;342  readonly gasPrice: U256;343  readonly gasLimit: U256;344  readonly action: EthereumTransactionTransactionAction;345  readonly value: U256;346  readonly input: Bytes;347  readonly signature: EthereumTransactionTransactionSignature;348}349350/** @name EthereumTransactionTransactionAction */351export interface EthereumTransactionTransactionAction extends Enum {352  readonly isCall: boolean;353  readonly asCall: H160;354  readonly isCreate: boolean;355  readonly type: 'Call' | 'Create';356}357358/** @name EthereumTransactionTransactionSignature */359export interface EthereumTransactionTransactionSignature extends Struct {360  readonly v: u64;361  readonly r: H256;362  readonly s: H256;363}364365/** @name EthereumTransactionTransactionV2 */366export interface EthereumTransactionTransactionV2 extends Enum {367  readonly isLegacy: boolean;368  readonly asLegacy: EthereumTransactionLegacyTransaction;369  readonly isEip2930: boolean;370  readonly asEip2930: EthereumTransactionEip2930Transaction;371  readonly isEip1559: boolean;372  readonly asEip1559: EthereumTransactionEip1559Transaction;373  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';374}375376/** @name EthereumTypesHashH64 */377export interface EthereumTypesHashH64 extends U8aFixed {}378379/** @name EvmCoreErrorExitError */380export interface EvmCoreErrorExitError extends Enum {381  readonly isStackUnderflow: boolean;382  readonly isStackOverflow: boolean;383  readonly isInvalidJump: boolean;384  readonly isInvalidRange: boolean;385  readonly isDesignatedInvalid: boolean;386  readonly isCallTooDeep: boolean;387  readonly isCreateCollision: boolean;388  readonly isCreateContractLimit: boolean;389  readonly isInvalidCode: boolean;390  readonly isOutOfOffset: boolean;391  readonly isOutOfGas: boolean;392  readonly isOutOfFund: boolean;393  readonly isPcUnderflow: boolean;394  readonly isCreateEmpty: boolean;395  readonly isOther: boolean;396  readonly asOther: Text;397  readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';398}399400/** @name EvmCoreErrorExitFatal */401export interface EvmCoreErrorExitFatal extends Enum {402  readonly isNotSupported: boolean;403  readonly isUnhandledInterrupt: boolean;404  readonly isCallErrorAsFatal: boolean;405  readonly asCallErrorAsFatal: EvmCoreErrorExitError;406  readonly isOther: boolean;407  readonly asOther: Text;408  readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';409}410411/** @name EvmCoreErrorExitReason */412export interface EvmCoreErrorExitReason extends Enum {413  readonly isSucceed: boolean;414  readonly asSucceed: EvmCoreErrorExitSucceed;415  readonly isError: boolean;416  readonly asError: EvmCoreErrorExitError;417  readonly isRevert: boolean;418  readonly asRevert: EvmCoreErrorExitRevert;419  readonly isFatal: boolean;420  readonly asFatal: EvmCoreErrorExitFatal;421  readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';422}423424/** @name EvmCoreErrorExitRevert */425export interface EvmCoreErrorExitRevert extends Enum {426  readonly isReverted: boolean;427  readonly type: 'Reverted';428}429430/** @name EvmCoreErrorExitSucceed */431export interface EvmCoreErrorExitSucceed extends Enum {432  readonly isStopped: boolean;433  readonly isReturned: boolean;434  readonly isSuicided: boolean;435  readonly type: 'Stopped' | 'Returned' | 'Suicided';436}437438/** @name FpRpcTransactionStatus */439export interface FpRpcTransactionStatus extends Struct {440  readonly transactionHash: H256;441  readonly transactionIndex: u32;442  readonly from: H160;443  readonly to: Option<H160>;444  readonly contractAddress: Option<H160>;445  readonly logs: Vec<EthereumLog>;446  readonly logsBloom: EthbloomBloom;447}448449/** @name FrameSupportPalletId */450export interface FrameSupportPalletId extends U8aFixed {}451452/** @name FrameSupportTokensMiscBalanceStatus */453export interface FrameSupportTokensMiscBalanceStatus extends Enum {454  readonly isFree: boolean;455  readonly isReserved: boolean;456  readonly type: 'Free' | 'Reserved';457}458459/** @name FrameSupportWeightsDispatchClass */460export interface FrameSupportWeightsDispatchClass extends Enum {461  readonly isNormal: boolean;462  readonly isOperational: boolean;463  readonly isMandatory: boolean;464  readonly type: 'Normal' | 'Operational' | 'Mandatory';465}466467/** @name FrameSupportWeightsDispatchInfo */468export interface FrameSupportWeightsDispatchInfo extends Struct {469  readonly weight: u64;470  readonly class: FrameSupportWeightsDispatchClass;471  readonly paysFee: FrameSupportWeightsPays;472}473474/** @name FrameSupportWeightsPays */475export interface FrameSupportWeightsPays extends Enum {476  readonly isYes: boolean;477  readonly isNo: boolean;478  readonly type: 'Yes' | 'No';479}480481/** @name FrameSupportWeightsPerDispatchClassU32 */482export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {483  readonly normal: u32;484  readonly operational: u32;485  readonly mandatory: u32;486}487488/** @name FrameSupportWeightsPerDispatchClassU64 */489export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {490  readonly normal: u64;491  readonly operational: u64;492  readonly mandatory: u64;493}494495/** @name FrameSupportWeightsPerDispatchClassWeightsPerClass */496export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {497  readonly normal: FrameSystemLimitsWeightsPerClass;498  readonly operational: FrameSystemLimitsWeightsPerClass;499  readonly mandatory: FrameSystemLimitsWeightsPerClass;500}501502/** @name FrameSupportWeightsRuntimeDbWeight */503export interface FrameSupportWeightsRuntimeDbWeight extends Struct {504  readonly read: u64;505  readonly write: u64;506}507508/** @name FrameSupportWeightsWeightToFeeCoefficient */509export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {510  readonly coeffInteger: u128;511  readonly coeffFrac: Perbill;512  readonly negative: bool;513  readonly degree: u8;514}515516/** @name FrameSystemAccountInfo */517export interface FrameSystemAccountInfo extends Struct {518  readonly nonce: u32;519  readonly consumers: u32;520  readonly providers: u32;521  readonly sufficients: u32;522  readonly data: PalletBalancesAccountData;523}524525/** @name FrameSystemCall */526export interface FrameSystemCall extends Enum {527  readonly isFillBlock: boolean;528  readonly asFillBlock: {529    readonly ratio: Perbill;530  } & Struct;531  readonly isRemark: boolean;532  readonly asRemark: {533    readonly remark: Bytes;534  } & Struct;535  readonly isSetHeapPages: boolean;536  readonly asSetHeapPages: {537    readonly pages: u64;538  } & Struct;539  readonly isSetCode: boolean;540  readonly asSetCode: {541    readonly code: Bytes;542  } & Struct;543  readonly isSetCodeWithoutChecks: boolean;544  readonly asSetCodeWithoutChecks: {545    readonly code: Bytes;546  } & Struct;547  readonly isSetStorage: boolean;548  readonly asSetStorage: {549    readonly items: Vec<ITuple<[Bytes, Bytes]>>;550  } & Struct;551  readonly isKillStorage: boolean;552  readonly asKillStorage: {553    readonly keys_: Vec<Bytes>;554  } & Struct;555  readonly isKillPrefix: boolean;556  readonly asKillPrefix: {557    readonly prefix: Bytes;558    readonly subkeys: u32;559  } & Struct;560  readonly isRemarkWithEvent: boolean;561  readonly asRemarkWithEvent: {562    readonly remark: Bytes;563  } & Struct;564  readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';565}566567/** @name FrameSystemError */568export interface FrameSystemError extends Enum {569  readonly isInvalidSpecName: boolean;570  readonly isSpecVersionNeedsToIncrease: boolean;571  readonly isFailedToExtractRuntimeVersion: boolean;572  readonly isNonDefaultComposite: boolean;573  readonly isNonZeroRefCount: boolean;574  readonly isCallFiltered: boolean;575  readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';576}577578/** @name FrameSystemEvent */579export interface FrameSystemEvent extends Enum {580  readonly isExtrinsicSuccess: boolean;581  readonly asExtrinsicSuccess: {582    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;583  } & Struct;584  readonly isExtrinsicFailed: boolean;585  readonly asExtrinsicFailed: {586    readonly dispatchError: SpRuntimeDispatchError;587    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;588  } & Struct;589  readonly isCodeUpdated: boolean;590  readonly isNewAccount: boolean;591  readonly asNewAccount: {592    readonly account: AccountId32;593  } & Struct;594  readonly isKilledAccount: boolean;595  readonly asKilledAccount: {596    readonly account: AccountId32;597  } & Struct;598  readonly isRemarked: boolean;599  readonly asRemarked: {600    readonly sender: AccountId32;601    readonly hash_: H256;602  } & Struct;603  readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';604}605606/** @name FrameSystemEventRecord */607export interface FrameSystemEventRecord extends Struct {608  readonly phase: FrameSystemPhase;609  readonly event: Event;610  readonly topics: Vec<H256>;611}612613/** @name FrameSystemExtensionsCheckGenesis */614export interface FrameSystemExtensionsCheckGenesis extends Null {}615616/** @name FrameSystemExtensionsCheckNonce */617export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}618619/** @name FrameSystemExtensionsCheckSpecVersion */620export interface FrameSystemExtensionsCheckSpecVersion extends Null {}621622/** @name FrameSystemExtensionsCheckWeight */623export interface FrameSystemExtensionsCheckWeight extends Null {}624625/** @name FrameSystemLastRuntimeUpgradeInfo */626export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {627  readonly specVersion: Compact<u32>;628  readonly specName: Text;629}630631/** @name FrameSystemLimitsBlockLength */632export interface FrameSystemLimitsBlockLength extends Struct {633  readonly max: FrameSupportWeightsPerDispatchClassU32;634}635636/** @name FrameSystemLimitsBlockWeights */637export interface FrameSystemLimitsBlockWeights extends Struct {638  readonly baseBlock: u64;639  readonly maxBlock: u64;640  readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;641}642643/** @name FrameSystemLimitsWeightsPerClass */644export interface FrameSystemLimitsWeightsPerClass extends Struct {645  readonly baseExtrinsic: u64;646  readonly maxExtrinsic: Option<u64>;647  readonly maxTotal: Option<u64>;648  readonly reserved: Option<u64>;649}650651/** @name FrameSystemPhase */652export interface FrameSystemPhase extends Enum {653  readonly isApplyExtrinsic: boolean;654  readonly asApplyExtrinsic: u32;655  readonly isFinalization: boolean;656  readonly isInitialization: boolean;657  readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';658}659660/** @name OpalRuntimeRuntime */661export interface OpalRuntimeRuntime extends Null {}662663/** @name OrmlVestingModuleCall */664export interface OrmlVestingModuleCall extends Enum {665  readonly isClaim: boolean;666  readonly isVestedTransfer: boolean;667  readonly asVestedTransfer: {668    readonly dest: MultiAddress;669    readonly schedule: OrmlVestingVestingSchedule;670  } & Struct;671  readonly isUpdateVestingSchedules: boolean;672  readonly asUpdateVestingSchedules: {673    readonly who: MultiAddress;674    readonly vestingSchedules: Vec<OrmlVestingVestingSchedule>;675  } & Struct;676  readonly isClaimFor: boolean;677  readonly asClaimFor: {678    readonly dest: MultiAddress;679  } & Struct;680  readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';681}682683/** @name OrmlVestingModuleError */684export interface OrmlVestingModuleError extends Enum {685  readonly isZeroVestingPeriod: boolean;686  readonly isZeroVestingPeriodCount: boolean;687  readonly isInsufficientBalanceToLock: boolean;688  readonly isTooManyVestingSchedules: boolean;689  readonly isAmountLow: boolean;690  readonly isMaxVestingSchedulesExceeded: boolean;691  readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';692}693694/** @name OrmlVestingModuleEvent */695export interface OrmlVestingModuleEvent extends Enum {696  readonly isVestingScheduleAdded: boolean;697  readonly asVestingScheduleAdded: {698    readonly from: AccountId32;699    readonly to: AccountId32;700    readonly vestingSchedule: OrmlVestingVestingSchedule;701  } & Struct;702  readonly isClaimed: boolean;703  readonly asClaimed: {704    readonly who: AccountId32;705    readonly amount: u128;706  } & Struct;707  readonly isVestingSchedulesUpdated: boolean;708  readonly asVestingSchedulesUpdated: {709    readonly who: AccountId32;710  } & Struct;711  readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';712}713714/** @name OrmlVestingVestingSchedule */715export interface OrmlVestingVestingSchedule extends Struct {716  readonly start: u32;717  readonly period: u32;718  readonly periodCount: u32;719  readonly perPeriod: Compact<u128>;720}721722/** @name PalletBalancesAccountData */723export interface PalletBalancesAccountData extends Struct {724  readonly free: u128;725  readonly reserved: u128;726  readonly miscFrozen: u128;727  readonly feeFrozen: u128;728}729730/** @name PalletBalancesBalanceLock */731export interface PalletBalancesBalanceLock extends Struct {732  readonly id: U8aFixed;733  readonly amount: u128;734  readonly reasons: PalletBalancesReasons;735}736737/** @name PalletBalancesCall */738export interface PalletBalancesCall extends Enum {739  readonly isTransfer: boolean;740  readonly asTransfer: {741    readonly dest: MultiAddress;742    readonly value: Compact<u128>;743  } & Struct;744  readonly isSetBalance: boolean;745  readonly asSetBalance: {746    readonly who: MultiAddress;747    readonly newFree: Compact<u128>;748    readonly newReserved: Compact<u128>;749  } & Struct;750  readonly isForceTransfer: boolean;751  readonly asForceTransfer: {752    readonly source: MultiAddress;753    readonly dest: MultiAddress;754    readonly value: Compact<u128>;755  } & Struct;756  readonly isTransferKeepAlive: boolean;757  readonly asTransferKeepAlive: {758    readonly dest: MultiAddress;759    readonly value: Compact<u128>;760  } & Struct;761  readonly isTransferAll: boolean;762  readonly asTransferAll: {763    readonly dest: MultiAddress;764    readonly keepAlive: bool;765  } & Struct;766  readonly isForceUnreserve: boolean;767  readonly asForceUnreserve: {768    readonly who: MultiAddress;769    readonly amount: u128;770  } & Struct;771  readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';772}773774/** @name PalletBalancesError */775export interface PalletBalancesError extends Enum {776  readonly isVestingBalance: boolean;777  readonly isLiquidityRestrictions: boolean;778  readonly isInsufficientBalance: boolean;779  readonly isExistentialDeposit: boolean;780  readonly isKeepAlive: boolean;781  readonly isExistingVestingSchedule: boolean;782  readonly isDeadAccount: boolean;783  readonly isTooManyReserves: boolean;784  readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';785}786787/** @name PalletBalancesEvent */788export interface PalletBalancesEvent extends Enum {789  readonly isEndowed: boolean;790  readonly asEndowed: {791    readonly account: AccountId32;792    readonly freeBalance: u128;793  } & Struct;794  readonly isDustLost: boolean;795  readonly asDustLost: {796    readonly account: AccountId32;797    readonly amount: u128;798  } & Struct;799  readonly isTransfer: boolean;800  readonly asTransfer: {801    readonly from: AccountId32;802    readonly to: AccountId32;803    readonly amount: u128;804  } & Struct;805  readonly isBalanceSet: boolean;806  readonly asBalanceSet: {807    readonly who: AccountId32;808    readonly free: u128;809    readonly reserved: u128;810  } & Struct;811  readonly isReserved: boolean;812  readonly asReserved: {813    readonly who: AccountId32;814    readonly amount: u128;815  } & Struct;816  readonly isUnreserved: boolean;817  readonly asUnreserved: {818    readonly who: AccountId32;819    readonly amount: u128;820  } & Struct;821  readonly isReserveRepatriated: boolean;822  readonly asReserveRepatriated: {823    readonly from: AccountId32;824    readonly to: AccountId32;825    readonly amount: u128;826    readonly destinationStatus: FrameSupportTokensMiscBalanceStatus;827  } & Struct;828  readonly isDeposit: boolean;829  readonly asDeposit: {830    readonly who: AccountId32;831    readonly amount: u128;832  } & Struct;833  readonly isWithdraw: boolean;834  readonly asWithdraw: {835    readonly who: AccountId32;836    readonly amount: u128;837  } & Struct;838  readonly isSlashed: boolean;839  readonly asSlashed: {840    readonly who: AccountId32;841    readonly amount: u128;842  } & Struct;843  readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';844}845846/** @name PalletBalancesReasons */847export interface PalletBalancesReasons extends Enum {848  readonly isFee: boolean;849  readonly isMisc: boolean;850  readonly isAll: boolean;851  readonly type: 'Fee' | 'Misc' | 'All';852}853854/** @name PalletBalancesReleases */855export interface PalletBalancesReleases extends Enum {856  readonly isV100: boolean;857  readonly isV200: boolean;858  readonly type: 'V100' | 'V200';859}860861/** @name PalletBalancesReserveData */862export interface PalletBalancesReserveData extends Struct {863  readonly id: U8aFixed;864  readonly amount: u128;865}866867/** @name PalletCommonError */868export interface PalletCommonError extends Enum {869  readonly isCollectionNotFound: boolean;870  readonly isMustBeTokenOwner: boolean;871  readonly isNoPermission: boolean;872  readonly isPublicMintingNotAllowed: boolean;873  readonly isAddressNotInAllowlist: boolean;874  readonly isCollectionNameLimitExceeded: boolean;875  readonly isCollectionDescriptionLimitExceeded: boolean;876  readonly isCollectionTokenPrefixLimitExceeded: boolean;877  readonly isTotalCollectionsLimitExceeded: boolean;878  readonly isTokenVariableDataLimitExceeded: boolean;879  readonly isCollectionAdminCountExceeded: boolean;880  readonly isCollectionLimitBoundsExceeded: boolean;881  readonly isOwnerPermissionsCantBeReverted: boolean;882  readonly isTransferNotAllowed: boolean;883  readonly isAccountTokenLimitExceeded: boolean;884  readonly isCollectionTokenLimitExceeded: boolean;885  readonly isMetadataFlagFrozen: boolean;886  readonly isTokenNotFound: boolean;887  readonly isTokenValueTooLow: boolean;888  readonly isApprovedValueTooLow: boolean;889  readonly isCantApproveMoreThanOwned: boolean;890  readonly isAddressIsZero: boolean;891  readonly isUnsupportedOperation: boolean;892  readonly isNotSufficientFounds: boolean;893  readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds';894}895896/** @name PalletCommonEvent */897export interface PalletCommonEvent extends Enum {898  readonly isCollectionCreated: boolean;899  readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;900  readonly isCollectionDestroyed: boolean;901  readonly asCollectionDestroyed: u32;902  readonly isItemCreated: boolean;903  readonly asItemCreated: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;904  readonly isItemDestroyed: boolean;905  readonly asItemDestroyed: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;906  readonly isTransfer: boolean;907  readonly asTransfer: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;908  readonly isApproved: boolean;909  readonly asApproved: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;910  readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';911}912913/** @name PalletEthereumCall */914export interface PalletEthereumCall extends Enum {915  readonly isTransact: boolean;916  readonly asTransact: {917    readonly transaction: EthereumTransactionTransactionV2;918  } & Struct;919  readonly type: 'Transact';920}921922/** @name PalletEthereumError */923export interface PalletEthereumError extends Enum {924  readonly isInvalidSignature: boolean;925  readonly isPreLogExists: boolean;926  readonly type: 'InvalidSignature' | 'PreLogExists';927}928929/** @name PalletEthereumEvent */930export interface PalletEthereumEvent extends Enum {931  readonly isExecuted: boolean;932  readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;933  readonly type: 'Executed';934}935936/** @name PalletEvmAccountBasicCrossAccountIdRepr */937export interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum {938  readonly isSubstrate: boolean;939  readonly asSubstrate: AccountId32;940  readonly isEthereum: boolean;941  readonly asEthereum: H160;942  readonly type: 'Substrate' | 'Ethereum';943}944945/** @name PalletEvmCall */946export interface PalletEvmCall extends Enum {947  readonly isWithdraw: boolean;948  readonly asWithdraw: {949    readonly address: H160;950    readonly value: u128;951  } & Struct;952  readonly isCall: boolean;953  readonly asCall: {954    readonly source: H160;955    readonly target: H160;956    readonly input: Bytes;957    readonly value: U256;958    readonly gasLimit: u64;959    readonly maxFeePerGas: U256;960    readonly maxPriorityFeePerGas: Option<U256>;961    readonly nonce: Option<U256>;962    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;963  } & Struct;964  readonly isCreate: boolean;965  readonly asCreate: {966    readonly source: H160;967    readonly init: Bytes;968    readonly value: U256;969    readonly gasLimit: u64;970    readonly maxFeePerGas: U256;971    readonly maxPriorityFeePerGas: Option<U256>;972    readonly nonce: Option<U256>;973    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;974  } & Struct;975  readonly isCreate2: boolean;976  readonly asCreate2: {977    readonly source: H160;978    readonly init: Bytes;979    readonly salt: H256;980    readonly value: U256;981    readonly gasLimit: u64;982    readonly maxFeePerGas: U256;983    readonly maxPriorityFeePerGas: Option<U256>;984    readonly nonce: Option<U256>;985    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;986  } & Struct;987  readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';988}989990/** @name PalletEvmCoderSubstrateError */991export interface PalletEvmCoderSubstrateError extends Enum {992  readonly isOutOfGas: boolean;993  readonly isOutOfFund: boolean;994  readonly type: 'OutOfGas' | 'OutOfFund';995}996997/** @name PalletEvmContractHelpersError */998export interface PalletEvmContractHelpersError extends Enum {999  readonly isNoPermission: boolean;1000  readonly type: 'NoPermission';1001}10021003/** @name PalletEvmContractHelpersSponsoringModeT */1004export interface PalletEvmContractHelpersSponsoringModeT extends Enum {1005  readonly isDisabled: boolean;1006  readonly isAllowlisted: boolean;1007  readonly isGenerous: boolean;1008  readonly type: 'Disabled' | 'Allowlisted' | 'Generous';1009}10101011/** @name PalletEvmError */1012export interface PalletEvmError extends Enum {1013  readonly isBalanceLow: boolean;1014  readonly isFeeOverflow: boolean;1015  readonly isPaymentOverflow: boolean;1016  readonly isWithdrawFailed: boolean;1017  readonly isGasPriceTooLow: boolean;1018  readonly isInvalidNonce: boolean;1019  readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';1020}10211022/** @name PalletEvmEvent */1023export interface PalletEvmEvent extends Enum {1024  readonly isLog: boolean;1025  readonly asLog: EthereumLog;1026  readonly isCreated: boolean;1027  readonly asCreated: H160;1028  readonly isCreatedFailed: boolean;1029  readonly asCreatedFailed: H160;1030  readonly isExecuted: boolean;1031  readonly asExecuted: H160;1032  readonly isExecutedFailed: boolean;1033  readonly asExecutedFailed: H160;1034  readonly isBalanceDeposit: boolean;1035  readonly asBalanceDeposit: ITuple<[AccountId32, H160, U256]>;1036  readonly isBalanceWithdraw: boolean;1037  readonly asBalanceWithdraw: ITuple<[AccountId32, H160, U256]>;1038  readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';1039}10401041/** @name PalletEvmMigrationCall */1042export interface PalletEvmMigrationCall extends Enum {1043  readonly isBegin: boolean;1044  readonly asBegin: {1045    readonly address: H160;1046  } & Struct;1047  readonly isSetData: boolean;1048  readonly asSetData: {1049    readonly address: H160;1050    readonly data: Vec<ITuple<[H256, H256]>>;1051  } & Struct;1052  readonly isFinish: boolean;1053  readonly asFinish: {1054    readonly address: H160;1055    readonly code: Bytes;1056  } & Struct;1057  readonly type: 'Begin' | 'SetData' | 'Finish';1058}10591060/** @name PalletEvmMigrationError */1061export interface PalletEvmMigrationError extends Enum {1062  readonly isAccountNotEmpty: boolean;1063  readonly isAccountIsNotMigrating: boolean;1064  readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';1065}10661067/** @name PalletFungibleError */1068export interface PalletFungibleError extends Enum {1069  readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;1070  readonly isFungibleItemsHaveNoId: boolean;1071  readonly isFungibleItemsDontHaveData: boolean;1072  readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData';1073}10741075/** @name PalletInflationCall */1076export interface PalletInflationCall extends Enum {1077  readonly isStartInflation: boolean;1078  readonly asStartInflation: {1079    readonly inflationStartRelayBlock: u32;1080  } & Struct;1081  readonly type: 'StartInflation';1082}10831084/** @name PalletNonfungibleError */1085export interface PalletNonfungibleError extends Enum {1086  readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;1087  readonly isNonfungibleItemsHaveNoAmount: boolean;1088  readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';1089}10901091/** @name PalletNonfungibleItemData */1092export interface PalletNonfungibleItemData extends Struct {1093  readonly constData: Bytes;1094  readonly variableData: Bytes;1095  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1096}10971098/** @name PalletRefungibleError */1099export interface PalletRefungibleError extends Enum {1100  readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;1101  readonly isWrongRefungiblePieces: boolean;1102  readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces';1103}11041105/** @name PalletRefungibleItemData */1106export interface PalletRefungibleItemData extends Struct {1107  readonly constData: Bytes;1108  readonly variableData: Bytes;1109}11101111/** @name PalletSudoCall */1112export interface PalletSudoCall extends Enum {1113  readonly isSudo: boolean;1114  readonly asSudo: {1115    readonly call: Call;1116  } & Struct;1117  readonly isSudoUncheckedWeight: boolean;1118  readonly asSudoUncheckedWeight: {1119    readonly call: Call;1120    readonly weight: u64;1121  } & Struct;1122  readonly isSetKey: boolean;1123  readonly asSetKey: {1124    readonly new_: MultiAddress;1125  } & Struct;1126  readonly isSudoAs: boolean;1127  readonly asSudoAs: {1128    readonly who: MultiAddress;1129    readonly call: Call;1130  } & Struct;1131  readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';1132}11331134/** @name PalletSudoError */1135export interface PalletSudoError extends Enum {1136  readonly isRequireSudo: boolean;1137  readonly type: 'RequireSudo';1138}11391140/** @name PalletSudoEvent */1141export interface PalletSudoEvent extends Enum {1142  readonly isSudid: boolean;1143  readonly asSudid: {1144    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1145  } & Struct;1146  readonly isKeyChanged: boolean;1147  readonly asKeyChanged: {1148    readonly oldSudoer: Option<AccountId32>;1149  } & Struct;1150  readonly isSudoAsDone: boolean;1151  readonly asSudoAsDone: {1152    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1153  } & Struct;1154  readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';1155}11561157/** @name PalletTemplateTransactionPaymentCall */1158export interface PalletTemplateTransactionPaymentCall extends Null {}11591160/** @name PalletTemplateTransactionPaymentChargeTransactionPayment */1161export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}11621163/** @name PalletTimestampCall */1164export interface PalletTimestampCall extends Enum {1165  readonly isSet: boolean;1166  readonly asSet: {1167    readonly now: Compact<u64>;1168  } & Struct;1169  readonly type: 'Set';1170}11711172/** @name PalletTransactionPaymentReleases */1173export interface PalletTransactionPaymentReleases extends Enum {1174  readonly isV1Ancient: boolean;1175  readonly isV2: boolean;1176  readonly type: 'V1Ancient' | 'V2';1177}11781179/** @name PalletTreasuryCall */1180export interface PalletTreasuryCall extends Enum {1181  readonly isProposeSpend: boolean;1182  readonly asProposeSpend: {1183    readonly value: Compact<u128>;1184    readonly beneficiary: MultiAddress;1185  } & Struct;1186  readonly isRejectProposal: boolean;1187  readonly asRejectProposal: {1188    readonly proposalId: Compact<u32>;1189  } & Struct;1190  readonly isApproveProposal: boolean;1191  readonly asApproveProposal: {1192    readonly proposalId: Compact<u32>;1193  } & Struct;1194  readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';1195}11961197/** @name PalletTreasuryError */1198export interface PalletTreasuryError extends Enum {1199  readonly isInsufficientProposersBalance: boolean;1200  readonly isInvalidIndex: boolean;1201  readonly isTooManyApprovals: boolean;1202  readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';1203}12041205/** @name PalletTreasuryEvent */1206export interface PalletTreasuryEvent extends Enum {1207  readonly isProposed: boolean;1208  readonly asProposed: {1209    readonly proposalIndex: u32;1210  } & Struct;1211  readonly isSpending: boolean;1212  readonly asSpending: {1213    readonly budgetRemaining: u128;1214  } & Struct;1215  readonly isAwarded: boolean;1216  readonly asAwarded: {1217    readonly proposalIndex: u32;1218    readonly award: u128;1219    readonly account: AccountId32;1220  } & Struct;1221  readonly isRejected: boolean;1222  readonly asRejected: {1223    readonly proposalIndex: u32;1224    readonly slashed: u128;1225  } & Struct;1226  readonly isBurnt: boolean;1227  readonly asBurnt: {1228    readonly burntFunds: u128;1229  } & Struct;1230  readonly isRollover: boolean;1231  readonly asRollover: {1232    readonly rolloverBalance: u128;1233  } & Struct;1234  readonly isDeposit: boolean;1235  readonly asDeposit: {1236    readonly value: u128;1237  } & Struct;1238  readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';1239}12401241/** @name PalletTreasuryProposal */1242export interface PalletTreasuryProposal extends Struct {1243  readonly proposer: AccountId32;1244  readonly value: u128;1245  readonly beneficiary: AccountId32;1246  readonly bond: u128;1247}12481249/** @name PalletUniqueCall */1250export interface PalletUniqueCall extends Enum {1251  readonly isCreateCollection: boolean;1252  readonly asCreateCollection: {1253    readonly collectionName: Vec<u16>;1254    readonly collectionDescription: Vec<u16>;1255    readonly tokenPrefix: Bytes;1256    readonly mode: UpDataStructsCollectionMode;1257  } & Struct;1258  readonly isCreateCollectionEx: boolean;1259  readonly asCreateCollectionEx: {1260    readonly data: UpDataStructsCreateCollectionData;1261  } & Struct;1262  readonly isDestroyCollection: boolean;1263  readonly asDestroyCollection: {1264    readonly collectionId: u32;1265  } & Struct;1266  readonly isAddToAllowList: boolean;1267  readonly asAddToAllowList: {1268    readonly collectionId: u32;1269    readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1270  } & Struct;1271  readonly isRemoveFromAllowList: boolean;1272  readonly asRemoveFromAllowList: {1273    readonly collectionId: u32;1274    readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1275  } & Struct;1276  readonly isSetPublicAccessMode: boolean;1277  readonly asSetPublicAccessMode: {1278    readonly collectionId: u32;1279    readonly mode: UpDataStructsAccessMode;1280  } & Struct;1281  readonly isSetMintPermission: boolean;1282  readonly asSetMintPermission: {1283    readonly collectionId: u32;1284    readonly mintPermission: bool;1285  } & Struct;1286  readonly isChangeCollectionOwner: boolean;1287  readonly asChangeCollectionOwner: {1288    readonly collectionId: u32;1289    readonly newOwner: AccountId32;1290  } & Struct;1291  readonly isAddCollectionAdmin: boolean;1292  readonly asAddCollectionAdmin: {1293    readonly collectionId: u32;1294    readonly newAdminId: PalletEvmAccountBasicCrossAccountIdRepr;1295  } & Struct;1296  readonly isRemoveCollectionAdmin: boolean;1297  readonly asRemoveCollectionAdmin: {1298    readonly collectionId: u32;1299    readonly accountId: PalletEvmAccountBasicCrossAccountIdRepr;1300  } & Struct;1301  readonly isSetCollectionSponsor: boolean;1302  readonly asSetCollectionSponsor: {1303    readonly collectionId: u32;1304    readonly newSponsor: AccountId32;1305  } & Struct;1306  readonly isConfirmSponsorship: boolean;1307  readonly asConfirmSponsorship: {1308    readonly collectionId: u32;1309  } & Struct;1310  readonly isRemoveCollectionSponsor: boolean;1311  readonly asRemoveCollectionSponsor: {1312    readonly collectionId: u32;1313  } & Struct;1314  readonly isCreateItem: boolean;1315  readonly asCreateItem: {1316    readonly collectionId: u32;1317    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1318    readonly data: UpDataStructsCreateItemData;1319  } & Struct;1320  readonly isCreateMultipleItems: boolean;1321  readonly asCreateMultipleItems: {1322    readonly collectionId: u32;1323    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1324    readonly itemsData: Vec<UpDataStructsCreateItemData>;1325  } & Struct;1326  readonly isCreateMultipleItemsEx: boolean;1327  readonly asCreateMultipleItemsEx: {1328    readonly collectionId: u32;1329    readonly data: UpDataStructsCreateItemExData;1330  } & Struct;1331  readonly isSetTransfersEnabledFlag: boolean;1332  readonly asSetTransfersEnabledFlag: {1333    readonly collectionId: u32;1334    readonly value: bool;1335  } & Struct;1336  readonly isBurnItem: boolean;1337  readonly asBurnItem: {1338    readonly collectionId: u32;1339    readonly itemId: u32;1340    readonly value: u128;1341  } & Struct;1342  readonly isBurnFrom: boolean;1343  readonly asBurnFrom: {1344    readonly collectionId: u32;1345    readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1346    readonly itemId: u32;1347    readonly value: u128;1348  } & Struct;1349  readonly isTransfer: boolean;1350  readonly asTransfer: {1351    readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1352    readonly collectionId: u32;1353    readonly itemId: u32;1354    readonly value: u128;1355  } & Struct;1356  readonly isApprove: boolean;1357  readonly asApprove: {1358    readonly spender: PalletEvmAccountBasicCrossAccountIdRepr;1359    readonly collectionId: u32;1360    readonly itemId: u32;1361    readonly amount: u128;1362  } & Struct;1363  readonly isTransferFrom: boolean;1364  readonly asTransferFrom: {1365    readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1366    readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1367    readonly collectionId: u32;1368    readonly itemId: u32;1369    readonly value: u128;1370  } & Struct;1371  readonly isSetVariableMetaData: boolean;1372  readonly asSetVariableMetaData: {1373    readonly collectionId: u32;1374    readonly itemId: u32;1375    readonly data: Bytes;1376  } & Struct;1377  readonly isSetMetaUpdatePermissionFlag: boolean;1378  readonly asSetMetaUpdatePermissionFlag: {1379    readonly collectionId: u32;1380    readonly value: UpDataStructsMetaUpdatePermission;1381  } & Struct;1382  readonly isSetSchemaVersion: boolean;1383  readonly asSetSchemaVersion: {1384    readonly collectionId: u32;1385    readonly version: UpDataStructsSchemaVersion;1386  } & Struct;1387  readonly isSetOffchainSchema: boolean;1388  readonly asSetOffchainSchema: {1389    readonly collectionId: u32;1390    readonly schema: Bytes;1391  } & Struct;1392  readonly isSetConstOnChainSchema: boolean;1393  readonly asSetConstOnChainSchema: {1394    readonly collectionId: u32;1395    readonly schema: Bytes;1396  } & Struct;1397  readonly isSetVariableOnChainSchema: boolean;1398  readonly asSetVariableOnChainSchema: {1399    readonly collectionId: u32;1400    readonly schema: Bytes;1401  } & Struct;1402  readonly isSetCollectionLimits: boolean;1403  readonly asSetCollectionLimits: {1404    readonly collectionId: u32;1405    readonly newLimit: UpDataStructsCollectionLimits;1406  } & Struct;1407  readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'SetPublicAccessMode' | 'SetMintPermission' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetVariableMetaData' | 'SetMetaUpdatePermissionFlag' | 'SetSchemaVersion' | 'SetOffchainSchema' | 'SetConstOnChainSchema' | 'SetVariableOnChainSchema' | 'SetCollectionLimits';1408}14091410/** @name PalletUniqueError */1411export interface PalletUniqueError extends Enum {1412  readonly isCollectionDecimalPointLimitExceeded: boolean;1413  readonly isConfirmUnsetSponsorFail: boolean;1414  readonly isEmptyArgument: boolean;1415  readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';1416}14171418/** @name PalletUniqueRawEvent */1419export interface PalletUniqueRawEvent extends Enum {1420  readonly isCollectionSponsorRemoved: boolean;1421  readonly asCollectionSponsorRemoved: u32;1422  readonly isCollectionAdminAdded: boolean;1423  readonly asCollectionAdminAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1424  readonly isCollectionOwnedChanged: boolean;1425  readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;1426  readonly isCollectionSponsorSet: boolean;1427  readonly asCollectionSponsorSet: ITuple<[u32, AccountId32]>;1428  readonly isConstOnChainSchemaSet: boolean;1429  readonly asConstOnChainSchemaSet: u32;1430  readonly isSponsorshipConfirmed: boolean;1431  readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;1432  readonly isCollectionAdminRemoved: boolean;1433  readonly asCollectionAdminRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1434  readonly isAllowListAddressRemoved: boolean;1435  readonly asAllowListAddressRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1436  readonly isAllowListAddressAdded: boolean;1437  readonly asAllowListAddressAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1438  readonly isCollectionLimitSet: boolean;1439  readonly asCollectionLimitSet: u32;1440  readonly isMintPermissionSet: boolean;1441  readonly asMintPermissionSet: u32;1442  readonly isOffchainSchemaSet: boolean;1443  readonly asOffchainSchemaSet: u32;1444  readonly isPublicAccessModeSet: boolean;1445  readonly asPublicAccessModeSet: ITuple<[u32, UpDataStructsAccessMode]>;1446  readonly isSchemaVersionSet: boolean;1447  readonly asSchemaVersionSet: u32;1448  readonly isVariableOnChainSchemaSet: boolean;1449  readonly asVariableOnChainSchemaSet: u32;1450  readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';1451}14521453/** @name PalletXcmCall */1454export interface PalletXcmCall extends Enum {1455  readonly isSend: boolean;1456  readonly asSend: {1457    readonly dest: XcmVersionedMultiLocation;1458    readonly message: XcmVersionedXcm;1459  } & Struct;1460  readonly isTeleportAssets: boolean;1461  readonly asTeleportAssets: {1462    readonly dest: XcmVersionedMultiLocation;1463    readonly beneficiary: XcmVersionedMultiLocation;1464    readonly assets: XcmVersionedMultiAssets;1465    readonly feeAssetItem: u32;1466  } & Struct;1467  readonly isReserveTransferAssets: boolean;1468  readonly asReserveTransferAssets: {1469    readonly dest: XcmVersionedMultiLocation;1470    readonly beneficiary: XcmVersionedMultiLocation;1471    readonly assets: XcmVersionedMultiAssets;1472    readonly feeAssetItem: u32;1473  } & Struct;1474  readonly isExecute: boolean;1475  readonly asExecute: {1476    readonly message: XcmVersionedXcm;1477    readonly maxWeight: u64;1478  } & Struct;1479  readonly isForceXcmVersion: boolean;1480  readonly asForceXcmVersion: {1481    readonly location: XcmV1MultiLocation;1482    readonly xcmVersion: u32;1483  } & Struct;1484  readonly isForceDefaultXcmVersion: boolean;1485  readonly asForceDefaultXcmVersion: {1486    readonly maybeXcmVersion: Option<u32>;1487  } & Struct;1488  readonly isForceSubscribeVersionNotify: boolean;1489  readonly asForceSubscribeVersionNotify: {1490    readonly location: XcmVersionedMultiLocation;1491  } & Struct;1492  readonly isForceUnsubscribeVersionNotify: boolean;1493  readonly asForceUnsubscribeVersionNotify: {1494    readonly location: XcmVersionedMultiLocation;1495  } & Struct;1496  readonly isLimitedReserveTransferAssets: boolean;1497  readonly asLimitedReserveTransferAssets: {1498    readonly dest: XcmVersionedMultiLocation;1499    readonly beneficiary: XcmVersionedMultiLocation;1500    readonly assets: XcmVersionedMultiAssets;1501    readonly feeAssetItem: u32;1502    readonly weightLimit: XcmV2WeightLimit;1503  } & Struct;1504  readonly isLimitedTeleportAssets: boolean;1505  readonly asLimitedTeleportAssets: {1506    readonly dest: XcmVersionedMultiLocation;1507    readonly beneficiary: XcmVersionedMultiLocation;1508    readonly assets: XcmVersionedMultiAssets;1509    readonly feeAssetItem: u32;1510    readonly weightLimit: XcmV2WeightLimit;1511  } & Struct;1512  readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';1513}15141515/** @name PalletXcmError */1516export interface PalletXcmError extends Enum {1517  readonly isUnreachable: boolean;1518  readonly isSendFailure: boolean;1519  readonly isFiltered: boolean;1520  readonly isUnweighableMessage: boolean;1521  readonly isDestinationNotInvertible: boolean;1522  readonly isEmpty: boolean;1523  readonly isCannotReanchor: boolean;1524  readonly isTooManyAssets: boolean;1525  readonly isInvalidOrigin: boolean;1526  readonly isBadVersion: boolean;1527  readonly isBadLocation: boolean;1528  readonly isNoSubscription: boolean;1529  readonly isAlreadySubscribed: boolean;1530  readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';1531}15321533/** @name PalletXcmEvent */1534export interface PalletXcmEvent extends Enum {1535  readonly isAttempted: boolean;1536  readonly asAttempted: XcmV2TraitsOutcome;1537  readonly isSent: boolean;1538  readonly asSent: ITuple<[XcmV1MultiLocation, XcmV1MultiLocation, XcmV2Xcm]>;1539  readonly isUnexpectedResponse: boolean;1540  readonly asUnexpectedResponse: ITuple<[XcmV1MultiLocation, u64]>;1541  readonly isResponseReady: boolean;1542  readonly asResponseReady: ITuple<[u64, XcmV2Response]>;1543  readonly isNotified: boolean;1544  readonly asNotified: ITuple<[u64, u8, u8]>;1545  readonly isNotifyOverweight: boolean;1546  readonly asNotifyOverweight: ITuple<[u64, u8, u8, u64, u64]>;1547  readonly isNotifyDispatchError: boolean;1548  readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;1549  readonly isNotifyDecodeFailed: boolean;1550  readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;1551  readonly isInvalidResponder: boolean;1552  readonly asInvalidResponder: ITuple<[XcmV1MultiLocation, u64, Option<XcmV1MultiLocation>]>;1553  readonly isInvalidResponderVersion: boolean;1554  readonly asInvalidResponderVersion: ITuple<[XcmV1MultiLocation, u64]>;1555  readonly isResponseTaken: boolean;1556  readonly asResponseTaken: u64;1557  readonly isAssetsTrapped: boolean;1558  readonly asAssetsTrapped: ITuple<[H256, XcmV1MultiLocation, XcmVersionedMultiAssets]>;1559  readonly isVersionChangeNotified: boolean;1560  readonly asVersionChangeNotified: ITuple<[XcmV1MultiLocation, u32]>;1561  readonly isSupportedVersionChanged: boolean;1562  readonly asSupportedVersionChanged: ITuple<[XcmV1MultiLocation, u32]>;1563  readonly isNotifyTargetSendFail: boolean;1564  readonly asNotifyTargetSendFail: ITuple<[XcmV1MultiLocation, u64, XcmV2TraitsError]>;1565  readonly isNotifyTargetMigrationFail: boolean;1566  readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;1567  readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';1568}15691570/** @name PolkadotCorePrimitivesInboundDownwardMessage */1571export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {1572  readonly sentAt: u32;1573  readonly msg: Bytes;1574}15751576/** @name PolkadotCorePrimitivesInboundHrmpMessage */1577export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {1578  readonly sentAt: u32;1579  readonly data: Bytes;1580}15811582/** @name PolkadotCorePrimitivesOutboundHrmpMessage */1583export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {1584  readonly recipient: u32;1585  readonly data: Bytes;1586}15871588/** @name PolkadotParachainPrimitivesXcmpMessageFormat */1589export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {1590  readonly isConcatenatedVersionedXcm: boolean;1591  readonly isConcatenatedEncodedBlob: boolean;1592  readonly isSignals: boolean;1593  readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';1594}15951596/** @name PolkadotPrimitivesV1AbridgedHostConfiguration */1597export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {1598  readonly maxCodeSize: u32;1599  readonly maxHeadDataSize: u32;1600  readonly maxUpwardQueueCount: u32;1601  readonly maxUpwardQueueSize: u32;1602  readonly maxUpwardMessageSize: u32;1603  readonly maxUpwardMessageNumPerCandidate: u32;1604  readonly hrmpMaxMessageNumPerCandidate: u32;1605  readonly validationUpgradeCooldown: u32;1606  readonly validationUpgradeDelay: u32;1607}16081609/** @name PolkadotPrimitivesV1AbridgedHrmpChannel */1610export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {1611  readonly maxCapacity: u32;1612  readonly maxTotalSize: u32;1613  readonly maxMessageSize: u32;1614  readonly msgCount: u32;1615  readonly totalSize: u32;1616  readonly mqcHead: Option<H256>;1617}16181619/** @name PolkadotPrimitivesV1PersistedValidationData */1620export interface PolkadotPrimitivesV1PersistedValidationData extends Struct {1621  readonly parentHead: Bytes;1622  readonly relayParentNumber: u32;1623  readonly relayParentStorageRoot: H256;1624  readonly maxPovSize: u32;1625}16261627/** @name PolkadotPrimitivesV1UpgradeRestriction */1628export interface PolkadotPrimitivesV1UpgradeRestriction extends Enum {1629  readonly isPresent: boolean;1630  readonly type: 'Present';1631}16321633/** @name SpCoreEcdsaSignature */1634export interface SpCoreEcdsaSignature extends U8aFixed {}16351636/** @name SpCoreEd25519Signature */1637export interface SpCoreEd25519Signature extends U8aFixed {}16381639/** @name SpCoreSr25519Signature */1640export interface SpCoreSr25519Signature extends U8aFixed {}16411642/** @name SpRuntimeArithmeticError */1643export interface SpRuntimeArithmeticError extends Enum {1644  readonly isUnderflow: boolean;1645  readonly isOverflow: boolean;1646  readonly isDivisionByZero: boolean;1647  readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';1648}16491650/** @name SpRuntimeDigest */1651export interface SpRuntimeDigest extends Struct {1652  readonly logs: Vec<SpRuntimeDigestDigestItem>;1653}16541655/** @name SpRuntimeDigestDigestItem */1656export interface SpRuntimeDigestDigestItem extends Enum {1657  readonly isOther: boolean;1658  readonly asOther: Bytes;1659  readonly isConsensus: boolean;1660  readonly asConsensus: ITuple<[U8aFixed, Bytes]>;1661  readonly isSeal: boolean;1662  readonly asSeal: ITuple<[U8aFixed, Bytes]>;1663  readonly isPreRuntime: boolean;1664  readonly asPreRuntime: ITuple<[U8aFixed, Bytes]>;1665  readonly isRuntimeEnvironmentUpdated: boolean;1666  readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';1667}16681669/** @name SpRuntimeDispatchError */1670export interface SpRuntimeDispatchError extends Enum {1671  readonly isOther: boolean;1672  readonly isCannotLookup: boolean;1673  readonly isBadOrigin: boolean;1674  readonly isModule: boolean;1675  readonly asModule: SpRuntimeModuleError;1676  readonly isConsumerRemaining: boolean;1677  readonly isNoProviders: boolean;1678  readonly isTooManyConsumers: boolean;1679  readonly isToken: boolean;1680  readonly asToken: SpRuntimeTokenError;1681  readonly isArithmetic: boolean;1682  readonly asArithmetic: SpRuntimeArithmeticError;1683  readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';1684}16851686/** @name SpRuntimeModuleError */1687export interface SpRuntimeModuleError extends Struct {1688  readonly index: u8;1689  readonly error: u8;1690}16911692/** @name SpRuntimeMultiSignature */1693export interface SpRuntimeMultiSignature extends Enum {1694  readonly isEd25519: boolean;1695  readonly asEd25519: SpCoreEd25519Signature;1696  readonly isSr25519: boolean;1697  readonly asSr25519: SpCoreSr25519Signature;1698  readonly isEcdsa: boolean;1699  readonly asEcdsa: SpCoreEcdsaSignature;1700  readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';1701}17021703/** @name SpRuntimeTokenError */1704export interface SpRuntimeTokenError extends Enum {1705  readonly isNoFunds: boolean;1706  readonly isWouldDie: boolean;1707  readonly isBelowMinimum: boolean;1708  readonly isCannotCreate: boolean;1709  readonly isUnknownAsset: boolean;1710  readonly isFrozen: boolean;1711  readonly isUnsupported: boolean;1712  readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';1713}17141715/** @name SpTrieStorageProof */1716export interface SpTrieStorageProof extends Struct {1717  readonly trieNodes: BTreeSet;1718}17191720/** @name SpVersionRuntimeVersion */1721export interface SpVersionRuntimeVersion extends Struct {1722  readonly specName: Text;1723  readonly implName: Text;1724  readonly authoringVersion: u32;1725  readonly specVersion: u32;1726  readonly implVersion: u32;1727  readonly apis: Vec<ITuple<[U8aFixed, u32]>>;1728  readonly transactionVersion: u32;1729  readonly stateVersion: u8;1730}17311732/** @name UpDataStructsAccessMode */1733export interface UpDataStructsAccessMode extends Enum {1734  readonly isNormal: boolean;1735  readonly isAllowList: boolean;1736  readonly type: 'Normal' | 'AllowList';1737}17381739/** @name UpDataStructsCollection */1740export interface UpDataStructsCollection extends Struct {1741  readonly owner: AccountId32;1742  readonly mode: UpDataStructsCollectionMode;1743  readonly access: UpDataStructsAccessMode;1744  readonly name: Vec<u16>;1745  readonly description: Vec<u16>;1746  readonly tokenPrefix: Bytes;1747  readonly mintMode: bool;1748  readonly offchainSchema: Bytes;1749  readonly schemaVersion: UpDataStructsSchemaVersion;1750  readonly sponsorship: UpDataStructsSponsorshipState;1751  readonly limits: UpDataStructsCollectionLimits;1752  readonly variableOnChainSchema: Bytes;1753  readonly constOnChainSchema: Bytes;1754  readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;1755}17561757/** @name UpDataStructsCollectionLimits */1758export interface UpDataStructsCollectionLimits extends Struct {1759  readonly accountTokenOwnershipLimit: Option<u32>;1760  readonly sponsoredDataSize: Option<u32>;1761  readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;1762  readonly tokenLimit: Option<u32>;1763  readonly sponsorTransferTimeout: Option<u32>;1764  readonly sponsorApproveTimeout: Option<u32>;1765  readonly ownerCanTransfer: Option<bool>;1766  readonly ownerCanDestroy: Option<bool>;1767  readonly transfersEnabled: Option<bool>;1768}17691770/** @name UpDataStructsCollectionMode */1771export interface UpDataStructsCollectionMode extends Enum {1772  readonly isNft: boolean;1773  readonly isFungible: boolean;1774  readonly asFungible: u8;1775  readonly isReFungible: boolean;1776  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1777}17781779/** @name UpDataStructsCollectionStats */1780export interface UpDataStructsCollectionStats extends Struct {1781  readonly created: u32;1782  readonly destroyed: u32;1783  readonly alive: u32;1784}17851786/** @name UpDataStructsCreateCollectionData */1787export interface UpDataStructsCreateCollectionData extends Struct {1788  readonly mode: UpDataStructsCollectionMode;1789  readonly access: Option<UpDataStructsAccessMode>;1790  readonly name: Vec<u16>;1791  readonly description: Vec<u16>;1792  readonly tokenPrefix: Bytes;1793  readonly offchainSchema: Bytes;1794  readonly schemaVersion: Option<UpDataStructsSchemaVersion>;1795  readonly pendingSponsor: Option<AccountId32>;1796  readonly limits: Option<UpDataStructsCollectionLimits>;1797  readonly variableOnChainSchema: Bytes;1798  readonly constOnChainSchema: Bytes;1799  readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;1800}18011802/** @name UpDataStructsCreateFungibleData */1803export interface UpDataStructsCreateFungibleData extends Struct {1804  readonly value: u128;1805}18061807/** @name UpDataStructsCreateItemData */1808export interface UpDataStructsCreateItemData extends Enum {1809  readonly isNft: boolean;1810  readonly asNft: UpDataStructsCreateNftData;1811  readonly isFungible: boolean;1812  readonly asFungible: UpDataStructsCreateFungibleData;1813  readonly isReFungible: boolean;1814  readonly asReFungible: UpDataStructsCreateReFungibleData;1815  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1816}18171818/** @name UpDataStructsCreateItemExData */1819export interface UpDataStructsCreateItemExData extends Enum {1820  readonly isNft: boolean;1821  readonly asNft: Vec<UpDataStructsCreateNftExData>;1822  readonly isFungible: boolean;1823  readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr,u128>;1824  readonly isRefungibleMultipleItems: boolean;1825  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;1826  readonly isRefungibleMultipleOwners: boolean;1827  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;1828  readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1829}18301831/** @name UpDataStructsCreateNftData */1832export interface UpDataStructsCreateNftData extends Struct {1833  readonly constData: Bytes;1834  readonly variableData: Bytes;1835}18361837/** @name UpDataStructsCreateNftExData */1838export interface UpDataStructsCreateNftExData extends Struct {1839  readonly constData: Bytes;1840  readonly variableData: Bytes;1841  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1842}18431844/** @name UpDataStructsCreateReFungibleData */1845export interface UpDataStructsCreateReFungibleData extends Struct {1846  readonly constData: Bytes;1847  readonly variableData: Bytes;1848  readonly pieces: u128;1849}18501851/** @name UpDataStructsCreateRefungibleExData */1852export interface UpDataStructsCreateRefungibleExData extends Struct {1853  readonly constData: Bytes;1854  readonly variableData: Bytes;1855  readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;1856}18571858/** @name UpDataStructsMetaUpdatePermission */1859export interface UpDataStructsMetaUpdatePermission extends Enum {1860  readonly isItemOwner: boolean;1861  readonly isAdmin: boolean;1862  readonly isNone: boolean;1863  readonly type: 'ItemOwner' | 'Admin' | 'None';1864}18651866/** @name UpDataStructsSchemaVersion */1867export interface UpDataStructsSchemaVersion extends Enum {1868  readonly isImageURL: boolean;1869  readonly isUnique: boolean;1870  readonly type: 'ImageURL' | 'Unique';1871}18721873/** @name UpDataStructsSponsoringRateLimit */1874export interface UpDataStructsSponsoringRateLimit extends Enum {1875  readonly isSponsoringDisabled: boolean;1876  readonly isBlocks: boolean;1877  readonly asBlocks: u32;1878  readonly type: 'SponsoringDisabled' | 'Blocks';1879}18801881/** @name UpDataStructsSponsorshipState */1882export interface UpDataStructsSponsorshipState extends Enum {1883  readonly isDisabled: boolean;1884  readonly isUnconfirmed: boolean;1885  readonly asUnconfirmed: AccountId32;1886  readonly isConfirmed: boolean;1887  readonly asConfirmed: AccountId32;1888  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';1889}18901891/** @name XcmDoubleEncoded */1892export interface XcmDoubleEncoded extends Struct {1893  readonly encoded: Bytes;1894}18951896/** @name XcmV0Junction */1897export interface XcmV0Junction extends Enum {1898  readonly isParent: boolean;1899  readonly isParachain: boolean;1900  readonly asParachain: Compact<u32>;1901  readonly isAccountId32: boolean;1902  readonly asAccountId32: {1903    readonly network: XcmV0JunctionNetworkId;1904    readonly id: U8aFixed;1905  } & Struct;1906  readonly isAccountIndex64: boolean;1907  readonly asAccountIndex64: {1908    readonly network: XcmV0JunctionNetworkId;1909    readonly index: Compact<u64>;1910  } & Struct;1911  readonly isAccountKey20: boolean;1912  readonly asAccountKey20: {1913    readonly network: XcmV0JunctionNetworkId;1914    readonly key: U8aFixed;1915  } & Struct;1916  readonly isPalletInstance: boolean;1917  readonly asPalletInstance: u8;1918  readonly isGeneralIndex: boolean;1919  readonly asGeneralIndex: Compact<u128>;1920  readonly isGeneralKey: boolean;1921  readonly asGeneralKey: Bytes;1922  readonly isOnlyChild: boolean;1923  readonly isPlurality: boolean;1924  readonly asPlurality: {1925    readonly id: XcmV0JunctionBodyId;1926    readonly part: XcmV0JunctionBodyPart;1927  } & Struct;1928  readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';1929}19301931/** @name XcmV0JunctionBodyId */1932export interface XcmV0JunctionBodyId extends Enum {1933  readonly isUnit: boolean;1934  readonly isNamed: boolean;1935  readonly asNamed: Bytes;1936  readonly isIndex: boolean;1937  readonly asIndex: Compact<u32>;1938  readonly isExecutive: boolean;1939  readonly isTechnical: boolean;1940  readonly isLegislative: boolean;1941  readonly isJudicial: boolean;1942  readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';1943}19441945/** @name XcmV0JunctionBodyPart */1946export interface XcmV0JunctionBodyPart extends Enum {1947  readonly isVoice: boolean;1948  readonly isMembers: boolean;1949  readonly asMembers: {1950    readonly count: Compact<u32>;1951  } & Struct;1952  readonly isFraction: boolean;1953  readonly asFraction: {1954    readonly nom: Compact<u32>;1955    readonly denom: Compact<u32>;1956  } & Struct;1957  readonly isAtLeastProportion: boolean;1958  readonly asAtLeastProportion: {1959    readonly nom: Compact<u32>;1960    readonly denom: Compact<u32>;1961  } & Struct;1962  readonly isMoreThanProportion: boolean;1963  readonly asMoreThanProportion: {1964    readonly nom: Compact<u32>;1965    readonly denom: Compact<u32>;1966  } & Struct;1967  readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';1968}19691970/** @name XcmV0JunctionNetworkId */1971export interface XcmV0JunctionNetworkId extends Enum {1972  readonly isAny: boolean;1973  readonly isNamed: boolean;1974  readonly asNamed: Bytes;1975  readonly isPolkadot: boolean;1976  readonly isKusama: boolean;1977  readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';1978}19791980/** @name XcmV0MultiAsset */1981export interface XcmV0MultiAsset extends Enum {1982  readonly isNone: boolean;1983  readonly isAll: boolean;1984  readonly isAllFungible: boolean;1985  readonly isAllNonFungible: boolean;1986  readonly isAllAbstractFungible: boolean;1987  readonly asAllAbstractFungible: {1988    readonly id: Bytes;1989  } & Struct;1990  readonly isAllAbstractNonFungible: boolean;1991  readonly asAllAbstractNonFungible: {1992    readonly class: Bytes;1993  } & Struct;1994  readonly isAllConcreteFungible: boolean;1995  readonly asAllConcreteFungible: {1996    readonly id: XcmV0MultiLocation;1997  } & Struct;1998  readonly isAllConcreteNonFungible: boolean;1999  readonly asAllConcreteNonFungible: {2000    readonly class: XcmV0MultiLocation;2001  } & Struct;2002  readonly isAbstractFungible: boolean;2003  readonly asAbstractFungible: {2004    readonly id: Bytes;2005    readonly amount: Compact<u128>;2006  } & Struct;2007  readonly isAbstractNonFungible: boolean;2008  readonly asAbstractNonFungible: {2009    readonly class: Bytes;2010    readonly instance: XcmV1MultiassetAssetInstance;2011  } & Struct;2012  readonly isConcreteFungible: boolean;2013  readonly asConcreteFungible: {2014    readonly id: XcmV0MultiLocation;2015    readonly amount: Compact<u128>;2016  } & Struct;2017  readonly isConcreteNonFungible: boolean;2018  readonly asConcreteNonFungible: {2019    readonly class: XcmV0MultiLocation;2020    readonly instance: XcmV1MultiassetAssetInstance;2021  } & Struct;2022  readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';2023}20242025/** @name XcmV0MultiLocation */2026export interface XcmV0MultiLocation extends Enum {2027  readonly isNull: boolean;2028  readonly isX1: boolean;2029  readonly asX1: XcmV0Junction;2030  readonly isX2: boolean;2031  readonly asX2: ITuple<[XcmV0Junction, XcmV0Junction]>;2032  readonly isX3: boolean;2033  readonly asX3: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2034  readonly isX4: boolean;2035  readonly asX4: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2036  readonly isX5: boolean;2037  readonly asX5: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2038  readonly isX6: boolean;2039  readonly asX6: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2040  readonly isX7: boolean;2041  readonly asX7: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2042  readonly isX8: boolean;2043  readonly asX8: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2044  readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2045}20462047/** @name XcmV0Order */2048export interface XcmV0Order extends Enum {2049  readonly isNull: boolean;2050  readonly isDepositAsset: boolean;2051  readonly asDepositAsset: {2052    readonly assets: Vec<XcmV0MultiAsset>;2053    readonly dest: XcmV0MultiLocation;2054  } & Struct;2055  readonly isDepositReserveAsset: boolean;2056  readonly asDepositReserveAsset: {2057    readonly assets: Vec<XcmV0MultiAsset>;2058    readonly dest: XcmV0MultiLocation;2059    readonly effects: Vec<XcmV0Order>;2060  } & Struct;2061  readonly isExchangeAsset: boolean;2062  readonly asExchangeAsset: {2063    readonly give: Vec<XcmV0MultiAsset>;2064    readonly receive: Vec<XcmV0MultiAsset>;2065  } & Struct;2066  readonly isInitiateReserveWithdraw: boolean;2067  readonly asInitiateReserveWithdraw: {2068    readonly assets: Vec<XcmV0MultiAsset>;2069    readonly reserve: XcmV0MultiLocation;2070    readonly effects: Vec<XcmV0Order>;2071  } & Struct;2072  readonly isInitiateTeleport: boolean;2073  readonly asInitiateTeleport: {2074    readonly assets: Vec<XcmV0MultiAsset>;2075    readonly dest: XcmV0MultiLocation;2076    readonly effects: Vec<XcmV0Order>;2077  } & Struct;2078  readonly isQueryHolding: boolean;2079  readonly asQueryHolding: {2080    readonly queryId: Compact<u64>;2081    readonly dest: XcmV0MultiLocation;2082    readonly assets: Vec<XcmV0MultiAsset>;2083  } & Struct;2084  readonly isBuyExecution: boolean;2085  readonly asBuyExecution: {2086    readonly fees: XcmV0MultiAsset;2087    readonly weight: u64;2088    readonly debt: u64;2089    readonly haltOnError: bool;2090    readonly xcm: Vec<XcmV0Xcm>;2091  } & Struct;2092  readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2093}20942095/** @name XcmV0OriginKind */2096export interface XcmV0OriginKind extends Enum {2097  readonly isNative: boolean;2098  readonly isSovereignAccount: boolean;2099  readonly isSuperuser: boolean;2100  readonly isXcm: boolean;2101  readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';2102}21032104/** @name XcmV0Response */2105export interface XcmV0Response extends Enum {2106  readonly isAssets: boolean;2107  readonly asAssets: Vec<XcmV0MultiAsset>;2108  readonly type: 'Assets';2109}21102111/** @name XcmV0Xcm */2112export interface XcmV0Xcm extends Enum {2113  readonly isWithdrawAsset: boolean;2114  readonly asWithdrawAsset: {2115    readonly assets: Vec<XcmV0MultiAsset>;2116    readonly effects: Vec<XcmV0Order>;2117  } & Struct;2118  readonly isReserveAssetDeposit: boolean;2119  readonly asReserveAssetDeposit: {2120    readonly assets: Vec<XcmV0MultiAsset>;2121    readonly effects: Vec<XcmV0Order>;2122  } & Struct;2123  readonly isTeleportAsset: boolean;2124  readonly asTeleportAsset: {2125    readonly assets: Vec<XcmV0MultiAsset>;2126    readonly effects: Vec<XcmV0Order>;2127  } & Struct;2128  readonly isQueryResponse: boolean;2129  readonly asQueryResponse: {2130    readonly queryId: Compact<u64>;2131    readonly response: XcmV0Response;2132  } & Struct;2133  readonly isTransferAsset: boolean;2134  readonly asTransferAsset: {2135    readonly assets: Vec<XcmV0MultiAsset>;2136    readonly dest: XcmV0MultiLocation;2137  } & Struct;2138  readonly isTransferReserveAsset: boolean;2139  readonly asTransferReserveAsset: {2140    readonly assets: Vec<XcmV0MultiAsset>;2141    readonly dest: XcmV0MultiLocation;2142    readonly effects: Vec<XcmV0Order>;2143  } & Struct;2144  readonly isTransact: boolean;2145  readonly asTransact: {2146    readonly originType: XcmV0OriginKind;2147    readonly requireWeightAtMost: u64;2148    readonly call: XcmDoubleEncoded;2149  } & Struct;2150  readonly isHrmpNewChannelOpenRequest: boolean;2151  readonly asHrmpNewChannelOpenRequest: {2152    readonly sender: Compact<u32>;2153    readonly maxMessageSize: Compact<u32>;2154    readonly maxCapacity: Compact<u32>;2155  } & Struct;2156  readonly isHrmpChannelAccepted: boolean;2157  readonly asHrmpChannelAccepted: {2158    readonly recipient: Compact<u32>;2159  } & Struct;2160  readonly isHrmpChannelClosing: boolean;2161  readonly asHrmpChannelClosing: {2162    readonly initiator: Compact<u32>;2163    readonly sender: Compact<u32>;2164    readonly recipient: Compact<u32>;2165  } & Struct;2166  readonly isRelayedFrom: boolean;2167  readonly asRelayedFrom: {2168    readonly who: XcmV0MultiLocation;2169    readonly message: XcmV0Xcm;2170  } & Struct;2171  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';2172}21732174/** @name XcmV1Junction */2175export interface XcmV1Junction extends Enum {2176  readonly isParachain: boolean;2177  readonly asParachain: Compact<u32>;2178  readonly isAccountId32: boolean;2179  readonly asAccountId32: {2180    readonly network: XcmV0JunctionNetworkId;2181    readonly id: U8aFixed;2182  } & Struct;2183  readonly isAccountIndex64: boolean;2184  readonly asAccountIndex64: {2185    readonly network: XcmV0JunctionNetworkId;2186    readonly index: Compact<u64>;2187  } & Struct;2188  readonly isAccountKey20: boolean;2189  readonly asAccountKey20: {2190    readonly network: XcmV0JunctionNetworkId;2191    readonly key: U8aFixed;2192  } & Struct;2193  readonly isPalletInstance: boolean;2194  readonly asPalletInstance: u8;2195  readonly isGeneralIndex: boolean;2196  readonly asGeneralIndex: Compact<u128>;2197  readonly isGeneralKey: boolean;2198  readonly asGeneralKey: Bytes;2199  readonly isOnlyChild: boolean;2200  readonly isPlurality: boolean;2201  readonly asPlurality: {2202    readonly id: XcmV0JunctionBodyId;2203    readonly part: XcmV0JunctionBodyPart;2204  } & Struct;2205  readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';2206}22072208/** @name XcmV1MultiAsset */2209export interface XcmV1MultiAsset extends Struct {2210  readonly id: XcmV1MultiassetAssetId;2211  readonly fun: XcmV1MultiassetFungibility;2212}22132214/** @name XcmV1MultiassetAssetId */2215export interface XcmV1MultiassetAssetId extends Enum {2216  readonly isConcrete: boolean;2217  readonly asConcrete: XcmV1MultiLocation;2218  readonly isAbstract: boolean;2219  readonly asAbstract: Bytes;2220  readonly type: 'Concrete' | 'Abstract';2221}22222223/** @name XcmV1MultiassetAssetInstance */2224export interface XcmV1MultiassetAssetInstance extends Enum {2225  readonly isUndefined: boolean;2226  readonly isIndex: boolean;2227  readonly asIndex: Compact<u128>;2228  readonly isArray4: boolean;2229  readonly asArray4: U8aFixed;2230  readonly isArray8: boolean;2231  readonly asArray8: U8aFixed;2232  readonly isArray16: boolean;2233  readonly asArray16: U8aFixed;2234  readonly isArray32: boolean;2235  readonly asArray32: U8aFixed;2236  readonly isBlob: boolean;2237  readonly asBlob: Bytes;2238  readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';2239}22402241/** @name XcmV1MultiassetFungibility */2242export interface XcmV1MultiassetFungibility extends Enum {2243  readonly isFungible: boolean;2244  readonly asFungible: Compact<u128>;2245  readonly isNonFungible: boolean;2246  readonly asNonFungible: XcmV1MultiassetAssetInstance;2247  readonly type: 'Fungible' | 'NonFungible';2248}22492250/** @name XcmV1MultiassetMultiAssetFilter */2251export interface XcmV1MultiassetMultiAssetFilter extends Enum {2252  readonly isDefinite: boolean;2253  readonly asDefinite: XcmV1MultiassetMultiAssets;2254  readonly isWild: boolean;2255  readonly asWild: XcmV1MultiassetWildMultiAsset;2256  readonly type: 'Definite' | 'Wild';2257}22582259/** @name XcmV1MultiassetMultiAssets */2260export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}22612262/** @name XcmV1MultiassetWildFungibility */2263export interface XcmV1MultiassetWildFungibility extends Enum {2264  readonly isFungible: boolean;2265  readonly isNonFungible: boolean;2266  readonly type: 'Fungible' | 'NonFungible';2267}22682269/** @name XcmV1MultiassetWildMultiAsset */2270export interface XcmV1MultiassetWildMultiAsset extends Enum {2271  readonly isAll: boolean;2272  readonly isAllOf: boolean;2273  readonly asAllOf: {2274    readonly id: XcmV1MultiassetAssetId;2275    readonly fun: XcmV1MultiassetWildFungibility;2276  } & Struct;2277  readonly type: 'All' | 'AllOf';2278}22792280/** @name XcmV1MultiLocation */2281export interface XcmV1MultiLocation extends Struct {2282  readonly parents: u8;2283  readonly interior: XcmV1MultilocationJunctions;2284}22852286/** @name XcmV1MultilocationJunctions */2287export interface XcmV1MultilocationJunctions extends Enum {2288  readonly isHere: boolean;2289  readonly isX1: boolean;2290  readonly asX1: XcmV1Junction;2291  readonly isX2: boolean;2292  readonly asX2: ITuple<[XcmV1Junction, XcmV1Junction]>;2293  readonly isX3: boolean;2294  readonly asX3: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2295  readonly isX4: boolean;2296  readonly asX4: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2297  readonly isX5: boolean;2298  readonly asX5: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2299  readonly isX6: boolean;2300  readonly asX6: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2301  readonly isX7: boolean;2302  readonly asX7: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2303  readonly isX8: boolean;2304  readonly asX8: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2305  readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2306}23072308/** @name XcmV1Order */2309export interface XcmV1Order extends Enum {2310  readonly isNoop: boolean;2311  readonly isDepositAsset: boolean;2312  readonly asDepositAsset: {2313    readonly assets: XcmV1MultiassetMultiAssetFilter;2314    readonly maxAssets: u32;2315    readonly beneficiary: XcmV1MultiLocation;2316  } & Struct;2317  readonly isDepositReserveAsset: boolean;2318  readonly asDepositReserveAsset: {2319    readonly assets: XcmV1MultiassetMultiAssetFilter;2320    readonly maxAssets: u32;2321    readonly dest: XcmV1MultiLocation;2322    readonly effects: Vec<XcmV1Order>;2323  } & Struct;2324  readonly isExchangeAsset: boolean;2325  readonly asExchangeAsset: {2326    readonly give: XcmV1MultiassetMultiAssetFilter;2327    readonly receive: XcmV1MultiassetMultiAssets;2328  } & Struct;2329  readonly isInitiateReserveWithdraw: boolean;2330  readonly asInitiateReserveWithdraw: {2331    readonly assets: XcmV1MultiassetMultiAssetFilter;2332    readonly reserve: XcmV1MultiLocation;2333    readonly effects: Vec<XcmV1Order>;2334  } & Struct;2335  readonly isInitiateTeleport: boolean;2336  readonly asInitiateTeleport: {2337    readonly assets: XcmV1MultiassetMultiAssetFilter;2338    readonly dest: XcmV1MultiLocation;2339    readonly effects: Vec<XcmV1Order>;2340  } & Struct;2341  readonly isQueryHolding: boolean;2342  readonly asQueryHolding: {2343    readonly queryId: Compact<u64>;2344    readonly dest: XcmV1MultiLocation;2345    readonly assets: XcmV1MultiassetMultiAssetFilter;2346  } & Struct;2347  readonly isBuyExecution: boolean;2348  readonly asBuyExecution: {2349    readonly fees: XcmV1MultiAsset;2350    readonly weight: u64;2351    readonly debt: u64;2352    readonly haltOnError: bool;2353    readonly instructions: Vec<XcmV1Xcm>;2354  } & Struct;2355  readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2356}23572358/** @name XcmV1Response */2359export interface XcmV1Response extends Enum {2360  readonly isAssets: boolean;2361  readonly asAssets: XcmV1MultiassetMultiAssets;2362  readonly isVersion: boolean;2363  readonly asVersion: u32;2364  readonly type: 'Assets' | 'Version';2365}23662367/** @name XcmV1Xcm */2368export interface XcmV1Xcm extends Enum {2369  readonly isWithdrawAsset: boolean;2370  readonly asWithdrawAsset: {2371    readonly assets: XcmV1MultiassetMultiAssets;2372    readonly effects: Vec<XcmV1Order>;2373  } & Struct;2374  readonly isReserveAssetDeposited: boolean;2375  readonly asReserveAssetDeposited: {2376    readonly assets: XcmV1MultiassetMultiAssets;2377    readonly effects: Vec<XcmV1Order>;2378  } & Struct;2379  readonly isReceiveTeleportedAsset: boolean;2380  readonly asReceiveTeleportedAsset: {2381    readonly assets: XcmV1MultiassetMultiAssets;2382    readonly effects: Vec<XcmV1Order>;2383  } & Struct;2384  readonly isQueryResponse: boolean;2385  readonly asQueryResponse: {2386    readonly queryId: Compact<u64>;2387    readonly response: XcmV1Response;2388  } & Struct;2389  readonly isTransferAsset: boolean;2390  readonly asTransferAsset: {2391    readonly assets: XcmV1MultiassetMultiAssets;2392    readonly beneficiary: XcmV1MultiLocation;2393  } & Struct;2394  readonly isTransferReserveAsset: boolean;2395  readonly asTransferReserveAsset: {2396    readonly assets: XcmV1MultiassetMultiAssets;2397    readonly dest: XcmV1MultiLocation;2398    readonly effects: Vec<XcmV1Order>;2399  } & Struct;2400  readonly isTransact: boolean;2401  readonly asTransact: {2402    readonly originType: XcmV0OriginKind;2403    readonly requireWeightAtMost: u64;2404    readonly call: XcmDoubleEncoded;2405  } & Struct;2406  readonly isHrmpNewChannelOpenRequest: boolean;2407  readonly asHrmpNewChannelOpenRequest: {2408    readonly sender: Compact<u32>;2409    readonly maxMessageSize: Compact<u32>;2410    readonly maxCapacity: Compact<u32>;2411  } & Struct;2412  readonly isHrmpChannelAccepted: boolean;2413  readonly asHrmpChannelAccepted: {2414    readonly recipient: Compact<u32>;2415  } & Struct;2416  readonly isHrmpChannelClosing: boolean;2417  readonly asHrmpChannelClosing: {2418    readonly initiator: Compact<u32>;2419    readonly sender: Compact<u32>;2420    readonly recipient: Compact<u32>;2421  } & Struct;2422  readonly isRelayedFrom: boolean;2423  readonly asRelayedFrom: {2424    readonly who: XcmV1MultilocationJunctions;2425    readonly message: XcmV1Xcm;2426  } & Struct;2427  readonly isSubscribeVersion: boolean;2428  readonly asSubscribeVersion: {2429    readonly queryId: Compact<u64>;2430    readonly maxResponseWeight: Compact<u64>;2431  } & Struct;2432  readonly isUnsubscribeVersion: boolean;2433  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';2434}24352436/** @name XcmV2Instruction */2437export interface XcmV2Instruction extends Enum {2438  readonly isWithdrawAsset: boolean;2439  readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;2440  readonly isReserveAssetDeposited: boolean;2441  readonly asReserveAssetDeposited: XcmV1MultiassetMultiAssets;2442  readonly isReceiveTeleportedAsset: boolean;2443  readonly asReceiveTeleportedAsset: XcmV1MultiassetMultiAssets;2444  readonly isQueryResponse: boolean;2445  readonly asQueryResponse: {2446    readonly queryId: Compact<u64>;2447    readonly response: XcmV2Response;2448    readonly maxWeight: Compact<u64>;2449  } & Struct;2450  readonly isTransferAsset: boolean;2451  readonly asTransferAsset: {2452    readonly assets: XcmV1MultiassetMultiAssets;2453    readonly beneficiary: XcmV1MultiLocation;2454  } & Struct;2455  readonly isTransferReserveAsset: boolean;2456  readonly asTransferReserveAsset: {2457    readonly assets: XcmV1MultiassetMultiAssets;2458    readonly dest: XcmV1MultiLocation;2459    readonly xcm: XcmV2Xcm;2460  } & Struct;2461  readonly isTransact: boolean;2462  readonly asTransact: {2463    readonly originType: XcmV0OriginKind;2464    readonly requireWeightAtMost: Compact<u64>;2465    readonly call: XcmDoubleEncoded;2466  } & Struct;2467  readonly isHrmpNewChannelOpenRequest: boolean;2468  readonly asHrmpNewChannelOpenRequest: {2469    readonly sender: Compact<u32>;2470    readonly maxMessageSize: Compact<u32>;2471    readonly maxCapacity: Compact<u32>;2472  } & Struct;2473  readonly isHrmpChannelAccepted: boolean;2474  readonly asHrmpChannelAccepted: {2475    readonly recipient: Compact<u32>;2476  } & Struct;2477  readonly isHrmpChannelClosing: boolean;2478  readonly asHrmpChannelClosing: {2479    readonly initiator: Compact<u32>;2480    readonly sender: Compact<u32>;2481    readonly recipient: Compact<u32>;2482  } & Struct;2483  readonly isClearOrigin: boolean;2484  readonly isDescendOrigin: boolean;2485  readonly asDescendOrigin: XcmV1MultilocationJunctions;2486  readonly isReportError: boolean;2487  readonly asReportError: {2488    readonly queryId: Compact<u64>;2489    readonly dest: XcmV1MultiLocation;2490    readonly maxResponseWeight: Compact<u64>;2491  } & Struct;2492  readonly isDepositAsset: boolean;2493  readonly asDepositAsset: {2494    readonly assets: XcmV1MultiassetMultiAssetFilter;2495    readonly maxAssets: Compact<u32>;2496    readonly beneficiary: XcmV1MultiLocation;2497  } & Struct;2498  readonly isDepositReserveAsset: boolean;2499  readonly asDepositReserveAsset: {2500    readonly assets: XcmV1MultiassetMultiAssetFilter;2501    readonly maxAssets: Compact<u32>;2502    readonly dest: XcmV1MultiLocation;2503    readonly xcm: XcmV2Xcm;2504  } & Struct;2505  readonly isExchangeAsset: boolean;2506  readonly asExchangeAsset: {2507    readonly give: XcmV1MultiassetMultiAssetFilter;2508    readonly receive: XcmV1MultiassetMultiAssets;2509  } & Struct;2510  readonly isInitiateReserveWithdraw: boolean;2511  readonly asInitiateReserveWithdraw: {2512    readonly assets: XcmV1MultiassetMultiAssetFilter;2513    readonly reserve: XcmV1MultiLocation;2514    readonly xcm: XcmV2Xcm;2515  } & Struct;2516  readonly isInitiateTeleport: boolean;2517  readonly asInitiateTeleport: {2518    readonly assets: XcmV1MultiassetMultiAssetFilter;2519    readonly dest: XcmV1MultiLocation;2520    readonly xcm: XcmV2Xcm;2521  } & Struct;2522  readonly isQueryHolding: boolean;2523  readonly asQueryHolding: {2524    readonly queryId: Compact<u64>;2525    readonly dest: XcmV1MultiLocation;2526    readonly assets: XcmV1MultiassetMultiAssetFilter;2527    readonly maxResponseWeight: Compact<u64>;2528  } & Struct;2529  readonly isBuyExecution: boolean;2530  readonly asBuyExecution: {2531    readonly fees: XcmV1MultiAsset;2532    readonly weightLimit: XcmV2WeightLimit;2533  } & Struct;2534  readonly isRefundSurplus: boolean;2535  readonly isSetErrorHandler: boolean;2536  readonly asSetErrorHandler: XcmV2Xcm;2537  readonly isSetAppendix: boolean;2538  readonly asSetAppendix: XcmV2Xcm;2539  readonly isClearError: boolean;2540  readonly isClaimAsset: boolean;2541  readonly asClaimAsset: {2542    readonly assets: XcmV1MultiassetMultiAssets;2543    readonly ticket: XcmV1MultiLocation;2544  } & Struct;2545  readonly isTrap: boolean;2546  readonly asTrap: Compact<u64>;2547  readonly isSubscribeVersion: boolean;2548  readonly asSubscribeVersion: {2549    readonly queryId: Compact<u64>;2550    readonly maxResponseWeight: Compact<u64>;2551  } & Struct;2552  readonly isUnsubscribeVersion: boolean;2553  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';2554}25552556/** @name XcmV2Response */2557export interface XcmV2Response extends Enum {2558  readonly isNull: boolean;2559  readonly isAssets: boolean;2560  readonly asAssets: XcmV1MultiassetMultiAssets;2561  readonly isExecutionResult: boolean;2562  readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;2563  readonly isVersion: boolean;2564  readonly asVersion: u32;2565  readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';2566}25672568/** @name XcmV2TraitsError */2569export interface XcmV2TraitsError extends Enum {2570  readonly isOverflow: boolean;2571  readonly isUnimplemented: boolean;2572  readonly isUntrustedReserveLocation: boolean;2573  readonly isUntrustedTeleportLocation: boolean;2574  readonly isMultiLocationFull: boolean;2575  readonly isMultiLocationNotInvertible: boolean;2576  readonly isBadOrigin: boolean;2577  readonly isInvalidLocation: boolean;2578  readonly isAssetNotFound: boolean;2579  readonly isFailedToTransactAsset: boolean;2580  readonly isNotWithdrawable: boolean;2581  readonly isLocationCannotHold: boolean;2582  readonly isExceedsMaxMessageSize: boolean;2583  readonly isDestinationUnsupported: boolean;2584  readonly isTransport: boolean;2585  readonly isUnroutable: boolean;2586  readonly isUnknownClaim: boolean;2587  readonly isFailedToDecode: boolean;2588  readonly isMaxWeightInvalid: boolean;2589  readonly isNotHoldingFees: boolean;2590  readonly isTooExpensive: boolean;2591  readonly isTrap: boolean;2592  readonly asTrap: u64;2593  readonly isUnhandledXcmVersion: boolean;2594  readonly isWeightLimitReached: boolean;2595  readonly asWeightLimitReached: u64;2596  readonly isBarrier: boolean;2597  readonly isWeightNotComputable: boolean;2598  readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';2599}26002601/** @name XcmV2TraitsOutcome */2602export interface XcmV2TraitsOutcome extends Enum {2603  readonly isComplete: boolean;2604  readonly asComplete: u64;2605  readonly isIncomplete: boolean;2606  readonly asIncomplete: ITuple<[u64, XcmV2TraitsError]>;2607  readonly isError: boolean;2608  readonly asError: XcmV2TraitsError;2609  readonly type: 'Complete' | 'Incomplete' | 'Error';2610}26112612/** @name XcmV2WeightLimit */2613export interface XcmV2WeightLimit extends Enum {2614  readonly isUnlimited: boolean;2615  readonly isLimited: boolean;2616  readonly asLimited: Compact<u64>;2617  readonly type: 'Unlimited' | 'Limited';2618}26192620/** @name XcmV2Xcm */2621export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}26222623/** @name XcmVersionedMultiAssets */2624export interface XcmVersionedMultiAssets extends Enum {2625  readonly isV0: boolean;2626  readonly asV0: Vec<XcmV0MultiAsset>;2627  readonly isV1: boolean;2628  readonly asV1: XcmV1MultiassetMultiAssets;2629  readonly type: 'V0' | 'V1';2630}26312632/** @name XcmVersionedMultiLocation */2633export interface XcmVersionedMultiLocation extends Enum {2634  readonly isV0: boolean;2635  readonly asV0: XcmV0MultiLocation;2636  readonly isV1: boolean;2637  readonly asV1: XcmV1MultiLocation;2638  readonly type: 'V0' | 'V1';2639}26402641/** @name XcmVersionedXcm */2642export interface XcmVersionedXcm extends Enum {2643  readonly isV0: boolean;2644  readonly asV0: XcmV0Xcm;2645  readonly isV1: boolean;2646  readonly asV1: XcmV1Xcm;2647  readonly isV2: boolean;2648  readonly asV2: XcmV2Xcm;2649  readonly type: 'V0' | 'V1' | 'V2';2650}26512652export type PHANTOM_UNIQUE = 'unique';
modifiedtests/src/limits.test.tsdiffbeforeafterboth
--- a/tests/src/limits.test.ts
+++ b/tests/src/limits.test.ts
@@ -395,4 +395,73 @@
     expect(aliceBalanceAfterSponsoredTransaction1 < aliceBalanceBefore).to.be.true;
     //expect(aliceBalanceAfterSponsoredTransaction1).to.be.lessThan(aliceBalanceBefore);
   });
+  
+  it('Effective collection limits', async () => {
+    await usingApi(async (api) => {
+      const collectionId = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+      
+      { // Check that limits is undefined
+        const collection = await api.rpc.unique.collectionById(collectionId);
+        expect(collection.isSome).to.be.true;
+        const limits = collection.unwrap().limits;
+        expect(limits).to.be.any;
+        
+        expect(limits.accountTokenOwnershipLimit.toHuman()).to.be.null;
+        expect(limits.sponsoredDataSize.toHuman()).to.be.null;
+        expect(limits.sponsoredDataRateLimit.toHuman()).to.be.null;
+        expect(limits.tokenLimit.toHuman()).to.be.null;
+        expect(limits.sponsorTransferTimeout.toHuman()).to.be.null;
+        expect(limits.sponsorApproveTimeout.toHuman()).to.be.null;
+        expect(limits.ownerCanTransfer.toHuman()).to.be.null;
+        expect(limits.ownerCanDestroy.toHuman()).to.be.null;
+        expect(limits.transfersEnabled.toHuman()).to.be.null;
+      }
+  
+      { // Check that limits is undefined for non-existent collection
+        const limits = await api.rpc.unique.effectiveCollectionLimits(11111);
+        expect(limits.toHuman()).to.be.null;
+      }
+  
+      { // Check that default values defined for collection limits
+        const limitsOpt = await api.rpc.unique.effectiveCollectionLimits(collectionId);
+        expect(limitsOpt.isNone).to.be.false;
+        const limits = limitsOpt.unwrap();
+  
+        expect(limits.accountTokenOwnershipLimit.toHuman()).to.be.eq('100,000');
+        expect(limits.sponsoredDataSize.toHuman()).to.be.eq('2,048');
+        expect(limits.sponsoredDataRateLimit.toHuman()).to.be.eq('SponsoringDisabled');
+        expect(limits.tokenLimit.toHuman()).to.be.eq('4,294,967,295');
+        expect(limits.sponsorTransferTimeout.toHuman()).to.be.eq('5');
+        expect(limits.sponsorApproveTimeout.toHuman()).to.be.eq('5');
+        expect(limits.ownerCanTransfer.toHuman()).to.be.true;
+        expect(limits.ownerCanDestroy.toHuman()).to.be.true;
+        expect(limits.transfersEnabled.toHuman()).to.be.true;
+      }
+
+      { //Check the values for collection limits
+        await setCollectionLimitsExpectSuccess(alice, collectionId, {
+          accountTokenOwnershipLimit: 99_999,
+          sponsoredDataSize: 1024,
+          tokenLimit: 123,
+          transfersEnabled: false,
+        });
+
+        const limitsOpt = await api.rpc.unique.effectiveCollectionLimits(collectionId);
+        expect(limitsOpt.isNone).to.be.false;
+        const limits = limitsOpt.unwrap();
+  
+        expect(limits.accountTokenOwnershipLimit.toHuman()).to.be.eq('99,999');
+        expect(limits.sponsoredDataSize.toHuman()).to.be.eq('1,024');
+        expect(limits.sponsoredDataRateLimit.toHuman()).to.be.eq('SponsoringDisabled');
+        expect(limits.tokenLimit.toHuman()).to.be.eq('123');
+        expect(limits.sponsorTransferTimeout.toHuman()).to.be.eq('5');
+        expect(limits.sponsorApproveTimeout.toHuman()).to.be.eq('5');
+        expect(limits.ownerCanTransfer.toHuman()).to.be.true;
+        expect(limits.ownerCanDestroy.toHuman()).to.be.true;
+        expect(limits.transfersEnabled.toHuman()).to.be.false;
+      }
+    });
+  });
 });
+
+
addedtests/src/nextSponsoring.test.tsdiffbeforeafterboth
--- /dev/null
+++ b/tests/src/nextSponsoring.test.ts
@@ -0,0 +1,110 @@
+// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
+// This file is part of Unique Network.
+
+// Unique Network is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// Unique Network is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
+
+import {ApiPromise} from '@polkadot/api';
+import {IKeyringPair} from '@polkadot/types/types';
+import chai from 'chai';
+import chaiAsPromised from 'chai-as-promised';
+import privateKey from './substrate/privateKey';
+import {default as usingApi} from './substrate/substrate-api';
+import {
+  createCollectionExpectSuccess,
+  setCollectionSponsorExpectSuccess,
+  confirmSponsorshipExpectSuccess,
+  createItemExpectSuccess,
+  transferExpectSuccess,
+  normalizeAccountId,
+  getNextSponsored,
+} from './util/helpers';
+
+chai.use(chaiAsPromised);
+const expect = chai.expect;
+
+
+
+describe('Integration Test getNextSponsored(collection_id, owner, item_id):', () => {
+  let alice: IKeyringPair;
+  let bob: IKeyringPair;
+
+  before(async () => {
+    await usingApi(async () => {
+      alice = privateKey('//Alice');
+      bob = privateKey('//Bob');
+    });
+  });
+
+  it('NFT', async () => {
+    await usingApi(async (api: ApiPromise) => {
+
+      // Not existing collection 
+      expect(await getNextSponsored(api, 0, normalizeAccountId(alice), 0)).to.be.equal(-1);
+
+      const collectionId = await createCollectionExpectSuccess();
+      const itemId = await createItemExpectSuccess(alice, collectionId, 'NFT', alice.address);
+
+      // Check with Disabled sponsoring state
+      expect(await getNextSponsored(api, collectionId, normalizeAccountId(alice), itemId)).to.be.equal(-1);
+      await setCollectionSponsorExpectSuccess(collectionId, bob.address);
+
+      // Check with Unconfirmed sponsoring state
+      expect(await getNextSponsored(api, collectionId, normalizeAccountId(alice), itemId)).to.be.equal(-1);
+      await confirmSponsorshipExpectSuccess(collectionId, '//Bob');
+
+      // Check with Confirmed sponsoring state
+      expect(await getNextSponsored(api, collectionId, normalizeAccountId(alice), itemId)).to.be.equal(0);
+
+      // After transfer
+      await transferExpectSuccess(collectionId, itemId, alice, bob, 1);
+      expect(await getNextSponsored(api, collectionId, normalizeAccountId(alice), itemId)).to.be.equal(5);
+
+      // Not existing token 
+      expect(await getNextSponsored(api, collectionId, normalizeAccountId(alice), itemId+1)).to.be.equal(-1);
+    });
+  });
+
+  it('Fungible', async () => {
+    await usingApi(async (api: ApiPromise) => {
+
+      const createMode = 'Fungible';
+      const funCollectionId = await createCollectionExpectSuccess({mode: {type: createMode, decimalPoints: 0}});
+      await createItemExpectSuccess(alice, funCollectionId, createMode);
+      await setCollectionSponsorExpectSuccess(funCollectionId, bob.address);
+      await confirmSponsorshipExpectSuccess(funCollectionId, '//Bob');
+      expect(await getNextSponsored(api, funCollectionId, normalizeAccountId(alice), 0)).to.be.equal(0);
+
+      await transferExpectSuccess(funCollectionId, 0, alice, bob, 10, 'Fungible');
+      expect(await getNextSponsored(api, funCollectionId, normalizeAccountId(alice), 0)).to.be.equal(5);
+    });
+  });
+
+  it('ReFungible', async () => {
+    await usingApi(async (api: ApiPromise) => {
+
+      const createMode = 'ReFungible';
+      const refunCollectionId = await createCollectionExpectSuccess({mode: {type: createMode}});
+      const refunItemId = await createItemExpectSuccess(alice, refunCollectionId, createMode);
+      await setCollectionSponsorExpectSuccess(refunCollectionId, bob.address);
+      await confirmSponsorshipExpectSuccess(refunCollectionId, '//Bob');
+      expect(await getNextSponsored(api, refunCollectionId, normalizeAccountId(alice), refunItemId)).to.be.equal(0);
+
+      await transferExpectSuccess(refunCollectionId, refunItemId, alice, bob, 10, 'ReFungible');
+      expect(await getNextSponsored(api, refunCollectionId, normalizeAccountId(alice), refunItemId)).to.be.equal(5);
+
+      // Not existing token 
+      expect(await getNextSponsored(api, refunCollectionId, normalizeAccountId(alice), refunItemId+1)).to.be.equal(-1);
+    });
+  });
+});
modifiedtests/src/util/helpers.tsdiffbeforeafterboth
--- a/tests/src/util/helpers.ts
+++ b/tests/src/util/helpers.ts
@@ -352,15 +352,12 @@
     // Run the CreateCollection transaction
     const alicePrivateKey = privateKey('//Alice');
     const tx = api.tx.unique.createCollectionEx({name: strToUTF16(name), description: strToUTF16(description), tokenPrefix: strToUTF16(tokenPrefix), mode: modeprm as any});
-    const events = await expect(submitTransactionExpectFailAsync(alicePrivateKey, tx)).to.be.rejected;
-    const result = getCreateCollectionResult(events);
+    await expect(submitTransactionExpectFailAsync(alicePrivateKey, tx)).to.be.rejected;
 
     // Get number of collections after the transaction
     const collectionCountAfter = await getCreatedCollectionCount(api);
 
     // What to expect
-    // tslint:disable-next-line:no-unused-expression
-    expect(result.success).to.be.false;
     expect(collectionCountAfter).to.be.equal(collectionCountBefore, 'Error: Collection with incorrect data created.');
   });
 }
@@ -619,6 +616,15 @@
   });
 }
 
+export async function getNextSponsored(
+  api: ApiPromise,
+  collectionId: number,
+  account: string | CrossAccountId,
+  tokenId: number,
+): Promise<number> {
+  return Number((await api.rpc.unique.nextSponsored(collectionId, account, tokenId)).unwrapOr(-1));
+}
+
 export async function toggleContractAllowlistExpectSuccess(sender: IKeyringPair, contractAddress: AccountId | string, value = true) {
   await usingApi(async (api) => {
     const tx = api.tx.unique.toggleContractAllowList(contractAddress, value);
@@ -847,6 +853,13 @@
   return balance;
 }
 
+export async function transferBalanceTo(api: ApiPromise, source: IKeyringPair, target: string, amount = 1000n * UNIQUE) {
+  const tx = api.tx.balances.transfer(target, amount);
+  const events = await submitTransactionAsync(source, tx);
+  const result = getGenericResult(events);
+  expect(result.success).to.be.true;
+}
+
 export async function
 scheduleTransferExpectSuccess(
   collectionId: number,