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
before · tests/src/interfaces/types-lookup.ts
1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34declare module '@polkadot/types/lookup' {5  import type { BTreeMap, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';6  import type { ITuple } from '@polkadot/types-codec/types';7  import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';8  import type { Event } from '@polkadot/types/interfaces/system';910  /** @name PolkadotPrimitivesV1PersistedValidationData (2) */11  export interface PolkadotPrimitivesV1PersistedValidationData extends Struct {12    readonly parentHead: Bytes;13    readonly relayParentNumber: u32;14    readonly relayParentStorageRoot: H256;15    readonly maxPovSize: u32;16  }1718  /** @name PolkadotPrimitivesV1UpgradeRestriction (9) */19  export interface PolkadotPrimitivesV1UpgradeRestriction extends Enum {20    readonly isPresent: boolean;21    readonly type: 'Present';22  }2324  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (10) */25  export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {26    readonly dmqMqcHead: H256;27    readonly relayDispatchQueueSize: ITuple<[u32, u32]>;28    readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;29    readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;30  }3132  /** @name PolkadotPrimitivesV1AbridgedHrmpChannel (15) */33  export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {34    readonly maxCapacity: u32;35    readonly maxTotalSize: u32;36    readonly maxMessageSize: u32;37    readonly msgCount: u32;38    readonly totalSize: u32;39    readonly mqcHead: Option<H256>;40  }4142  /** @name PolkadotPrimitivesV1AbridgedHostConfiguration (17) */43  export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {44    readonly maxCodeSize: u32;45    readonly maxHeadDataSize: u32;46    readonly maxUpwardQueueCount: u32;47    readonly maxUpwardQueueSize: u32;48    readonly maxUpwardMessageSize: u32;49    readonly maxUpwardMessageNumPerCandidate: u32;50    readonly hrmpMaxMessageNumPerCandidate: u32;51    readonly validationUpgradeCooldown: u32;52    readonly validationUpgradeDelay: u32;53  }5455  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (23) */56  export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {57    readonly recipient: u32;58    readonly data: Bytes;59  }6061  /** @name CumulusPalletParachainSystemCall (26) */62  export interface CumulusPalletParachainSystemCall extends Enum {63    readonly isSetValidationData: boolean;64    readonly asSetValidationData: {65      readonly data: CumulusPrimitivesParachainInherentParachainInherentData;66    } & Struct;67    readonly isSudoSendUpwardMessage: boolean;68    readonly asSudoSendUpwardMessage: {69      readonly message: Bytes;70    } & Struct;71    readonly isAuthorizeUpgrade: boolean;72    readonly asAuthorizeUpgrade: {73      readonly codeHash: H256;74    } & Struct;75    readonly isEnactAuthorizedUpgrade: boolean;76    readonly asEnactAuthorizedUpgrade: {77      readonly code: Bytes;78    } & Struct;79    readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';80  }8182  /** @name CumulusPrimitivesParachainInherentParachainInherentData (27) */83  export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {84    readonly validationData: PolkadotPrimitivesV1PersistedValidationData;85    readonly relayChainState: SpTrieStorageProof;86    readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;87    readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;88  }8990  /** @name SpTrieStorageProof (28) */91  export interface SpTrieStorageProof extends Struct {92    readonly trieNodes: Vec<Bytes>;93  }9495  /** @name PolkadotCorePrimitivesInboundDownwardMessage (30) */96  export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {97    readonly sentAt: u32;98    readonly msg: Bytes;99  }100101  /** @name PolkadotCorePrimitivesInboundHrmpMessage (33) */102  export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {103    readonly sentAt: u32;104    readonly data: Bytes;105  }106107  /** @name CumulusPalletParachainSystemEvent (36) */108  export interface CumulusPalletParachainSystemEvent extends Enum {109    readonly isValidationFunctionStored: boolean;110    readonly isValidationFunctionApplied: boolean;111    readonly asValidationFunctionApplied: u32;112    readonly isValidationFunctionDiscarded: boolean;113    readonly isUpgradeAuthorized: boolean;114    readonly asUpgradeAuthorized: H256;115    readonly isDownwardMessagesReceived: boolean;116    readonly asDownwardMessagesReceived: u32;117    readonly isDownwardMessagesProcessed: boolean;118    readonly asDownwardMessagesProcessed: ITuple<[u64, H256]>;119    readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';120  }121122  /** @name CumulusPalletParachainSystemError (37) */123  export interface CumulusPalletParachainSystemError extends Enum {124    readonly isOverlappingUpgrades: boolean;125    readonly isProhibitedByPolkadot: boolean;126    readonly isTooBig: boolean;127    readonly isValidationDataNotAvailable: boolean;128    readonly isHostConfigurationNotAvailable: boolean;129    readonly isNotScheduled: boolean;130    readonly isNothingAuthorized: boolean;131    readonly isUnauthorized: boolean;132    readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';133  }134135  /** @name PalletBalancesAccountData (40) */136  export interface PalletBalancesAccountData extends Struct {137    readonly free: u128;138    readonly reserved: u128;139    readonly miscFrozen: u128;140    readonly feeFrozen: u128;141  }142143  /** @name PalletBalancesBalanceLock (42) */144  export interface PalletBalancesBalanceLock extends Struct {145    readonly id: U8aFixed;146    readonly amount: u128;147    readonly reasons: PalletBalancesReasons;148  }149150  /** @name PalletBalancesReasons (44) */151  export interface PalletBalancesReasons extends Enum {152    readonly isFee: boolean;153    readonly isMisc: boolean;154    readonly isAll: boolean;155    readonly type: 'Fee' | 'Misc' | 'All';156  }157158  /** @name PalletBalancesReserveData (47) */159  export interface PalletBalancesReserveData extends Struct {160    readonly id: U8aFixed;161    readonly amount: u128;162  }163164  /** @name PalletBalancesReleases (49) */165  export interface PalletBalancesReleases extends Enum {166    readonly isV100: boolean;167    readonly isV200: boolean;168    readonly type: 'V100' | 'V200';169  }170171  /** @name PalletBalancesCall (50) */172  export interface PalletBalancesCall extends Enum {173    readonly isTransfer: boolean;174    readonly asTransfer: {175      readonly dest: MultiAddress;176      readonly value: Compact<u128>;177    } & Struct;178    readonly isSetBalance: boolean;179    readonly asSetBalance: {180      readonly who: MultiAddress;181      readonly newFree: Compact<u128>;182      readonly newReserved: Compact<u128>;183    } & Struct;184    readonly isForceTransfer: boolean;185    readonly asForceTransfer: {186      readonly source: MultiAddress;187      readonly dest: MultiAddress;188      readonly value: Compact<u128>;189    } & Struct;190    readonly isTransferKeepAlive: boolean;191    readonly asTransferKeepAlive: {192      readonly dest: MultiAddress;193      readonly value: Compact<u128>;194    } & Struct;195    readonly isTransferAll: boolean;196    readonly asTransferAll: {197      readonly dest: MultiAddress;198      readonly keepAlive: bool;199    } & Struct;200    readonly isForceUnreserve: boolean;201    readonly asForceUnreserve: {202      readonly who: MultiAddress;203      readonly amount: u128;204    } & Struct;205    readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';206  }207208  /** @name PalletBalancesEvent (56) */209  export interface PalletBalancesEvent extends Enum {210    readonly isEndowed: boolean;211    readonly asEndowed: {212      readonly account: AccountId32;213      readonly freeBalance: u128;214    } & Struct;215    readonly isDustLost: boolean;216    readonly asDustLost: {217      readonly account: AccountId32;218      readonly amount: u128;219    } & Struct;220    readonly isTransfer: boolean;221    readonly asTransfer: {222      readonly from: AccountId32;223      readonly to: AccountId32;224      readonly amount: u128;225    } & Struct;226    readonly isBalanceSet: boolean;227    readonly asBalanceSet: {228      readonly who: AccountId32;229      readonly free: u128;230      readonly reserved: u128;231    } & Struct;232    readonly isReserved: boolean;233    readonly asReserved: {234      readonly who: AccountId32;235      readonly amount: u128;236    } & Struct;237    readonly isUnreserved: boolean;238    readonly asUnreserved: {239      readonly who: AccountId32;240      readonly amount: u128;241    } & Struct;242    readonly isReserveRepatriated: boolean;243    readonly asReserveRepatriated: {244      readonly from: AccountId32;245      readonly to: AccountId32;246      readonly amount: u128;247      readonly destinationStatus: FrameSupportTokensMiscBalanceStatus;248    } & Struct;249    readonly isDeposit: boolean;250    readonly asDeposit: {251      readonly who: AccountId32;252      readonly amount: u128;253    } & Struct;254    readonly isWithdraw: boolean;255    readonly asWithdraw: {256      readonly who: AccountId32;257      readonly amount: u128;258    } & Struct;259    readonly isSlashed: boolean;260    readonly asSlashed: {261      readonly who: AccountId32;262      readonly amount: u128;263    } & Struct;264    readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';265  }266267  /** @name FrameSupportTokensMiscBalanceStatus (57) */268  export interface FrameSupportTokensMiscBalanceStatus extends Enum {269    readonly isFree: boolean;270    readonly isReserved: boolean;271    readonly type: 'Free' | 'Reserved';272  }273274  /** @name PalletBalancesError (58) */275  export interface PalletBalancesError extends Enum {276    readonly isVestingBalance: boolean;277    readonly isLiquidityRestrictions: boolean;278    readonly isInsufficientBalance: boolean;279    readonly isExistentialDeposit: boolean;280    readonly isKeepAlive: boolean;281    readonly isExistingVestingSchedule: boolean;282    readonly isDeadAccount: boolean;283    readonly isTooManyReserves: boolean;284    readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';285  }286287  /** @name PalletTimestampCall (61) */288  export interface PalletTimestampCall extends Enum {289    readonly isSet: boolean;290    readonly asSet: {291      readonly now: Compact<u64>;292    } & Struct;293    readonly type: 'Set';294  }295296  /** @name PalletTransactionPaymentReleases (64) */297  export interface PalletTransactionPaymentReleases extends Enum {298    readonly isV1Ancient: boolean;299    readonly isV2: boolean;300    readonly type: 'V1Ancient' | 'V2';301  }302303  /** @name FrameSupportWeightsWeightToFeeCoefficient (66) */304  export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {305    readonly coeffInteger: u128;306    readonly coeffFrac: Perbill;307    readonly negative: bool;308    readonly degree: u8;309  }310311  /** @name PalletTreasuryProposal (68) */312  export interface PalletTreasuryProposal extends Struct {313    readonly proposer: AccountId32;314    readonly value: u128;315    readonly beneficiary: AccountId32;316    readonly bond: u128;317  }318319  /** @name PalletTreasuryCall (71) */320  export interface PalletTreasuryCall extends Enum {321    readonly isProposeSpend: boolean;322    readonly asProposeSpend: {323      readonly value: Compact<u128>;324      readonly beneficiary: MultiAddress;325    } & Struct;326    readonly isRejectProposal: boolean;327    readonly asRejectProposal: {328      readonly proposalId: Compact<u32>;329    } & Struct;330    readonly isApproveProposal: boolean;331    readonly asApproveProposal: {332      readonly proposalId: Compact<u32>;333    } & Struct;334    readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';335  }336337  /** @name PalletTreasuryEvent (73) */338  export interface PalletTreasuryEvent extends Enum {339    readonly isProposed: boolean;340    readonly asProposed: {341      readonly proposalIndex: u32;342    } & Struct;343    readonly isSpending: boolean;344    readonly asSpending: {345      readonly budgetRemaining: u128;346    } & Struct;347    readonly isAwarded: boolean;348    readonly asAwarded: {349      readonly proposalIndex: u32;350      readonly award: u128;351      readonly account: AccountId32;352    } & Struct;353    readonly isRejected: boolean;354    readonly asRejected: {355      readonly proposalIndex: u32;356      readonly slashed: u128;357    } & Struct;358    readonly isBurnt: boolean;359    readonly asBurnt: {360      readonly burntFunds: u128;361    } & Struct;362    readonly isRollover: boolean;363    readonly asRollover: {364      readonly rolloverBalance: u128;365    } & Struct;366    readonly isDeposit: boolean;367    readonly asDeposit: {368      readonly value: u128;369    } & Struct;370    readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';371  }372373  /** @name FrameSupportPalletId (76) */374  export interface FrameSupportPalletId extends U8aFixed {}375376  /** @name PalletTreasuryError (77) */377  export interface PalletTreasuryError extends Enum {378    readonly isInsufficientProposersBalance: boolean;379    readonly isInvalidIndex: boolean;380    readonly isTooManyApprovals: boolean;381    readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';382  }383384  /** @name PalletSudoCall (78) */385  export interface PalletSudoCall extends Enum {386    readonly isSudo: boolean;387    readonly asSudo: {388      readonly call: Call;389    } & Struct;390    readonly isSudoUncheckedWeight: boolean;391    readonly asSudoUncheckedWeight: {392      readonly call: Call;393      readonly weight: u64;394    } & Struct;395    readonly isSetKey: boolean;396    readonly asSetKey: {397      readonly new_: MultiAddress;398    } & Struct;399    readonly isSudoAs: boolean;400    readonly asSudoAs: {401      readonly who: MultiAddress;402      readonly call: Call;403    } & Struct;404    readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';405  }406407  /** @name FrameSystemCall (80) */408  export interface FrameSystemCall extends Enum {409    readonly isFillBlock: boolean;410    readonly asFillBlock: {411      readonly ratio: Perbill;412    } & Struct;413    readonly isRemark: boolean;414    readonly asRemark: {415      readonly remark: Bytes;416    } & Struct;417    readonly isSetHeapPages: boolean;418    readonly asSetHeapPages: {419      readonly pages: u64;420    } & Struct;421    readonly isSetCode: boolean;422    readonly asSetCode: {423      readonly code: Bytes;424    } & Struct;425    readonly isSetCodeWithoutChecks: boolean;426    readonly asSetCodeWithoutChecks: {427      readonly code: Bytes;428    } & Struct;429    readonly isSetStorage: boolean;430    readonly asSetStorage: {431      readonly items: Vec<ITuple<[Bytes, Bytes]>>;432    } & Struct;433    readonly isKillStorage: boolean;434    readonly asKillStorage: {435      readonly keys_: Vec<Bytes>;436    } & Struct;437    readonly isKillPrefix: boolean;438    readonly asKillPrefix: {439      readonly prefix: Bytes;440      readonly subkeys: u32;441    } & Struct;442    readonly isRemarkWithEvent: boolean;443    readonly asRemarkWithEvent: {444      readonly remark: Bytes;445    } & Struct;446    readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';447  }448449  /** @name OrmlVestingModuleCall (83) */450  export interface OrmlVestingModuleCall extends Enum {451    readonly isClaim: boolean;452    readonly isVestedTransfer: boolean;453    readonly asVestedTransfer: {454      readonly dest: MultiAddress;455      readonly schedule: OrmlVestingVestingSchedule;456    } & Struct;457    readonly isUpdateVestingSchedules: boolean;458    readonly asUpdateVestingSchedules: {459      readonly who: MultiAddress;460      readonly vestingSchedules: Vec<OrmlVestingVestingSchedule>;461    } & Struct;462    readonly isClaimFor: boolean;463    readonly asClaimFor: {464      readonly dest: MultiAddress;465    } & Struct;466    readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';467  }468469  /** @name OrmlVestingVestingSchedule (84) */470  export interface OrmlVestingVestingSchedule extends Struct {471    readonly start: u32;472    readonly period: u32;473    readonly periodCount: u32;474    readonly perPeriod: Compact<u128>;475  }476477  /** @name CumulusPalletXcmpQueueCall (86) */478  export interface CumulusPalletXcmpQueueCall extends Enum {479    readonly isServiceOverweight: boolean;480    readonly asServiceOverweight: {481      readonly index: u64;482      readonly weightLimit: u64;483    } & Struct;484    readonly isSuspendXcmExecution: boolean;485    readonly isResumeXcmExecution: boolean;486    readonly isUpdateSuspendThreshold: boolean;487    readonly asUpdateSuspendThreshold: {488      readonly new_: u32;489    } & Struct;490    readonly isUpdateDropThreshold: boolean;491    readonly asUpdateDropThreshold: {492      readonly new_: u32;493    } & Struct;494    readonly isUpdateResumeThreshold: boolean;495    readonly asUpdateResumeThreshold: {496      readonly new_: u32;497    } & Struct;498    readonly isUpdateThresholdWeight: boolean;499    readonly asUpdateThresholdWeight: {500      readonly new_: u64;501    } & Struct;502    readonly isUpdateWeightRestrictDecay: boolean;503    readonly asUpdateWeightRestrictDecay: {504      readonly new_: u64;505    } & Struct;506    readonly isUpdateXcmpMaxIndividualWeight: boolean;507    readonly asUpdateXcmpMaxIndividualWeight: {508      readonly new_: u64;509    } & Struct;510    readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';511  }512513  /** @name PalletXcmCall (87) */514  export interface PalletXcmCall extends Enum {515    readonly isSend: boolean;516    readonly asSend: {517      readonly dest: XcmVersionedMultiLocation;518      readonly message: XcmVersionedXcm;519    } & Struct;520    readonly isTeleportAssets: boolean;521    readonly asTeleportAssets: {522      readonly dest: XcmVersionedMultiLocation;523      readonly beneficiary: XcmVersionedMultiLocation;524      readonly assets: XcmVersionedMultiAssets;525      readonly feeAssetItem: u32;526    } & Struct;527    readonly isReserveTransferAssets: boolean;528    readonly asReserveTransferAssets: {529      readonly dest: XcmVersionedMultiLocation;530      readonly beneficiary: XcmVersionedMultiLocation;531      readonly assets: XcmVersionedMultiAssets;532      readonly feeAssetItem: u32;533    } & Struct;534    readonly isExecute: boolean;535    readonly asExecute: {536      readonly message: XcmVersionedXcm;537      readonly maxWeight: u64;538    } & Struct;539    readonly isForceXcmVersion: boolean;540    readonly asForceXcmVersion: {541      readonly location: XcmV1MultiLocation;542      readonly xcmVersion: u32;543    } & Struct;544    readonly isForceDefaultXcmVersion: boolean;545    readonly asForceDefaultXcmVersion: {546      readonly maybeXcmVersion: Option<u32>;547    } & Struct;548    readonly isForceSubscribeVersionNotify: boolean;549    readonly asForceSubscribeVersionNotify: {550      readonly location: XcmVersionedMultiLocation;551    } & Struct;552    readonly isForceUnsubscribeVersionNotify: boolean;553    readonly asForceUnsubscribeVersionNotify: {554      readonly location: XcmVersionedMultiLocation;555    } & Struct;556    readonly isLimitedReserveTransferAssets: boolean;557    readonly asLimitedReserveTransferAssets: {558      readonly dest: XcmVersionedMultiLocation;559      readonly beneficiary: XcmVersionedMultiLocation;560      readonly assets: XcmVersionedMultiAssets;561      readonly feeAssetItem: u32;562      readonly weightLimit: XcmV2WeightLimit;563    } & Struct;564    readonly isLimitedTeleportAssets: boolean;565    readonly asLimitedTeleportAssets: {566      readonly dest: XcmVersionedMultiLocation;567      readonly beneficiary: XcmVersionedMultiLocation;568      readonly assets: XcmVersionedMultiAssets;569      readonly feeAssetItem: u32;570      readonly weightLimit: XcmV2WeightLimit;571    } & Struct;572    readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';573  }574575  /** @name XcmVersionedMultiLocation (88) */576  export interface XcmVersionedMultiLocation extends Enum {577    readonly isV0: boolean;578    readonly asV0: XcmV0MultiLocation;579    readonly isV1: boolean;580    readonly asV1: XcmV1MultiLocation;581    readonly type: 'V0' | 'V1';582  }583584  /** @name XcmV0MultiLocation (89) */585  export interface XcmV0MultiLocation extends Enum {586    readonly isNull: boolean;587    readonly isX1: boolean;588    readonly asX1: XcmV0Junction;589    readonly isX2: boolean;590    readonly asX2: ITuple<[XcmV0Junction, XcmV0Junction]>;591    readonly isX3: boolean;592    readonly asX3: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction]>;593    readonly isX4: boolean;594    readonly asX4: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;595    readonly isX5: boolean;596    readonly asX5: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;597    readonly isX6: boolean;598    readonly asX6: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;599    readonly isX7: boolean;600    readonly asX7: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;601    readonly isX8: boolean;602    readonly asX8: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;603    readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';604  }605606  /** @name XcmV0Junction (90) */607  export interface XcmV0Junction extends Enum {608    readonly isParent: boolean;609    readonly isParachain: boolean;610    readonly asParachain: Compact<u32>;611    readonly isAccountId32: boolean;612    readonly asAccountId32: {613      readonly network: XcmV0JunctionNetworkId;614      readonly id: U8aFixed;615    } & Struct;616    readonly isAccountIndex64: boolean;617    readonly asAccountIndex64: {618      readonly network: XcmV0JunctionNetworkId;619      readonly index: Compact<u64>;620    } & Struct;621    readonly isAccountKey20: boolean;622    readonly asAccountKey20: {623      readonly network: XcmV0JunctionNetworkId;624      readonly key: U8aFixed;625    } & Struct;626    readonly isPalletInstance: boolean;627    readonly asPalletInstance: u8;628    readonly isGeneralIndex: boolean;629    readonly asGeneralIndex: Compact<u128>;630    readonly isGeneralKey: boolean;631    readonly asGeneralKey: Bytes;632    readonly isOnlyChild: boolean;633    readonly isPlurality: boolean;634    readonly asPlurality: {635      readonly id: XcmV0JunctionBodyId;636      readonly part: XcmV0JunctionBodyPart;637    } & Struct;638    readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';639  }640641  /** @name XcmV0JunctionNetworkId (91) */642  export interface XcmV0JunctionNetworkId extends Enum {643    readonly isAny: boolean;644    readonly isNamed: boolean;645    readonly asNamed: Bytes;646    readonly isPolkadot: boolean;647    readonly isKusama: boolean;648    readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';649  }650651  /** @name XcmV0JunctionBodyId (92) */652  export interface XcmV0JunctionBodyId extends Enum {653    readonly isUnit: boolean;654    readonly isNamed: boolean;655    readonly asNamed: Bytes;656    readonly isIndex: boolean;657    readonly asIndex: Compact<u32>;658    readonly isExecutive: boolean;659    readonly isTechnical: boolean;660    readonly isLegislative: boolean;661    readonly isJudicial: boolean;662    readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';663  }664665  /** @name XcmV0JunctionBodyPart (93) */666  export interface XcmV0JunctionBodyPart extends Enum {667    readonly isVoice: boolean;668    readonly isMembers: boolean;669    readonly asMembers: {670      readonly count: Compact<u32>;671    } & Struct;672    readonly isFraction: boolean;673    readonly asFraction: {674      readonly nom: Compact<u32>;675      readonly denom: Compact<u32>;676    } & Struct;677    readonly isAtLeastProportion: boolean;678    readonly asAtLeastProportion: {679      readonly nom: Compact<u32>;680      readonly denom: Compact<u32>;681    } & Struct;682    readonly isMoreThanProportion: boolean;683    readonly asMoreThanProportion: {684      readonly nom: Compact<u32>;685      readonly denom: Compact<u32>;686    } & Struct;687    readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';688  }689690  /** @name XcmV1MultiLocation (94) */691  export interface XcmV1MultiLocation extends Struct {692    readonly parents: u8;693    readonly interior: XcmV1MultilocationJunctions;694  }695696  /** @name XcmV1MultilocationJunctions (95) */697  export interface XcmV1MultilocationJunctions extends Enum {698    readonly isHere: boolean;699    readonly isX1: boolean;700    readonly asX1: XcmV1Junction;701    readonly isX2: boolean;702    readonly asX2: ITuple<[XcmV1Junction, XcmV1Junction]>;703    readonly isX3: boolean;704    readonly asX3: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction]>;705    readonly isX4: boolean;706    readonly asX4: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;707    readonly isX5: boolean;708    readonly asX5: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;709    readonly isX6: boolean;710    readonly asX6: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;711    readonly isX7: boolean;712    readonly asX7: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;713    readonly isX8: boolean;714    readonly asX8: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;715    readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';716  }717718  /** @name XcmV1Junction (96) */719  export interface XcmV1Junction extends Enum {720    readonly isParachain: boolean;721    readonly asParachain: Compact<u32>;722    readonly isAccountId32: boolean;723    readonly asAccountId32: {724      readonly network: XcmV0JunctionNetworkId;725      readonly id: U8aFixed;726    } & Struct;727    readonly isAccountIndex64: boolean;728    readonly asAccountIndex64: {729      readonly network: XcmV0JunctionNetworkId;730      readonly index: Compact<u64>;731    } & Struct;732    readonly isAccountKey20: boolean;733    readonly asAccountKey20: {734      readonly network: XcmV0JunctionNetworkId;735      readonly key: U8aFixed;736    } & Struct;737    readonly isPalletInstance: boolean;738    readonly asPalletInstance: u8;739    readonly isGeneralIndex: boolean;740    readonly asGeneralIndex: Compact<u128>;741    readonly isGeneralKey: boolean;742    readonly asGeneralKey: Bytes;743    readonly isOnlyChild: boolean;744    readonly isPlurality: boolean;745    readonly asPlurality: {746      readonly id: XcmV0JunctionBodyId;747      readonly part: XcmV0JunctionBodyPart;748    } & Struct;749    readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';750  }751752  /** @name XcmVersionedXcm (97) */753  export interface XcmVersionedXcm extends Enum {754    readonly isV0: boolean;755    readonly asV0: XcmV0Xcm;756    readonly isV1: boolean;757    readonly asV1: XcmV1Xcm;758    readonly isV2: boolean;759    readonly asV2: XcmV2Xcm;760    readonly type: 'V0' | 'V1' | 'V2';761  }762763  /** @name XcmV0Xcm (98) */764  export interface XcmV0Xcm extends Enum {765    readonly isWithdrawAsset: boolean;766    readonly asWithdrawAsset: {767      readonly assets: Vec<XcmV0MultiAsset>;768      readonly effects: Vec<XcmV0Order>;769    } & Struct;770    readonly isReserveAssetDeposit: boolean;771    readonly asReserveAssetDeposit: {772      readonly assets: Vec<XcmV0MultiAsset>;773      readonly effects: Vec<XcmV0Order>;774    } & Struct;775    readonly isTeleportAsset: boolean;776    readonly asTeleportAsset: {777      readonly assets: Vec<XcmV0MultiAsset>;778      readonly effects: Vec<XcmV0Order>;779    } & Struct;780    readonly isQueryResponse: boolean;781    readonly asQueryResponse: {782      readonly queryId: Compact<u64>;783      readonly response: XcmV0Response;784    } & Struct;785    readonly isTransferAsset: boolean;786    readonly asTransferAsset: {787      readonly assets: Vec<XcmV0MultiAsset>;788      readonly dest: XcmV0MultiLocation;789    } & Struct;790    readonly isTransferReserveAsset: boolean;791    readonly asTransferReserveAsset: {792      readonly assets: Vec<XcmV0MultiAsset>;793      readonly dest: XcmV0MultiLocation;794      readonly effects: Vec<XcmV0Order>;795    } & Struct;796    readonly isTransact: boolean;797    readonly asTransact: {798      readonly originType: XcmV0OriginKind;799      readonly requireWeightAtMost: u64;800      readonly call: XcmDoubleEncoded;801    } & Struct;802    readonly isHrmpNewChannelOpenRequest: boolean;803    readonly asHrmpNewChannelOpenRequest: {804      readonly sender: Compact<u32>;805      readonly maxMessageSize: Compact<u32>;806      readonly maxCapacity: Compact<u32>;807    } & Struct;808    readonly isHrmpChannelAccepted: boolean;809    readonly asHrmpChannelAccepted: {810      readonly recipient: Compact<u32>;811    } & Struct;812    readonly isHrmpChannelClosing: boolean;813    readonly asHrmpChannelClosing: {814      readonly initiator: Compact<u32>;815      readonly sender: Compact<u32>;816      readonly recipient: Compact<u32>;817    } & Struct;818    readonly isRelayedFrom: boolean;819    readonly asRelayedFrom: {820      readonly who: XcmV0MultiLocation;821      readonly message: XcmV0Xcm;822    } & Struct;823    readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';824  }825826  /** @name XcmV0MultiAsset (100) */827  export interface XcmV0MultiAsset extends Enum {828    readonly isNone: boolean;829    readonly isAll: boolean;830    readonly isAllFungible: boolean;831    readonly isAllNonFungible: boolean;832    readonly isAllAbstractFungible: boolean;833    readonly asAllAbstractFungible: {834      readonly id: Bytes;835    } & Struct;836    readonly isAllAbstractNonFungible: boolean;837    readonly asAllAbstractNonFungible: {838      readonly class: Bytes;839    } & Struct;840    readonly isAllConcreteFungible: boolean;841    readonly asAllConcreteFungible: {842      readonly id: XcmV0MultiLocation;843    } & Struct;844    readonly isAllConcreteNonFungible: boolean;845    readonly asAllConcreteNonFungible: {846      readonly class: XcmV0MultiLocation;847    } & Struct;848    readonly isAbstractFungible: boolean;849    readonly asAbstractFungible: {850      readonly id: Bytes;851      readonly amount: Compact<u128>;852    } & Struct;853    readonly isAbstractNonFungible: boolean;854    readonly asAbstractNonFungible: {855      readonly class: Bytes;856      readonly instance: XcmV1MultiassetAssetInstance;857    } & Struct;858    readonly isConcreteFungible: boolean;859    readonly asConcreteFungible: {860      readonly id: XcmV0MultiLocation;861      readonly amount: Compact<u128>;862    } & Struct;863    readonly isConcreteNonFungible: boolean;864    readonly asConcreteNonFungible: {865      readonly class: XcmV0MultiLocation;866      readonly instance: XcmV1MultiassetAssetInstance;867    } & Struct;868    readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';869  }870871  /** @name XcmV1MultiassetAssetInstance (101) */872  export interface XcmV1MultiassetAssetInstance extends Enum {873    readonly isUndefined: boolean;874    readonly isIndex: boolean;875    readonly asIndex: Compact<u128>;876    readonly isArray4: boolean;877    readonly asArray4: U8aFixed;878    readonly isArray8: boolean;879    readonly asArray8: U8aFixed;880    readonly isArray16: boolean;881    readonly asArray16: U8aFixed;882    readonly isArray32: boolean;883    readonly asArray32: U8aFixed;884    readonly isBlob: boolean;885    readonly asBlob: Bytes;886    readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';887  }888889  /** @name XcmV0Order (105) */890  export interface XcmV0Order extends Enum {891    readonly isNull: boolean;892    readonly isDepositAsset: boolean;893    readonly asDepositAsset: {894      readonly assets: Vec<XcmV0MultiAsset>;895      readonly dest: XcmV0MultiLocation;896    } & Struct;897    readonly isDepositReserveAsset: boolean;898    readonly asDepositReserveAsset: {899      readonly assets: Vec<XcmV0MultiAsset>;900      readonly dest: XcmV0MultiLocation;901      readonly effects: Vec<XcmV0Order>;902    } & Struct;903    readonly isExchangeAsset: boolean;904    readonly asExchangeAsset: {905      readonly give: Vec<XcmV0MultiAsset>;906      readonly receive: Vec<XcmV0MultiAsset>;907    } & Struct;908    readonly isInitiateReserveWithdraw: boolean;909    readonly asInitiateReserveWithdraw: {910      readonly assets: Vec<XcmV0MultiAsset>;911      readonly reserve: XcmV0MultiLocation;912      readonly effects: Vec<XcmV0Order>;913    } & Struct;914    readonly isInitiateTeleport: boolean;915    readonly asInitiateTeleport: {916      readonly assets: Vec<XcmV0MultiAsset>;917      readonly dest: XcmV0MultiLocation;918      readonly effects: Vec<XcmV0Order>;919    } & Struct;920    readonly isQueryHolding: boolean;921    readonly asQueryHolding: {922      readonly queryId: Compact<u64>;923      readonly dest: XcmV0MultiLocation;924      readonly assets: Vec<XcmV0MultiAsset>;925    } & Struct;926    readonly isBuyExecution: boolean;927    readonly asBuyExecution: {928      readonly fees: XcmV0MultiAsset;929      readonly weight: u64;930      readonly debt: u64;931      readonly haltOnError: bool;932      readonly xcm: Vec<XcmV0Xcm>;933    } & Struct;934    readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';935  }936937  /** @name XcmV0Response (107) */938  export interface XcmV0Response extends Enum {939    readonly isAssets: boolean;940    readonly asAssets: Vec<XcmV0MultiAsset>;941    readonly type: 'Assets';942  }943944  /** @name XcmV0OriginKind (108) */945  export interface XcmV0OriginKind extends Enum {946    readonly isNative: boolean;947    readonly isSovereignAccount: boolean;948    readonly isSuperuser: boolean;949    readonly isXcm: boolean;950    readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';951  }952953  /** @name XcmDoubleEncoded (109) */954  export interface XcmDoubleEncoded extends Struct {955    readonly encoded: Bytes;956  }957958  /** @name XcmV1Xcm (110) */959  export interface XcmV1Xcm extends Enum {960    readonly isWithdrawAsset: boolean;961    readonly asWithdrawAsset: {962      readonly assets: XcmV1MultiassetMultiAssets;963      readonly effects: Vec<XcmV1Order>;964    } & Struct;965    readonly isReserveAssetDeposited: boolean;966    readonly asReserveAssetDeposited: {967      readonly assets: XcmV1MultiassetMultiAssets;968      readonly effects: Vec<XcmV1Order>;969    } & Struct;970    readonly isReceiveTeleportedAsset: boolean;971    readonly asReceiveTeleportedAsset: {972      readonly assets: XcmV1MultiassetMultiAssets;973      readonly effects: Vec<XcmV1Order>;974    } & Struct;975    readonly isQueryResponse: boolean;976    readonly asQueryResponse: {977      readonly queryId: Compact<u64>;978      readonly response: XcmV1Response;979    } & Struct;980    readonly isTransferAsset: boolean;981    readonly asTransferAsset: {982      readonly assets: XcmV1MultiassetMultiAssets;983      readonly beneficiary: XcmV1MultiLocation;984    } & Struct;985    readonly isTransferReserveAsset: boolean;986    readonly asTransferReserveAsset: {987      readonly assets: XcmV1MultiassetMultiAssets;988      readonly dest: XcmV1MultiLocation;989      readonly effects: Vec<XcmV1Order>;990    } & Struct;991    readonly isTransact: boolean;992    readonly asTransact: {993      readonly originType: XcmV0OriginKind;994      readonly requireWeightAtMost: u64;995      readonly call: XcmDoubleEncoded;996    } & Struct;997    readonly isHrmpNewChannelOpenRequest: boolean;998    readonly asHrmpNewChannelOpenRequest: {999      readonly sender: Compact<u32>;1000      readonly maxMessageSize: Compact<u32>;1001      readonly maxCapacity: Compact<u32>;1002    } & Struct;1003    readonly isHrmpChannelAccepted: boolean;1004    readonly asHrmpChannelAccepted: {1005      readonly recipient: Compact<u32>;1006    } & Struct;1007    readonly isHrmpChannelClosing: boolean;1008    readonly asHrmpChannelClosing: {1009      readonly initiator: Compact<u32>;1010      readonly sender: Compact<u32>;1011      readonly recipient: Compact<u32>;1012    } & Struct;1013    readonly isRelayedFrom: boolean;1014    readonly asRelayedFrom: {1015      readonly who: XcmV1MultilocationJunctions;1016      readonly message: XcmV1Xcm;1017    } & Struct;1018    readonly isSubscribeVersion: boolean;1019    readonly asSubscribeVersion: {1020      readonly queryId: Compact<u64>;1021      readonly maxResponseWeight: Compact<u64>;1022    } & Struct;1023    readonly isUnsubscribeVersion: boolean;1024    readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';1025  }10261027  /** @name XcmV1MultiassetMultiAssets (111) */1028  export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}10291030  /** @name XcmV1MultiAsset (113) */1031  export interface XcmV1MultiAsset extends Struct {1032    readonly id: XcmV1MultiassetAssetId;1033    readonly fun: XcmV1MultiassetFungibility;1034  }10351036  /** @name XcmV1MultiassetAssetId (114) */1037  export interface XcmV1MultiassetAssetId extends Enum {1038    readonly isConcrete: boolean;1039    readonly asConcrete: XcmV1MultiLocation;1040    readonly isAbstract: boolean;1041    readonly asAbstract: Bytes;1042    readonly type: 'Concrete' | 'Abstract';1043  }10441045  /** @name XcmV1MultiassetFungibility (115) */1046  export interface XcmV1MultiassetFungibility extends Enum {1047    readonly isFungible: boolean;1048    readonly asFungible: Compact<u128>;1049    readonly isNonFungible: boolean;1050    readonly asNonFungible: XcmV1MultiassetAssetInstance;1051    readonly type: 'Fungible' | 'NonFungible';1052  }10531054  /** @name XcmV1Order (117) */1055  export interface XcmV1Order extends Enum {1056    readonly isNoop: boolean;1057    readonly isDepositAsset: boolean;1058    readonly asDepositAsset: {1059      readonly assets: XcmV1MultiassetMultiAssetFilter;1060      readonly maxAssets: u32;1061      readonly beneficiary: XcmV1MultiLocation;1062    } & Struct;1063    readonly isDepositReserveAsset: boolean;1064    readonly asDepositReserveAsset: {1065      readonly assets: XcmV1MultiassetMultiAssetFilter;1066      readonly maxAssets: u32;1067      readonly dest: XcmV1MultiLocation;1068      readonly effects: Vec<XcmV1Order>;1069    } & Struct;1070    readonly isExchangeAsset: boolean;1071    readonly asExchangeAsset: {1072      readonly give: XcmV1MultiassetMultiAssetFilter;1073      readonly receive: XcmV1MultiassetMultiAssets;1074    } & Struct;1075    readonly isInitiateReserveWithdraw: boolean;1076    readonly asInitiateReserveWithdraw: {1077      readonly assets: XcmV1MultiassetMultiAssetFilter;1078      readonly reserve: XcmV1MultiLocation;1079      readonly effects: Vec<XcmV1Order>;1080    } & Struct;1081    readonly isInitiateTeleport: boolean;1082    readonly asInitiateTeleport: {1083      readonly assets: XcmV1MultiassetMultiAssetFilter;1084      readonly dest: XcmV1MultiLocation;1085      readonly effects: Vec<XcmV1Order>;1086    } & Struct;1087    readonly isQueryHolding: boolean;1088    readonly asQueryHolding: {1089      readonly queryId: Compact<u64>;1090      readonly dest: XcmV1MultiLocation;1091      readonly assets: XcmV1MultiassetMultiAssetFilter;1092    } & Struct;1093    readonly isBuyExecution: boolean;1094    readonly asBuyExecution: {1095      readonly fees: XcmV1MultiAsset;1096      readonly weight: u64;1097      readonly debt: u64;1098      readonly haltOnError: bool;1099      readonly instructions: Vec<XcmV1Xcm>;1100    } & Struct;1101    readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';1102  }11031104  /** @name XcmV1MultiassetMultiAssetFilter (118) */1105  export interface XcmV1MultiassetMultiAssetFilter extends Enum {1106    readonly isDefinite: boolean;1107    readonly asDefinite: XcmV1MultiassetMultiAssets;1108    readonly isWild: boolean;1109    readonly asWild: XcmV1MultiassetWildMultiAsset;1110    readonly type: 'Definite' | 'Wild';1111  }11121113  /** @name XcmV1MultiassetWildMultiAsset (119) */1114  export interface XcmV1MultiassetWildMultiAsset extends Enum {1115    readonly isAll: boolean;1116    readonly isAllOf: boolean;1117    readonly asAllOf: {1118      readonly id: XcmV1MultiassetAssetId;1119      readonly fun: XcmV1MultiassetWildFungibility;1120    } & Struct;1121    readonly type: 'All' | 'AllOf';1122  }11231124  /** @name XcmV1MultiassetWildFungibility (120) */1125  export interface XcmV1MultiassetWildFungibility extends Enum {1126    readonly isFungible: boolean;1127    readonly isNonFungible: boolean;1128    readonly type: 'Fungible' | 'NonFungible';1129  }11301131  /** @name XcmV1Response (122) */1132  export interface XcmV1Response extends Enum {1133    readonly isAssets: boolean;1134    readonly asAssets: XcmV1MultiassetMultiAssets;1135    readonly isVersion: boolean;1136    readonly asVersion: u32;1137    readonly type: 'Assets' | 'Version';1138  }11391140  /** @name XcmV2Xcm (123) */1141  export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}11421143  /** @name XcmV2Instruction (125) */1144  export interface XcmV2Instruction extends Enum {1145    readonly isWithdrawAsset: boolean;1146    readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;1147    readonly isReserveAssetDeposited: boolean;1148    readonly asReserveAssetDeposited: XcmV1MultiassetMultiAssets;1149    readonly isReceiveTeleportedAsset: boolean;1150    readonly asReceiveTeleportedAsset: XcmV1MultiassetMultiAssets;1151    readonly isQueryResponse: boolean;1152    readonly asQueryResponse: {1153      readonly queryId: Compact<u64>;1154      readonly response: XcmV2Response;1155      readonly maxWeight: Compact<u64>;1156    } & Struct;1157    readonly isTransferAsset: boolean;1158    readonly asTransferAsset: {1159      readonly assets: XcmV1MultiassetMultiAssets;1160      readonly beneficiary: XcmV1MultiLocation;1161    } & Struct;1162    readonly isTransferReserveAsset: boolean;1163    readonly asTransferReserveAsset: {1164      readonly assets: XcmV1MultiassetMultiAssets;1165      readonly dest: XcmV1MultiLocation;1166      readonly xcm: XcmV2Xcm;1167    } & Struct;1168    readonly isTransact: boolean;1169    readonly asTransact: {1170      readonly originType: XcmV0OriginKind;1171      readonly requireWeightAtMost: Compact<u64>;1172      readonly call: XcmDoubleEncoded;1173    } & Struct;1174    readonly isHrmpNewChannelOpenRequest: boolean;1175    readonly asHrmpNewChannelOpenRequest: {1176      readonly sender: Compact<u32>;1177      readonly maxMessageSize: Compact<u32>;1178      readonly maxCapacity: Compact<u32>;1179    } & Struct;1180    readonly isHrmpChannelAccepted: boolean;1181    readonly asHrmpChannelAccepted: {1182      readonly recipient: Compact<u32>;1183    } & Struct;1184    readonly isHrmpChannelClosing: boolean;1185    readonly asHrmpChannelClosing: {1186      readonly initiator: Compact<u32>;1187      readonly sender: Compact<u32>;1188      readonly recipient: Compact<u32>;1189    } & Struct;1190    readonly isClearOrigin: boolean;1191    readonly isDescendOrigin: boolean;1192    readonly asDescendOrigin: XcmV1MultilocationJunctions;1193    readonly isReportError: boolean;1194    readonly asReportError: {1195      readonly queryId: Compact<u64>;1196      readonly dest: XcmV1MultiLocation;1197      readonly maxResponseWeight: Compact<u64>;1198    } & Struct;1199    readonly isDepositAsset: boolean;1200    readonly asDepositAsset: {1201      readonly assets: XcmV1MultiassetMultiAssetFilter;1202      readonly maxAssets: Compact<u32>;1203      readonly beneficiary: XcmV1MultiLocation;1204    } & Struct;1205    readonly isDepositReserveAsset: boolean;1206    readonly asDepositReserveAsset: {1207      readonly assets: XcmV1MultiassetMultiAssetFilter;1208      readonly maxAssets: Compact<u32>;1209      readonly dest: XcmV1MultiLocation;1210      readonly xcm: XcmV2Xcm;1211    } & Struct;1212    readonly isExchangeAsset: boolean;1213    readonly asExchangeAsset: {1214      readonly give: XcmV1MultiassetMultiAssetFilter;1215      readonly receive: XcmV1MultiassetMultiAssets;1216    } & Struct;1217    readonly isInitiateReserveWithdraw: boolean;1218    readonly asInitiateReserveWithdraw: {1219      readonly assets: XcmV1MultiassetMultiAssetFilter;1220      readonly reserve: XcmV1MultiLocation;1221      readonly xcm: XcmV2Xcm;1222    } & Struct;1223    readonly isInitiateTeleport: boolean;1224    readonly asInitiateTeleport: {1225      readonly assets: XcmV1MultiassetMultiAssetFilter;1226      readonly dest: XcmV1MultiLocation;1227      readonly xcm: XcmV2Xcm;1228    } & Struct;1229    readonly isQueryHolding: boolean;1230    readonly asQueryHolding: {1231      readonly queryId: Compact<u64>;1232      readonly dest: XcmV1MultiLocation;1233      readonly assets: XcmV1MultiassetMultiAssetFilter;1234      readonly maxResponseWeight: Compact<u64>;1235    } & Struct;1236    readonly isBuyExecution: boolean;1237    readonly asBuyExecution: {1238      readonly fees: XcmV1MultiAsset;1239      readonly weightLimit: XcmV2WeightLimit;1240    } & Struct;1241    readonly isRefundSurplus: boolean;1242    readonly isSetErrorHandler: boolean;1243    readonly asSetErrorHandler: XcmV2Xcm;1244    readonly isSetAppendix: boolean;1245    readonly asSetAppendix: XcmV2Xcm;1246    readonly isClearError: boolean;1247    readonly isClaimAsset: boolean;1248    readonly asClaimAsset: {1249      readonly assets: XcmV1MultiassetMultiAssets;1250      readonly ticket: XcmV1MultiLocation;1251    } & Struct;1252    readonly isTrap: boolean;1253    readonly asTrap: Compact<u64>;1254    readonly isSubscribeVersion: boolean;1255    readonly asSubscribeVersion: {1256      readonly queryId: Compact<u64>;1257      readonly maxResponseWeight: Compact<u64>;1258    } & Struct;1259    readonly isUnsubscribeVersion: boolean;1260    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';1261  }12621263  /** @name XcmV2Response (126) */1264  export interface XcmV2Response extends Enum {1265    readonly isNull: boolean;1266    readonly isAssets: boolean;1267    readonly asAssets: XcmV1MultiassetMultiAssets;1268    readonly isExecutionResult: boolean;1269    readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;1270    readonly isVersion: boolean;1271    readonly asVersion: u32;1272    readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';1273  }12741275  /** @name XcmV2TraitsError (129) */1276  export interface XcmV2TraitsError extends Enum {1277    readonly isOverflow: boolean;1278    readonly isUnimplemented: boolean;1279    readonly isUntrustedReserveLocation: boolean;1280    readonly isUntrustedTeleportLocation: boolean;1281    readonly isMultiLocationFull: boolean;1282    readonly isMultiLocationNotInvertible: boolean;1283    readonly isBadOrigin: boolean;1284    readonly isInvalidLocation: boolean;1285    readonly isAssetNotFound: boolean;1286    readonly isFailedToTransactAsset: boolean;1287    readonly isNotWithdrawable: boolean;1288    readonly isLocationCannotHold: boolean;1289    readonly isExceedsMaxMessageSize: boolean;1290    readonly isDestinationUnsupported: boolean;1291    readonly isTransport: boolean;1292    readonly isUnroutable: boolean;1293    readonly isUnknownClaim: boolean;1294    readonly isFailedToDecode: boolean;1295    readonly isMaxWeightInvalid: boolean;1296    readonly isNotHoldingFees: boolean;1297    readonly isTooExpensive: boolean;1298    readonly isTrap: boolean;1299    readonly asTrap: u64;1300    readonly isUnhandledXcmVersion: boolean;1301    readonly isWeightLimitReached: boolean;1302    readonly asWeightLimitReached: u64;1303    readonly isBarrier: boolean;1304    readonly isWeightNotComputable: boolean;1305    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';1306  }13071308  /** @name XcmV2WeightLimit (130) */1309  export interface XcmV2WeightLimit extends Enum {1310    readonly isUnlimited: boolean;1311    readonly isLimited: boolean;1312    readonly asLimited: Compact<u64>;1313    readonly type: 'Unlimited' | 'Limited';1314  }13151316  /** @name XcmVersionedMultiAssets (131) */1317  export interface XcmVersionedMultiAssets extends Enum {1318    readonly isV0: boolean;1319    readonly asV0: Vec<XcmV0MultiAsset>;1320    readonly isV1: boolean;1321    readonly asV1: XcmV1MultiassetMultiAssets;1322    readonly type: 'V0' | 'V1';1323  }13241325  /** @name CumulusPalletXcmCall (146) */1326  export type CumulusPalletXcmCall = Null;13271328  /** @name CumulusPalletDmpQueueCall (147) */1329  export interface CumulusPalletDmpQueueCall extends Enum {1330    readonly isServiceOverweight: boolean;1331    readonly asServiceOverweight: {1332      readonly index: u64;1333      readonly weightLimit: u64;1334    } & Struct;1335    readonly type: 'ServiceOverweight';1336  }13371338  /** @name PalletInflationCall (148) */1339  export interface PalletInflationCall extends Enum {1340    readonly isStartInflation: boolean;1341    readonly asStartInflation: {1342      readonly inflationStartRelayBlock: u32;1343    } & Struct;1344    readonly type: 'StartInflation';1345  }13461347  /** @name PalletUniqueCall (149) */1348  export interface PalletUniqueCall extends Enum {1349    readonly isCreateCollection: boolean;1350    readonly asCreateCollection: {1351      readonly collectionName: Vec<u16>;1352      readonly collectionDescription: Vec<u16>;1353      readonly tokenPrefix: Bytes;1354      readonly mode: UpDataStructsCollectionMode;1355    } & Struct;1356    readonly isCreateCollectionEx: boolean;1357    readonly asCreateCollectionEx: {1358      readonly data: UpDataStructsCreateCollectionData;1359    } & Struct;1360    readonly isDestroyCollection: boolean;1361    readonly asDestroyCollection: {1362      readonly collectionId: u32;1363    } & Struct;1364    readonly isAddToAllowList: boolean;1365    readonly asAddToAllowList: {1366      readonly collectionId: u32;1367      readonly address: PalletCommonAccountBasicCrossAccountIdRepr;1368    } & Struct;1369    readonly isRemoveFromAllowList: boolean;1370    readonly asRemoveFromAllowList: {1371      readonly collectionId: u32;1372      readonly address: PalletCommonAccountBasicCrossAccountIdRepr;1373    } & Struct;1374    readonly isSetPublicAccessMode: boolean;1375    readonly asSetPublicAccessMode: {1376      readonly collectionId: u32;1377      readonly mode: UpDataStructsAccessMode;1378    } & Struct;1379    readonly isSetMintPermission: boolean;1380    readonly asSetMintPermission: {1381      readonly collectionId: u32;1382      readonly mintPermission: bool;1383    } & Struct;1384    readonly isChangeCollectionOwner: boolean;1385    readonly asChangeCollectionOwner: {1386      readonly collectionId: u32;1387      readonly newOwner: AccountId32;1388    } & Struct;1389    readonly isAddCollectionAdmin: boolean;1390    readonly asAddCollectionAdmin: {1391      readonly collectionId: u32;1392      readonly newAdminId: PalletCommonAccountBasicCrossAccountIdRepr;1393    } & Struct;1394    readonly isRemoveCollectionAdmin: boolean;1395    readonly asRemoveCollectionAdmin: {1396      readonly collectionId: u32;1397      readonly accountId: PalletCommonAccountBasicCrossAccountIdRepr;1398    } & Struct;1399    readonly isSetCollectionSponsor: boolean;1400    readonly asSetCollectionSponsor: {1401      readonly collectionId: u32;1402      readonly newSponsor: AccountId32;1403    } & Struct;1404    readonly isConfirmSponsorship: boolean;1405    readonly asConfirmSponsorship: {1406      readonly collectionId: u32;1407    } & Struct;1408    readonly isRemoveCollectionSponsor: boolean;1409    readonly asRemoveCollectionSponsor: {1410      readonly collectionId: u32;1411    } & Struct;1412    readonly isCreateItem: boolean;1413    readonly asCreateItem: {1414      readonly collectionId: u32;1415      readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1416      readonly data: UpDataStructsCreateItemData;1417    } & Struct;1418    readonly isCreateMultipleItems: boolean;1419    readonly asCreateMultipleItems: {1420      readonly collectionId: u32;1421      readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1422      readonly itemsData: Vec<UpDataStructsCreateItemData>;1423    } & Struct;1424    readonly isCreateMultipleItemsEx: boolean;1425    readonly asCreateMultipleItemsEx: {1426      readonly collectionId: u32;1427      readonly data: UpDataStructsCreateItemExData;1428    } & Struct;1429    readonly isSetTransfersEnabledFlag: boolean;1430    readonly asSetTransfersEnabledFlag: {1431      readonly collectionId: u32;1432      readonly value: bool;1433    } & Struct;1434    readonly isBurnItem: boolean;1435    readonly asBurnItem: {1436      readonly collectionId: u32;1437      readonly itemId: u32;1438      readonly value: u128;1439    } & Struct;1440    readonly isBurnFrom: boolean;1441    readonly asBurnFrom: {1442      readonly collectionId: u32;1443      readonly from: PalletCommonAccountBasicCrossAccountIdRepr;1444      readonly itemId: u32;1445      readonly value: u128;1446    } & Struct;1447    readonly isTransfer: boolean;1448    readonly asTransfer: {1449      readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;1450      readonly collectionId: u32;1451      readonly itemId: u32;1452      readonly value: u128;1453    } & Struct;1454    readonly isApprove: boolean;1455    readonly asApprove: {1456      readonly spender: PalletCommonAccountBasicCrossAccountIdRepr;1457      readonly collectionId: u32;1458      readonly itemId: u32;1459      readonly amount: u128;1460    } & Struct;1461    readonly isTransferFrom: boolean;1462    readonly asTransferFrom: {1463      readonly from: PalletCommonAccountBasicCrossAccountIdRepr;1464      readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;1465      readonly collectionId: u32;1466      readonly itemId: u32;1467      readonly value: u128;1468    } & Struct;1469    readonly isSetVariableMetaData: boolean;1470    readonly asSetVariableMetaData: {1471      readonly collectionId: u32;1472      readonly itemId: u32;1473      readonly data: Bytes;1474    } & Struct;1475    readonly isSetMetaUpdatePermissionFlag: boolean;1476    readonly asSetMetaUpdatePermissionFlag: {1477      readonly collectionId: u32;1478      readonly value: UpDataStructsMetaUpdatePermission;1479    } & Struct;1480    readonly isSetSchemaVersion: boolean;1481    readonly asSetSchemaVersion: {1482      readonly collectionId: u32;1483      readonly version: UpDataStructsSchemaVersion;1484    } & Struct;1485    readonly isSetOffchainSchema: boolean;1486    readonly asSetOffchainSchema: {1487      readonly collectionId: u32;1488      readonly schema: Bytes;1489    } & Struct;1490    readonly isSetConstOnChainSchema: boolean;1491    readonly asSetConstOnChainSchema: {1492      readonly collectionId: u32;1493      readonly schema: Bytes;1494    } & Struct;1495    readonly isSetVariableOnChainSchema: boolean;1496    readonly asSetVariableOnChainSchema: {1497      readonly collectionId: u32;1498      readonly schema: Bytes;1499    } & Struct;1500    readonly isSetCollectionLimits: boolean;1501    readonly asSetCollectionLimits: {1502      readonly collectionId: u32;1503      readonly newLimit: UpDataStructsCollectionLimits;1504    } & Struct;1505    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';1506  }15071508  /** @name UpDataStructsCollectionMode (155) */1509  export interface UpDataStructsCollectionMode extends Enum {1510    readonly isNft: boolean;1511    readonly isFungible: boolean;1512    readonly asFungible: u8;1513    readonly isReFungible: boolean;1514    readonly type: 'Nft' | 'Fungible' | 'ReFungible';1515  }15161517  /** @name UpDataStructsCreateCollectionData (156) */1518  export interface UpDataStructsCreateCollectionData extends Struct {1519    readonly mode: UpDataStructsCollectionMode;1520    readonly access: Option<UpDataStructsAccessMode>;1521    readonly name: Vec<u16>;1522    readonly description: Vec<u16>;1523    readonly tokenPrefix: Bytes;1524    readonly offchainSchema: Bytes;1525    readonly schemaVersion: Option<UpDataStructsSchemaVersion>;1526    readonly pendingSponsor: Option<AccountId32>;1527    readonly limits: Option<UpDataStructsCollectionLimits>;1528    readonly variableOnChainSchema: Bytes;1529    readonly constOnChainSchema: Bytes;1530    readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;1531  }15321533  /** @name UpDataStructsAccessMode (158) */1534  export interface UpDataStructsAccessMode extends Enum {1535    readonly isNormal: boolean;1536    readonly isAllowList: boolean;1537    readonly type: 'Normal' | 'AllowList';1538  }15391540  /** @name UpDataStructsSchemaVersion (161) */1541  export interface UpDataStructsSchemaVersion extends Enum {1542    readonly isImageURL: boolean;1543    readonly isUnique: boolean;1544    readonly type: 'ImageURL' | 'Unique';1545  }15461547  /** @name UpDataStructsCollectionLimits (164) */1548  export interface UpDataStructsCollectionLimits extends Struct {1549    readonly accountTokenOwnershipLimit: Option<u32>;1550    readonly sponsoredDataSize: Option<u32>;1551    readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;1552    readonly tokenLimit: Option<u32>;1553    readonly sponsorTransferTimeout: Option<u32>;1554    readonly sponsorApproveTimeout: Option<u32>;1555    readonly ownerCanTransfer: Option<bool>;1556    readonly ownerCanDestroy: Option<bool>;1557    readonly transfersEnabled: Option<bool>;1558  }15591560  /** @name UpDataStructsSponsoringRateLimit (166) */1561  export interface UpDataStructsSponsoringRateLimit extends Enum {1562    readonly isSponsoringDisabled: boolean;1563    readonly isBlocks: boolean;1564    readonly asBlocks: u32;1565    readonly type: 'SponsoringDisabled' | 'Blocks';1566  }15671568  /** @name UpDataStructsMetaUpdatePermission (170) */1569  export interface UpDataStructsMetaUpdatePermission extends Enum {1570    readonly isItemOwner: boolean;1571    readonly isAdmin: boolean;1572    readonly isNone: boolean;1573    readonly type: 'ItemOwner' | 'Admin' | 'None';1574  }15751576  /** @name PalletCommonAccountBasicCrossAccountIdRepr (172) */1577  export interface PalletCommonAccountBasicCrossAccountIdRepr extends Enum {1578    readonly isSubstrate: boolean;1579    readonly asSubstrate: AccountId32;1580    readonly isEthereum: boolean;1581    readonly asEthereum: H160;1582    readonly type: 'Substrate' | 'Ethereum';1583  }15841585  /** @name UpDataStructsCreateItemData (174) */1586  export interface UpDataStructsCreateItemData extends Enum {1587    readonly isNft: boolean;1588    readonly asNft: UpDataStructsCreateNftData;1589    readonly isFungible: boolean;1590    readonly asFungible: UpDataStructsCreateFungibleData;1591    readonly isReFungible: boolean;1592    readonly asReFungible: UpDataStructsCreateReFungibleData;1593    readonly type: 'Nft' | 'Fungible' | 'ReFungible';1594  }15951596  /** @name UpDataStructsCreateNftData (175) */1597  export interface UpDataStructsCreateNftData extends Struct {1598    readonly constData: Bytes;1599    readonly variableData: Bytes;1600  }16011602  /** @name UpDataStructsCreateFungibleData (177) */1603  export interface UpDataStructsCreateFungibleData extends Struct {1604    readonly value: u128;1605  }16061607  /** @name UpDataStructsCreateReFungibleData (178) */1608  export interface UpDataStructsCreateReFungibleData extends Struct {1609    readonly constData: Bytes;1610    readonly variableData: Bytes;1611    readonly pieces: u128;1612  }16131614  /** @name UpDataStructsCreateItemExData (180) */1615  export interface UpDataStructsCreateItemExData extends Enum {1616    readonly isNft: boolean;1617    readonly asNft: Vec<UpDataStructsCreateNftExData>;1618    readonly isFungible: boolean;1619    readonly asFungible: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;1620    readonly isRefungibleMultipleItems: boolean;1621    readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;1622    readonly isRefungibleMultipleOwners: boolean;1623    readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;1624    readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1625  }16261627  /** @name UpDataStructsCreateNftExData (182) */1628  export interface UpDataStructsCreateNftExData extends Struct {1629    readonly constData: Bytes;1630    readonly variableData: Bytes;1631    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1632  }16331634  /** @name UpDataStructsCreateRefungibleExData (189) */1635  export interface UpDataStructsCreateRefungibleExData extends Struct {1636    readonly constData: Bytes;1637    readonly variableData: Bytes;1638    readonly users: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;1639  }16401641  /** @name PalletTemplateTransactionPaymentCall (192) */1642  export type PalletTemplateTransactionPaymentCall = Null;16431644  /** @name PalletEvmCall (193) */1645  export interface PalletEvmCall extends Enum {1646    readonly isWithdraw: boolean;1647    readonly asWithdraw: {1648      readonly address: H160;1649      readonly value: u128;1650    } & Struct;1651    readonly isCall: boolean;1652    readonly asCall: {1653      readonly source: H160;1654      readonly target: H160;1655      readonly input: Bytes;1656      readonly value: U256;1657      readonly gasLimit: u64;1658      readonly maxFeePerGas: U256;1659      readonly maxPriorityFeePerGas: Option<U256>;1660      readonly nonce: Option<U256>;1661      readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;1662    } & Struct;1663    readonly isCreate: boolean;1664    readonly asCreate: {1665      readonly source: H160;1666      readonly init: Bytes;1667      readonly value: U256;1668      readonly gasLimit: u64;1669      readonly maxFeePerGas: U256;1670      readonly maxPriorityFeePerGas: Option<U256>;1671      readonly nonce: Option<U256>;1672      readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;1673    } & Struct;1674    readonly isCreate2: boolean;1675    readonly asCreate2: {1676      readonly source: H160;1677      readonly init: Bytes;1678      readonly salt: H256;1679      readonly value: U256;1680      readonly gasLimit: u64;1681      readonly maxFeePerGas: U256;1682      readonly maxPriorityFeePerGas: Option<U256>;1683      readonly nonce: Option<U256>;1684      readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;1685    } & Struct;1686    readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';1687  }16881689  /** @name PalletEthereumCall (199) */1690  export interface PalletEthereumCall extends Enum {1691    readonly isTransact: boolean;1692    readonly asTransact: {1693      readonly transaction: EthereumTransactionTransactionV2;1694    } & Struct;1695    readonly type: 'Transact';1696  }16971698  /** @name EthereumTransactionTransactionV2 (200) */1699  export interface EthereumTransactionTransactionV2 extends Enum {1700    readonly isLegacy: boolean;1701    readonly asLegacy: EthereumTransactionLegacyTransaction;1702    readonly isEip2930: boolean;1703    readonly asEip2930: EthereumTransactionEip2930Transaction;1704    readonly isEip1559: boolean;1705    readonly asEip1559: EthereumTransactionEip1559Transaction;1706    readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';1707  }17081709  /** @name EthereumTransactionLegacyTransaction (201) */1710  export interface EthereumTransactionLegacyTransaction extends Struct {1711    readonly nonce: U256;1712    readonly gasPrice: U256;1713    readonly gasLimit: U256;1714    readonly action: EthereumTransactionTransactionAction;1715    readonly value: U256;1716    readonly input: Bytes;1717    readonly signature: EthereumTransactionTransactionSignature;1718  }17191720  /** @name EthereumTransactionTransactionAction (202) */1721  export interface EthereumTransactionTransactionAction extends Enum {1722    readonly isCall: boolean;1723    readonly asCall: H160;1724    readonly isCreate: boolean;1725    readonly type: 'Call' | 'Create';1726  }17271728  /** @name EthereumTransactionTransactionSignature (203) */1729  export interface EthereumTransactionTransactionSignature extends Struct {1730    readonly v: u64;1731    readonly r: H256;1732    readonly s: H256;1733  }17341735  /** @name EthereumTransactionEip2930Transaction (205) */1736  export interface EthereumTransactionEip2930Transaction extends Struct {1737    readonly chainId: u64;1738    readonly nonce: U256;1739    readonly gasPrice: U256;1740    readonly gasLimit: U256;1741    readonly action: EthereumTransactionTransactionAction;1742    readonly value: U256;1743    readonly input: Bytes;1744    readonly accessList: Vec<EthereumTransactionAccessListItem>;1745    readonly oddYParity: bool;1746    readonly r: H256;1747    readonly s: H256;1748  }17491750  /** @name EthereumTransactionAccessListItem (207) */1751  export interface EthereumTransactionAccessListItem extends Struct {1752    readonly address: H160;1753    readonly slots: Vec<H256>;1754  }17551756  /** @name EthereumTransactionEip1559Transaction (208) */1757  export interface EthereumTransactionEip1559Transaction extends Struct {1758    readonly chainId: u64;1759    readonly nonce: U256;1760    readonly maxPriorityFeePerGas: U256;1761    readonly maxFeePerGas: U256;1762    readonly gasLimit: U256;1763    readonly action: EthereumTransactionTransactionAction;1764    readonly value: U256;1765    readonly input: Bytes;1766    readonly accessList: Vec<EthereumTransactionAccessListItem>;1767    readonly oddYParity: bool;1768    readonly r: H256;1769    readonly s: H256;1770  }17711772  /** @name PalletEvmMigrationCall (209) */1773  export interface PalletEvmMigrationCall extends Enum {1774    readonly isBegin: boolean;1775    readonly asBegin: {1776      readonly address: H160;1777    } & Struct;1778    readonly isSetData: boolean;1779    readonly asSetData: {1780      readonly address: H160;1781      readonly data: Vec<ITuple<[H256, H256]>>;1782    } & Struct;1783    readonly isFinish: boolean;1784    readonly asFinish: {1785      readonly address: H160;1786      readonly code: Bytes;1787    } & Struct;1788    readonly type: 'Begin' | 'SetData' | 'Finish';1789  }17901791  /** @name PalletSudoEvent (212) */1792  export interface PalletSudoEvent extends Enum {1793    readonly isSudid: boolean;1794    readonly asSudid: {1795      readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1796    } & Struct;1797    readonly isKeyChanged: boolean;1798    readonly asKeyChanged: {1799      readonly oldSudoer: Option<AccountId32>;1800    } & Struct;1801    readonly isSudoAsDone: boolean;1802    readonly asSudoAsDone: {1803      readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1804    } & Struct;1805    readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';1806  }18071808  /** @name SpRuntimeDispatchError (214) */1809  export interface SpRuntimeDispatchError extends Enum {1810    readonly isOther: boolean;1811    readonly isCannotLookup: boolean;1812    readonly isBadOrigin: boolean;1813    readonly isModule: boolean;1814    readonly asModule: SpRuntimeModuleError;1815    readonly isConsumerRemaining: boolean;1816    readonly isNoProviders: boolean;1817    readonly isTooManyConsumers: boolean;1818    readonly isToken: boolean;1819    readonly asToken: SpRuntimeTokenError;1820    readonly isArithmetic: boolean;1821    readonly asArithmetic: SpRuntimeArithmeticError;1822    readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';1823  }18241825  /** @name SpRuntimeModuleError (215) */1826  export interface SpRuntimeModuleError extends Struct {1827    readonly index: u8;1828    readonly error: u8;1829  }18301831  /** @name SpRuntimeTokenError (216) */1832  export interface SpRuntimeTokenError extends Enum {1833    readonly isNoFunds: boolean;1834    readonly isWouldDie: boolean;1835    readonly isBelowMinimum: boolean;1836    readonly isCannotCreate: boolean;1837    readonly isUnknownAsset: boolean;1838    readonly isFrozen: boolean;1839    readonly isUnsupported: boolean;1840    readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';1841  }18421843  /** @name SpRuntimeArithmeticError (217) */1844  export interface SpRuntimeArithmeticError extends Enum {1845    readonly isUnderflow: boolean;1846    readonly isOverflow: boolean;1847    readonly isDivisionByZero: boolean;1848    readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';1849  }18501851  /** @name PalletSudoError (218) */1852  export interface PalletSudoError extends Enum {1853    readonly isRequireSudo: boolean;1854    readonly type: 'RequireSudo';1855  }18561857  /** @name FrameSystemAccountInfo (219) */1858  export interface FrameSystemAccountInfo extends Struct {1859    readonly nonce: u32;1860    readonly consumers: u32;1861    readonly providers: u32;1862    readonly sufficients: u32;1863    readonly data: PalletBalancesAccountData;1864  }18651866  /** @name FrameSupportWeightsPerDispatchClassU64 (220) */1867  export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {1868    readonly normal: u64;1869    readonly operational: u64;1870    readonly mandatory: u64;1871  }18721873  /** @name SpRuntimeDigest (221) */1874  export interface SpRuntimeDigest extends Struct {1875    readonly logs: Vec<SpRuntimeDigestDigestItem>;1876  }18771878  /** @name SpRuntimeDigestDigestItem (223) */1879  export interface SpRuntimeDigestDigestItem extends Enum {1880    readonly isOther: boolean;1881    readonly asOther: Bytes;1882    readonly isConsensus: boolean;1883    readonly asConsensus: ITuple<[U8aFixed, Bytes]>;1884    readonly isSeal: boolean;1885    readonly asSeal: ITuple<[U8aFixed, Bytes]>;1886    readonly isPreRuntime: boolean;1887    readonly asPreRuntime: ITuple<[U8aFixed, Bytes]>;1888    readonly isRuntimeEnvironmentUpdated: boolean;1889    readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';1890  }18911892  /** @name FrameSystemEventRecord (225) */1893  export interface FrameSystemEventRecord extends Struct {1894    readonly phase: FrameSystemPhase;1895    readonly event: Event;1896    readonly topics: Vec<H256>;1897  }18981899  /** @name FrameSystemEvent (227) */1900  export interface FrameSystemEvent extends Enum {1901    readonly isExtrinsicSuccess: boolean;1902    readonly asExtrinsicSuccess: {1903      readonly dispatchInfo: FrameSupportWeightsDispatchInfo;1904    } & Struct;1905    readonly isExtrinsicFailed: boolean;1906    readonly asExtrinsicFailed: {1907      readonly dispatchError: SpRuntimeDispatchError;1908      readonly dispatchInfo: FrameSupportWeightsDispatchInfo;1909    } & Struct;1910    readonly isCodeUpdated: boolean;1911    readonly isNewAccount: boolean;1912    readonly asNewAccount: {1913      readonly account: AccountId32;1914    } & Struct;1915    readonly isKilledAccount: boolean;1916    readonly asKilledAccount: {1917      readonly account: AccountId32;1918    } & Struct;1919    readonly isRemarked: boolean;1920    readonly asRemarked: {1921      readonly sender: AccountId32;1922      readonly hash_: H256;1923    } & Struct;1924    readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';1925  }19261927  /** @name FrameSupportWeightsDispatchInfo (228) */1928  export interface FrameSupportWeightsDispatchInfo extends Struct {1929    readonly weight: u64;1930    readonly class: FrameSupportWeightsDispatchClass;1931    readonly paysFee: FrameSupportWeightsPays;1932  }19331934  /** @name FrameSupportWeightsDispatchClass (229) */1935  export interface FrameSupportWeightsDispatchClass extends Enum {1936    readonly isNormal: boolean;1937    readonly isOperational: boolean;1938    readonly isMandatory: boolean;1939    readonly type: 'Normal' | 'Operational' | 'Mandatory';1940  }19411942  /** @name FrameSupportWeightsPays (230) */1943  export interface FrameSupportWeightsPays extends Enum {1944    readonly isYes: boolean;1945    readonly isNo: boolean;1946    readonly type: 'Yes' | 'No';1947  }19481949  /** @name OrmlVestingModuleEvent (231) */1950  export interface OrmlVestingModuleEvent extends Enum {1951    readonly isVestingScheduleAdded: boolean;1952    readonly asVestingScheduleAdded: {1953      readonly from: AccountId32;1954      readonly to: AccountId32;1955      readonly vestingSchedule: OrmlVestingVestingSchedule;1956    } & Struct;1957    readonly isClaimed: boolean;1958    readonly asClaimed: {1959      readonly who: AccountId32;1960      readonly amount: u128;1961    } & Struct;1962    readonly isVestingSchedulesUpdated: boolean;1963    readonly asVestingSchedulesUpdated: {1964      readonly who: AccountId32;1965    } & Struct;1966    readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';1967  }19681969  /** @name CumulusPalletXcmpQueueEvent (232) */1970  export interface CumulusPalletXcmpQueueEvent extends Enum {1971    readonly isSuccess: boolean;1972    readonly asSuccess: Option<H256>;1973    readonly isFail: boolean;1974    readonly asFail: ITuple<[Option<H256>, XcmV2TraitsError]>;1975    readonly isBadVersion: boolean;1976    readonly asBadVersion: Option<H256>;1977    readonly isBadFormat: boolean;1978    readonly asBadFormat: Option<H256>;1979    readonly isUpwardMessageSent: boolean;1980    readonly asUpwardMessageSent: Option<H256>;1981    readonly isXcmpMessageSent: boolean;1982    readonly asXcmpMessageSent: Option<H256>;1983    readonly isOverweightEnqueued: boolean;1984    readonly asOverweightEnqueued: ITuple<[u32, u32, u64, u64]>;1985    readonly isOverweightServiced: boolean;1986    readonly asOverweightServiced: ITuple<[u64, u64]>;1987    readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';1988  }19891990  /** @name PalletXcmEvent (233) */1991  export interface PalletXcmEvent extends Enum {1992    readonly isAttempted: boolean;1993    readonly asAttempted: XcmV2TraitsOutcome;1994    readonly isSent: boolean;1995    readonly asSent: ITuple<[XcmV1MultiLocation, XcmV1MultiLocation, XcmV2Xcm]>;1996    readonly isUnexpectedResponse: boolean;1997    readonly asUnexpectedResponse: ITuple<[XcmV1MultiLocation, u64]>;1998    readonly isResponseReady: boolean;1999    readonly asResponseReady: ITuple<[u64, XcmV2Response]>;2000    readonly isNotified: boolean;2001    readonly asNotified: ITuple<[u64, u8, u8]>;2002    readonly isNotifyOverweight: boolean;2003    readonly asNotifyOverweight: ITuple<[u64, u8, u8, u64, u64]>;2004    readonly isNotifyDispatchError: boolean;2005    readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;2006    readonly isNotifyDecodeFailed: boolean;2007    readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;2008    readonly isInvalidResponder: boolean;2009    readonly asInvalidResponder: ITuple<[XcmV1MultiLocation, u64, Option<XcmV1MultiLocation>]>;2010    readonly isInvalidResponderVersion: boolean;2011    readonly asInvalidResponderVersion: ITuple<[XcmV1MultiLocation, u64]>;2012    readonly isResponseTaken: boolean;2013    readonly asResponseTaken: u64;2014    readonly isAssetsTrapped: boolean;2015    readonly asAssetsTrapped: ITuple<[H256, XcmV1MultiLocation, XcmVersionedMultiAssets]>;2016    readonly isVersionChangeNotified: boolean;2017    readonly asVersionChangeNotified: ITuple<[XcmV1MultiLocation, u32]>;2018    readonly isSupportedVersionChanged: boolean;2019    readonly asSupportedVersionChanged: ITuple<[XcmV1MultiLocation, u32]>;2020    readonly isNotifyTargetSendFail: boolean;2021    readonly asNotifyTargetSendFail: ITuple<[XcmV1MultiLocation, u64, XcmV2TraitsError]>;2022    readonly isNotifyTargetMigrationFail: boolean;2023    readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;2024    readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';2025  }20262027  /** @name XcmV2TraitsOutcome (234) */2028  export interface XcmV2TraitsOutcome extends Enum {2029    readonly isComplete: boolean;2030    readonly asComplete: u64;2031    readonly isIncomplete: boolean;2032    readonly asIncomplete: ITuple<[u64, XcmV2TraitsError]>;2033    readonly isError: boolean;2034    readonly asError: XcmV2TraitsError;2035    readonly type: 'Complete' | 'Incomplete' | 'Error';2036  }20372038  /** @name CumulusPalletXcmEvent (236) */2039  export interface CumulusPalletXcmEvent extends Enum {2040    readonly isInvalidFormat: boolean;2041    readonly asInvalidFormat: U8aFixed;2042    readonly isUnsupportedVersion: boolean;2043    readonly asUnsupportedVersion: U8aFixed;2044    readonly isExecutedDownward: boolean;2045    readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;2046    readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';2047  }20482049  /** @name CumulusPalletDmpQueueEvent (237) */2050  export interface CumulusPalletDmpQueueEvent extends Enum {2051    readonly isInvalidFormat: boolean;2052    readonly asInvalidFormat: U8aFixed;2053    readonly isUnsupportedVersion: boolean;2054    readonly asUnsupportedVersion: U8aFixed;2055    readonly isExecutedDownward: boolean;2056    readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;2057    readonly isWeightExhausted: boolean;2058    readonly asWeightExhausted: ITuple<[U8aFixed, u64, u64]>;2059    readonly isOverweightEnqueued: boolean;2060    readonly asOverweightEnqueued: ITuple<[U8aFixed, u64, u64]>;2061    readonly isOverweightServiced: boolean;2062    readonly asOverweightServiced: ITuple<[u64, u64]>;2063    readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';2064  }20652066  /** @name PalletUniqueRawEvent (238) */2067  export interface PalletUniqueRawEvent extends Enum {2068    readonly isCollectionSponsorRemoved: boolean;2069    readonly asCollectionSponsorRemoved: u32;2070    readonly isCollectionAdminAdded: boolean;2071    readonly asCollectionAdminAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;2072    readonly isCollectionOwnedChanged: boolean;2073    readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;2074    readonly isCollectionSponsorSet: boolean;2075    readonly asCollectionSponsorSet: ITuple<[u32, AccountId32]>;2076    readonly isConstOnChainSchemaSet: boolean;2077    readonly asConstOnChainSchemaSet: u32;2078    readonly isSponsorshipConfirmed: boolean;2079    readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;2080    readonly isCollectionAdminRemoved: boolean;2081    readonly asCollectionAdminRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;2082    readonly isAllowListAddressRemoved: boolean;2083    readonly asAllowListAddressRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;2084    readonly isAllowListAddressAdded: boolean;2085    readonly asAllowListAddressAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;2086    readonly isCollectionLimitSet: boolean;2087    readonly asCollectionLimitSet: u32;2088    readonly isMintPermissionSet: boolean;2089    readonly asMintPermissionSet: u32;2090    readonly isOffchainSchemaSet: boolean;2091    readonly asOffchainSchemaSet: u32;2092    readonly isPublicAccessModeSet: boolean;2093    readonly asPublicAccessModeSet: ITuple<[u32, UpDataStructsAccessMode]>;2094    readonly isSchemaVersionSet: boolean;2095    readonly asSchemaVersionSet: u32;2096    readonly isVariableOnChainSchemaSet: boolean;2097    readonly asVariableOnChainSchemaSet: u32;2098    readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';2099  }21002101  /** @name PalletCommonEvent (239) */2102  export interface PalletCommonEvent extends Enum {2103    readonly isCollectionCreated: boolean;2104    readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;2105    readonly isCollectionDestroyed: boolean;2106    readonly asCollectionDestroyed: u32;2107    readonly isItemCreated: boolean;2108    readonly asItemCreated: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;2109    readonly isItemDestroyed: boolean;2110    readonly asItemDestroyed: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;2111    readonly isTransfer: boolean;2112    readonly asTransfer: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;2113    readonly isApproved: boolean;2114    readonly asApproved: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;2115    readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';2116  }21172118  /** @name PalletEvmEvent (240) */2119  export interface PalletEvmEvent extends Enum {2120    readonly isLog: boolean;2121    readonly asLog: EthereumLog;2122    readonly isCreated: boolean;2123    readonly asCreated: H160;2124    readonly isCreatedFailed: boolean;2125    readonly asCreatedFailed: H160;2126    readonly isExecuted: boolean;2127    readonly asExecuted: H160;2128    readonly isExecutedFailed: boolean;2129    readonly asExecutedFailed: H160;2130    readonly isBalanceDeposit: boolean;2131    readonly asBalanceDeposit: ITuple<[AccountId32, H160, U256]>;2132    readonly isBalanceWithdraw: boolean;2133    readonly asBalanceWithdraw: ITuple<[AccountId32, H160, U256]>;2134    readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';2135  }21362137  /** @name EthereumLog (241) */2138  export interface EthereumLog extends Struct {2139    readonly address: H160;2140    readonly topics: Vec<H256>;2141    readonly data: Bytes;2142  }21432144  /** @name PalletEthereumEvent (242) */2145  export interface PalletEthereumEvent extends Enum {2146    readonly isExecuted: boolean;2147    readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;2148    readonly type: 'Executed';2149  }21502151  /** @name EvmCoreErrorExitReason (243) */2152  export interface EvmCoreErrorExitReason extends Enum {2153    readonly isSucceed: boolean;2154    readonly asSucceed: EvmCoreErrorExitSucceed;2155    readonly isError: boolean;2156    readonly asError: EvmCoreErrorExitError;2157    readonly isRevert: boolean;2158    readonly asRevert: EvmCoreErrorExitRevert;2159    readonly isFatal: boolean;2160    readonly asFatal: EvmCoreErrorExitFatal;2161    readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';2162  }21632164  /** @name EvmCoreErrorExitSucceed (244) */2165  export interface EvmCoreErrorExitSucceed extends Enum {2166    readonly isStopped: boolean;2167    readonly isReturned: boolean;2168    readonly isSuicided: boolean;2169    readonly type: 'Stopped' | 'Returned' | 'Suicided';2170  }21712172  /** @name EvmCoreErrorExitError (245) */2173  export interface EvmCoreErrorExitError extends Enum {2174    readonly isStackUnderflow: boolean;2175    readonly isStackOverflow: boolean;2176    readonly isInvalidJump: boolean;2177    readonly isInvalidRange: boolean;2178    readonly isDesignatedInvalid: boolean;2179    readonly isCallTooDeep: boolean;2180    readonly isCreateCollision: boolean;2181    readonly isCreateContractLimit: boolean;2182    readonly isInvalidCode: boolean;2183    readonly isOutOfOffset: boolean;2184    readonly isOutOfGas: boolean;2185    readonly isOutOfFund: boolean;2186    readonly isPcUnderflow: boolean;2187    readonly isCreateEmpty: boolean;2188    readonly isOther: boolean;2189    readonly asOther: Text;2190    readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';2191  }21922193  /** @name EvmCoreErrorExitRevert (248) */2194  export interface EvmCoreErrorExitRevert extends Enum {2195    readonly isReverted: boolean;2196    readonly type: 'Reverted';2197  }21982199  /** @name EvmCoreErrorExitFatal (249) */2200  export interface EvmCoreErrorExitFatal extends Enum {2201    readonly isNotSupported: boolean;2202    readonly isUnhandledInterrupt: boolean;2203    readonly isCallErrorAsFatal: boolean;2204    readonly asCallErrorAsFatal: EvmCoreErrorExitError;2205    readonly isOther: boolean;2206    readonly asOther: Text;2207    readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';2208  }22092210  /** @name FrameSystemPhase (250) */2211  export interface FrameSystemPhase extends Enum {2212    readonly isApplyExtrinsic: boolean;2213    readonly asApplyExtrinsic: u32;2214    readonly isFinalization: boolean;2215    readonly isInitialization: boolean;2216    readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';2217  }22182219  /** @name FrameSystemLastRuntimeUpgradeInfo (252) */2220  export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {2221    readonly specVersion: Compact<u32>;2222    readonly specName: Text;2223  }22242225  /** @name FrameSystemLimitsBlockWeights (253) */2226  export interface FrameSystemLimitsBlockWeights extends Struct {2227    readonly baseBlock: u64;2228    readonly maxBlock: u64;2229    readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;2230  }22312232  /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (254) */2233  export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {2234    readonly normal: FrameSystemLimitsWeightsPerClass;2235    readonly operational: FrameSystemLimitsWeightsPerClass;2236    readonly mandatory: FrameSystemLimitsWeightsPerClass;2237  }22382239  /** @name FrameSystemLimitsWeightsPerClass (255) */2240  export interface FrameSystemLimitsWeightsPerClass extends Struct {2241    readonly baseExtrinsic: u64;2242    readonly maxExtrinsic: Option<u64>;2243    readonly maxTotal: Option<u64>;2244    readonly reserved: Option<u64>;2245  }22462247  /** @name FrameSystemLimitsBlockLength (257) */2248  export interface FrameSystemLimitsBlockLength extends Struct {2249    readonly max: FrameSupportWeightsPerDispatchClassU32;2250  }22512252  /** @name FrameSupportWeightsPerDispatchClassU32 (258) */2253  export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {2254    readonly normal: u32;2255    readonly operational: u32;2256    readonly mandatory: u32;2257  }22582259  /** @name FrameSupportWeightsRuntimeDbWeight (259) */2260  export interface FrameSupportWeightsRuntimeDbWeight extends Struct {2261    readonly read: u64;2262    readonly write: u64;2263  }22642265  /** @name SpVersionRuntimeVersion (260) */2266  export interface SpVersionRuntimeVersion extends Struct {2267    readonly specName: Text;2268    readonly implName: Text;2269    readonly authoringVersion: u32;2270    readonly specVersion: u32;2271    readonly implVersion: u32;2272    readonly apis: Vec<ITuple<[U8aFixed, u32]>>;2273    readonly transactionVersion: u32;2274    readonly stateVersion: u8;2275  }22762277  /** @name FrameSystemError (264) */2278  export interface FrameSystemError extends Enum {2279    readonly isInvalidSpecName: boolean;2280    readonly isSpecVersionNeedsToIncrease: boolean;2281    readonly isFailedToExtractRuntimeVersion: boolean;2282    readonly isNonDefaultComposite: boolean;2283    readonly isNonZeroRefCount: boolean;2284    readonly isCallFiltered: boolean;2285    readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';2286  }22872288  /** @name OrmlVestingModuleError (266) */2289  export interface OrmlVestingModuleError extends Enum {2290    readonly isZeroVestingPeriod: boolean;2291    readonly isZeroVestingPeriodCount: boolean;2292    readonly isInsufficientBalanceToLock: boolean;2293    readonly isTooManyVestingSchedules: boolean;2294    readonly isAmountLow: boolean;2295    readonly isMaxVestingSchedulesExceeded: boolean;2296    readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';2297  }22982299  /** @name CumulusPalletXcmpQueueInboundChannelDetails (268) */2300  export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {2301    readonly sender: u32;2302    readonly state: CumulusPalletXcmpQueueInboundState;2303    readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;2304  }23052306  /** @name CumulusPalletXcmpQueueInboundState (269) */2307  export interface CumulusPalletXcmpQueueInboundState extends Enum {2308    readonly isOk: boolean;2309    readonly isSuspended: boolean;2310    readonly type: 'Ok' | 'Suspended';2311  }23122313  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (272) */2314  export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {2315    readonly isConcatenatedVersionedXcm: boolean;2316    readonly isConcatenatedEncodedBlob: boolean;2317    readonly isSignals: boolean;2318    readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';2319  }23202321  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (275) */2322  export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {2323    readonly recipient: u32;2324    readonly state: CumulusPalletXcmpQueueOutboundState;2325    readonly signalsExist: bool;2326    readonly firstIndex: u16;2327    readonly lastIndex: u16;2328  }23292330  /** @name CumulusPalletXcmpQueueOutboundState (276) */2331  export interface CumulusPalletXcmpQueueOutboundState extends Enum {2332    readonly isOk: boolean;2333    readonly isSuspended: boolean;2334    readonly type: 'Ok' | 'Suspended';2335  }23362337  /** @name CumulusPalletXcmpQueueQueueConfigData (278) */2338  export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {2339    readonly suspendThreshold: u32;2340    readonly dropThreshold: u32;2341    readonly resumeThreshold: u32;2342    readonly thresholdWeight: u64;2343    readonly weightRestrictDecay: u64;2344    readonly xcmpMaxIndividualWeight: u64;2345  }23462347  /** @name CumulusPalletXcmpQueueError (280) */2348  export interface CumulusPalletXcmpQueueError extends Enum {2349    readonly isFailedToSend: boolean;2350    readonly isBadXcmOrigin: boolean;2351    readonly isBadXcm: boolean;2352    readonly isBadOverweightIndex: boolean;2353    readonly isWeightOverLimit: boolean;2354    readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';2355  }23562357  /** @name PalletXcmError (281) */2358  export interface PalletXcmError extends Enum {2359    readonly isUnreachable: boolean;2360    readonly isSendFailure: boolean;2361    readonly isFiltered: boolean;2362    readonly isUnweighableMessage: boolean;2363    readonly isDestinationNotInvertible: boolean;2364    readonly isEmpty: boolean;2365    readonly isCannotReanchor: boolean;2366    readonly isTooManyAssets: boolean;2367    readonly isInvalidOrigin: boolean;2368    readonly isBadVersion: boolean;2369    readonly isBadLocation: boolean;2370    readonly isNoSubscription: boolean;2371    readonly isAlreadySubscribed: boolean;2372    readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';2373  }23742375  /** @name CumulusPalletXcmError (282) */2376  export type CumulusPalletXcmError = Null;23772378  /** @name CumulusPalletDmpQueueConfigData (283) */2379  export interface CumulusPalletDmpQueueConfigData extends Struct {2380    readonly maxIndividual: u64;2381  }23822383  /** @name CumulusPalletDmpQueuePageIndexData (284) */2384  export interface CumulusPalletDmpQueuePageIndexData extends Struct {2385    readonly beginUsed: u32;2386    readonly endUsed: u32;2387    readonly overweightCount: u64;2388  }23892390  /** @name CumulusPalletDmpQueueError (287) */2391  export interface CumulusPalletDmpQueueError extends Enum {2392    readonly isUnknown: boolean;2393    readonly isOverLimit: boolean;2394    readonly type: 'Unknown' | 'OverLimit';2395  }23962397  /** @name PalletUniqueError (291) */2398  export interface PalletUniqueError extends Enum {2399    readonly isCollectionDecimalPointLimitExceeded: boolean;2400    readonly isConfirmUnsetSponsorFail: boolean;2401    readonly isEmptyArgument: boolean;2402    readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';2403  }24042405  /** @name UpDataStructsCollection (292) */2406  export interface UpDataStructsCollection extends Struct {2407    readonly owner: AccountId32;2408    readonly mode: UpDataStructsCollectionMode;2409    readonly access: UpDataStructsAccessMode;2410    readonly name: Vec<u16>;2411    readonly description: Vec<u16>;2412    readonly tokenPrefix: Bytes;2413    readonly mintMode: bool;2414    readonly offchainSchema: Bytes;2415    readonly schemaVersion: UpDataStructsSchemaVersion;2416    readonly sponsorship: UpDataStructsSponsorshipState;2417    readonly limits: UpDataStructsCollectionLimits;2418    readonly variableOnChainSchema: Bytes;2419    readonly constOnChainSchema: Bytes;2420    readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;2421  }24222423  /** @name UpDataStructsSponsorshipState (293) */2424  export interface UpDataStructsSponsorshipState extends Enum {2425    readonly isDisabled: boolean;2426    readonly isUnconfirmed: boolean;2427    readonly asUnconfirmed: AccountId32;2428    readonly isConfirmed: boolean;2429    readonly asConfirmed: AccountId32;2430    readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';2431  }24322433  /** @name UpDataStructsCollectionStats (296) */2434  export interface UpDataStructsCollectionStats extends Struct {2435    readonly created: u32;2436    readonly destroyed: u32;2437    readonly alive: u32;2438  }24392440  /** @name PalletCommonError (297) */2441  export interface PalletCommonError extends Enum {2442    readonly isCollectionNotFound: boolean;2443    readonly isMustBeTokenOwner: boolean;2444    readonly isNoPermission: boolean;2445    readonly isPublicMintingNotAllowed: boolean;2446    readonly isAddressNotInAllowlist: boolean;2447    readonly isCollectionNameLimitExceeded: boolean;2448    readonly isCollectionDescriptionLimitExceeded: boolean;2449    readonly isCollectionTokenPrefixLimitExceeded: boolean;2450    readonly isTotalCollectionsLimitExceeded: boolean;2451    readonly isTokenVariableDataLimitExceeded: boolean;2452    readonly isCollectionAdminCountExceeded: boolean;2453    readonly isCollectionLimitBoundsExceeded: boolean;2454    readonly isOwnerPermissionsCantBeReverted: boolean;2455    readonly isTransferNotAllowed: boolean;2456    readonly isAccountTokenLimitExceeded: boolean;2457    readonly isCollectionTokenLimitExceeded: boolean;2458    readonly isMetadataFlagFrozen: boolean;2459    readonly isTokenNotFound: boolean;2460    readonly isTokenValueTooLow: boolean;2461    readonly isApprovedValueTooLow: boolean;2462    readonly isCantApproveMoreThanOwned: boolean;2463    readonly isAddressIsZero: boolean;2464    readonly isUnsupportedOperation: boolean;2465    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';2466  }24672468  /** @name PalletFungibleError (299) */2469  export interface PalletFungibleError extends Enum {2470    readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;2471    readonly isFungibleItemsHaveNoId: boolean;2472    readonly isFungibleItemsDontHaveData: boolean;2473    readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData';2474  }24752476  /** @name PalletRefungibleItemData (300) */2477  export interface PalletRefungibleItemData extends Struct {2478    readonly constData: Bytes;2479    readonly variableData: Bytes;2480  }24812482  /** @name PalletRefungibleError (304) */2483  export interface PalletRefungibleError extends Enum {2484    readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;2485    readonly isWrongRefungiblePieces: boolean;2486    readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces';2487  }24882489  /** @name PalletNonfungibleItemData (305) */2490  export interface PalletNonfungibleItemData extends Struct {2491    readonly constData: Bytes;2492    readonly variableData: Bytes;2493    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;2494  }24952496  /** @name PalletNonfungibleError (306) */2497  export interface PalletNonfungibleError extends Enum {2498    readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;2499    readonly isNonfungibleItemsHaveNoAmount: boolean;2500    readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';2501  }25022503  /** @name PalletEvmError (308) */2504  export interface PalletEvmError extends Enum {2505    readonly isBalanceLow: boolean;2506    readonly isFeeOverflow: boolean;2507    readonly isPaymentOverflow: boolean;2508    readonly isWithdrawFailed: boolean;2509    readonly isGasPriceTooLow: boolean;2510    readonly isInvalidNonce: boolean;2511    readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';2512  }25132514  /** @name FpRpcTransactionStatus (311) */2515  export interface FpRpcTransactionStatus extends Struct {2516    readonly transactionHash: H256;2517    readonly transactionIndex: u32;2518    readonly from: H160;2519    readonly to: Option<H160>;2520    readonly contractAddress: Option<H160>;2521    readonly logs: Vec<EthereumLog>;2522    readonly logsBloom: EthbloomBloom;2523  }25242525  /** @name EthbloomBloom (314) */2526  export interface EthbloomBloom extends U8aFixed {}25272528  /** @name EthereumReceiptReceiptV3 (316) */2529  export interface EthereumReceiptReceiptV3 extends Enum {2530    readonly isLegacy: boolean;2531    readonly asLegacy: EthereumReceiptEip658ReceiptData;2532    readonly isEip2930: boolean;2533    readonly asEip2930: EthereumReceiptEip658ReceiptData;2534    readonly isEip1559: boolean;2535    readonly asEip1559: EthereumReceiptEip658ReceiptData;2536    readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';2537  }25382539  /** @name EthereumReceiptEip658ReceiptData (317) */2540  export interface EthereumReceiptEip658ReceiptData extends Struct {2541    readonly statusCode: u8;2542    readonly usedGas: U256;2543    readonly logsBloom: EthbloomBloom;2544    readonly logs: Vec<EthereumLog>;2545  }25462547  /** @name EthereumBlock (318) */2548  export interface EthereumBlock extends Struct {2549    readonly header: EthereumHeader;2550    readonly transactions: Vec<EthereumTransactionTransactionV2>;2551    readonly ommers: Vec<EthereumHeader>;2552  }25532554  /** @name EthereumHeader (319) */2555  export interface EthereumHeader extends Struct {2556    readonly parentHash: H256;2557    readonly ommersHash: H256;2558    readonly beneficiary: H160;2559    readonly stateRoot: H256;2560    readonly transactionsRoot: H256;2561    readonly receiptsRoot: H256;2562    readonly logsBloom: EthbloomBloom;2563    readonly difficulty: U256;2564    readonly number: U256;2565    readonly gasLimit: U256;2566    readonly gasUsed: U256;2567    readonly timestamp: u64;2568    readonly extraData: Bytes;2569    readonly mixHash: H256;2570    readonly nonce: EthereumTypesHashH64;2571  }25722573  /** @name EthereumTypesHashH64 (320) */2574  export interface EthereumTypesHashH64 extends U8aFixed {}25752576  /** @name PalletEthereumError (325) */2577  export interface PalletEthereumError extends Enum {2578    readonly isInvalidSignature: boolean;2579    readonly isPreLogExists: boolean;2580    readonly type: 'InvalidSignature' | 'PreLogExists';2581  }25822583  /** @name PalletEvmCoderSubstrateError (326) */2584  export interface PalletEvmCoderSubstrateError extends Enum {2585    readonly isOutOfGas: boolean;2586    readonly isOutOfFund: boolean;2587    readonly type: 'OutOfGas' | 'OutOfFund';2588  }25892590  /** @name PalletEvmContractHelpersSponsoringModeT (327) */2591  export interface PalletEvmContractHelpersSponsoringModeT extends Enum {2592    readonly isDisabled: boolean;2593    readonly isAllowlisted: boolean;2594    readonly isGenerous: boolean;2595    readonly type: 'Disabled' | 'Allowlisted' | 'Generous';2596  }25972598  /** @name PalletEvmContractHelpersError (329) */2599  export interface PalletEvmContractHelpersError extends Enum {2600    readonly isNoPermission: boolean;2601    readonly type: 'NoPermission';2602  }26032604  /** @name PalletEvmMigrationError (330) */2605  export interface PalletEvmMigrationError extends Enum {2606    readonly isAccountNotEmpty: boolean;2607    readonly isAccountIsNotMigrating: boolean;2608    readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';2609  }26102611  /** @name SpRuntimeMultiSignature (332) */2612  export interface SpRuntimeMultiSignature extends Enum {2613    readonly isEd25519: boolean;2614    readonly asEd25519: SpCoreEd25519Signature;2615    readonly isSr25519: boolean;2616    readonly asSr25519: SpCoreSr25519Signature;2617    readonly isEcdsa: boolean;2618    readonly asEcdsa: SpCoreEcdsaSignature;2619    readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';2620  }26212622  /** @name SpCoreEd25519Signature (333) */2623  export interface SpCoreEd25519Signature extends U8aFixed {}26242625  /** @name SpCoreSr25519Signature (335) */2626  export interface SpCoreSr25519Signature extends U8aFixed {}26272628  /** @name SpCoreEcdsaSignature (336) */2629  export interface SpCoreEcdsaSignature extends U8aFixed {}26302631  /** @name FrameSystemExtensionsCheckSpecVersion (339) */2632  export type FrameSystemExtensionsCheckSpecVersion = Null;26332634  /** @name FrameSystemExtensionsCheckGenesis (340) */2635  export type FrameSystemExtensionsCheckGenesis = Null;26362637  /** @name FrameSystemExtensionsCheckNonce (343) */2638  export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}26392640  /** @name FrameSystemExtensionsCheckWeight (344) */2641  export type FrameSystemExtensionsCheckWeight = Null;26422643  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (345) */2644  export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}26452646  /** @name UniqueRuntimeRuntime (346) */2647  export type UniqueRuntimeRuntime = Null;26482649} // declare module
after · tests/src/interfaces/types-lookup.ts
1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34declare module '@polkadot/types/lookup' {5  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';6  import type { ITuple } from '@polkadot/types-codec/types';7  import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';8  import type { Event } from '@polkadot/types/interfaces/system';910  /** @name PolkadotPrimitivesV1PersistedValidationData (2) */11  export interface PolkadotPrimitivesV1PersistedValidationData extends Struct {12    readonly parentHead: Bytes;13    readonly relayParentNumber: u32;14    readonly relayParentStorageRoot: H256;15    readonly maxPovSize: u32;16  }1718  /** @name PolkadotPrimitivesV1UpgradeRestriction (9) */19  export interface PolkadotPrimitivesV1UpgradeRestriction extends Enum {20    readonly isPresent: boolean;21    readonly type: 'Present';22  }2324  /** @name SpTrieStorageProof (10) */25  export interface SpTrieStorageProof extends Struct {26    readonly trieNodes: BTreeSet;27  }2829  /** @name BTreeSet (11) */30  export interface BTreeSet extends Vec<Bytes> {}3132  /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (13) */33  export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {34    readonly dmqMqcHead: H256;35    readonly relayDispatchQueueSize: ITuple<[u32, u32]>;36    readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;37    readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;38  }3940  /** @name PolkadotPrimitivesV1AbridgedHrmpChannel (18) */41  export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {42    readonly maxCapacity: u32;43    readonly maxTotalSize: u32;44    readonly maxMessageSize: u32;45    readonly msgCount: u32;46    readonly totalSize: u32;47    readonly mqcHead: Option<H256>;48  }4950  /** @name PolkadotPrimitivesV1AbridgedHostConfiguration (20) */51  export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {52    readonly maxCodeSize: u32;53    readonly maxHeadDataSize: u32;54    readonly maxUpwardQueueCount: u32;55    readonly maxUpwardQueueSize: u32;56    readonly maxUpwardMessageSize: u32;57    readonly maxUpwardMessageNumPerCandidate: u32;58    readonly hrmpMaxMessageNumPerCandidate: u32;59    readonly validationUpgradeCooldown: u32;60    readonly validationUpgradeDelay: u32;61  }6263  /** @name PolkadotCorePrimitivesOutboundHrmpMessage (26) */64  export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {65    readonly recipient: u32;66    readonly data: Bytes;67  }6869  /** @name CumulusPalletParachainSystemCall (28) */70  export interface CumulusPalletParachainSystemCall extends Enum {71    readonly isSetValidationData: boolean;72    readonly asSetValidationData: {73      readonly data: CumulusPrimitivesParachainInherentParachainInherentData;74    } & Struct;75    readonly isSudoSendUpwardMessage: boolean;76    readonly asSudoSendUpwardMessage: {77      readonly message: Bytes;78    } & Struct;79    readonly isAuthorizeUpgrade: boolean;80    readonly asAuthorizeUpgrade: {81      readonly codeHash: H256;82    } & Struct;83    readonly isEnactAuthorizedUpgrade: boolean;84    readonly asEnactAuthorizedUpgrade: {85      readonly code: Bytes;86    } & Struct;87    readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';88  }8990  /** @name CumulusPrimitivesParachainInherentParachainInherentData (29) */91  export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {92    readonly validationData: PolkadotPrimitivesV1PersistedValidationData;93    readonly relayChainState: SpTrieStorageProof;94    readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;95    readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;96  }9798  /** @name PolkadotCorePrimitivesInboundDownwardMessage (31) */99  export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {100    readonly sentAt: u32;101    readonly msg: Bytes;102  }103104  /** @name PolkadotCorePrimitivesInboundHrmpMessage (34) */105  export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {106    readonly sentAt: u32;107    readonly data: Bytes;108  }109110  /** @name CumulusPalletParachainSystemEvent (37) */111  export interface CumulusPalletParachainSystemEvent extends Enum {112    readonly isValidationFunctionStored: boolean;113    readonly isValidationFunctionApplied: boolean;114    readonly asValidationFunctionApplied: u32;115    readonly isValidationFunctionDiscarded: boolean;116    readonly isUpgradeAuthorized: boolean;117    readonly asUpgradeAuthorized: H256;118    readonly isDownwardMessagesReceived: boolean;119    readonly asDownwardMessagesReceived: u32;120    readonly isDownwardMessagesProcessed: boolean;121    readonly asDownwardMessagesProcessed: ITuple<[u64, H256]>;122    readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';123  }124125  /** @name CumulusPalletParachainSystemError (38) */126  export interface CumulusPalletParachainSystemError extends Enum {127    readonly isOverlappingUpgrades: boolean;128    readonly isProhibitedByPolkadot: boolean;129    readonly isTooBig: boolean;130    readonly isValidationDataNotAvailable: boolean;131    readonly isHostConfigurationNotAvailable: boolean;132    readonly isNotScheduled: boolean;133    readonly isNothingAuthorized: boolean;134    readonly isUnauthorized: boolean;135    readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';136  }137138  /** @name PalletBalancesAccountData (41) */139  export interface PalletBalancesAccountData extends Struct {140    readonly free: u128;141    readonly reserved: u128;142    readonly miscFrozen: u128;143    readonly feeFrozen: u128;144  }145146  /** @name PalletBalancesBalanceLock (43) */147  export interface PalletBalancesBalanceLock extends Struct {148    readonly id: U8aFixed;149    readonly amount: u128;150    readonly reasons: PalletBalancesReasons;151  }152153  /** @name PalletBalancesReasons (45) */154  export interface PalletBalancesReasons extends Enum {155    readonly isFee: boolean;156    readonly isMisc: boolean;157    readonly isAll: boolean;158    readonly type: 'Fee' | 'Misc' | 'All';159  }160161  /** @name PalletBalancesReserveData (48) */162  export interface PalletBalancesReserveData extends Struct {163    readonly id: U8aFixed;164    readonly amount: u128;165  }166167  /** @name PalletBalancesReleases (50) */168  export interface PalletBalancesReleases extends Enum {169    readonly isV100: boolean;170    readonly isV200: boolean;171    readonly type: 'V100' | 'V200';172  }173174  /** @name PalletBalancesCall (51) */175  export interface PalletBalancesCall extends Enum {176    readonly isTransfer: boolean;177    readonly asTransfer: {178      readonly dest: MultiAddress;179      readonly value: Compact<u128>;180    } & Struct;181    readonly isSetBalance: boolean;182    readonly asSetBalance: {183      readonly who: MultiAddress;184      readonly newFree: Compact<u128>;185      readonly newReserved: Compact<u128>;186    } & Struct;187    readonly isForceTransfer: boolean;188    readonly asForceTransfer: {189      readonly source: MultiAddress;190      readonly dest: MultiAddress;191      readonly value: Compact<u128>;192    } & Struct;193    readonly isTransferKeepAlive: boolean;194    readonly asTransferKeepAlive: {195      readonly dest: MultiAddress;196      readonly value: Compact<u128>;197    } & Struct;198    readonly isTransferAll: boolean;199    readonly asTransferAll: {200      readonly dest: MultiAddress;201      readonly keepAlive: bool;202    } & Struct;203    readonly isForceUnreserve: boolean;204    readonly asForceUnreserve: {205      readonly who: MultiAddress;206      readonly amount: u128;207    } & Struct;208    readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';209  }210211  /** @name PalletBalancesEvent (57) */212  export interface PalletBalancesEvent extends Enum {213    readonly isEndowed: boolean;214    readonly asEndowed: {215      readonly account: AccountId32;216      readonly freeBalance: u128;217    } & Struct;218    readonly isDustLost: boolean;219    readonly asDustLost: {220      readonly account: AccountId32;221      readonly amount: u128;222    } & Struct;223    readonly isTransfer: boolean;224    readonly asTransfer: {225      readonly from: AccountId32;226      readonly to: AccountId32;227      readonly amount: u128;228    } & Struct;229    readonly isBalanceSet: boolean;230    readonly asBalanceSet: {231      readonly who: AccountId32;232      readonly free: u128;233      readonly reserved: u128;234    } & Struct;235    readonly isReserved: boolean;236    readonly asReserved: {237      readonly who: AccountId32;238      readonly amount: u128;239    } & Struct;240    readonly isUnreserved: boolean;241    readonly asUnreserved: {242      readonly who: AccountId32;243      readonly amount: u128;244    } & Struct;245    readonly isReserveRepatriated: boolean;246    readonly asReserveRepatriated: {247      readonly from: AccountId32;248      readonly to: AccountId32;249      readonly amount: u128;250      readonly destinationStatus: FrameSupportTokensMiscBalanceStatus;251    } & Struct;252    readonly isDeposit: boolean;253    readonly asDeposit: {254      readonly who: AccountId32;255      readonly amount: u128;256    } & Struct;257    readonly isWithdraw: boolean;258    readonly asWithdraw: {259      readonly who: AccountId32;260      readonly amount: u128;261    } & Struct;262    readonly isSlashed: boolean;263    readonly asSlashed: {264      readonly who: AccountId32;265      readonly amount: u128;266    } & Struct;267    readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';268  }269270  /** @name FrameSupportTokensMiscBalanceStatus (58) */271  export interface FrameSupportTokensMiscBalanceStatus extends Enum {272    readonly isFree: boolean;273    readonly isReserved: boolean;274    readonly type: 'Free' | 'Reserved';275  }276277  /** @name PalletBalancesError (59) */278  export interface PalletBalancesError extends Enum {279    readonly isVestingBalance: boolean;280    readonly isLiquidityRestrictions: boolean;281    readonly isInsufficientBalance: boolean;282    readonly isExistentialDeposit: boolean;283    readonly isKeepAlive: boolean;284    readonly isExistingVestingSchedule: boolean;285    readonly isDeadAccount: boolean;286    readonly isTooManyReserves: boolean;287    readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';288  }289290  /** @name PalletTimestampCall (62) */291  export interface PalletTimestampCall extends Enum {292    readonly isSet: boolean;293    readonly asSet: {294      readonly now: Compact<u64>;295    } & Struct;296    readonly type: 'Set';297  }298299  /** @name PalletTransactionPaymentReleases (65) */300  export interface PalletTransactionPaymentReleases extends Enum {301    readonly isV1Ancient: boolean;302    readonly isV2: boolean;303    readonly type: 'V1Ancient' | 'V2';304  }305306  /** @name FrameSupportWeightsWeightToFeeCoefficient (67) */307  export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {308    readonly coeffInteger: u128;309    readonly coeffFrac: Perbill;310    readonly negative: bool;311    readonly degree: u8;312  }313314  /** @name PalletTreasuryProposal (69) */315  export interface PalletTreasuryProposal extends Struct {316    readonly proposer: AccountId32;317    readonly value: u128;318    readonly beneficiary: AccountId32;319    readonly bond: u128;320  }321322  /** @name PalletTreasuryCall (72) */323  export interface PalletTreasuryCall extends Enum {324    readonly isProposeSpend: boolean;325    readonly asProposeSpend: {326      readonly value: Compact<u128>;327      readonly beneficiary: MultiAddress;328    } & Struct;329    readonly isRejectProposal: boolean;330    readonly asRejectProposal: {331      readonly proposalId: Compact<u32>;332    } & Struct;333    readonly isApproveProposal: boolean;334    readonly asApproveProposal: {335      readonly proposalId: Compact<u32>;336    } & Struct;337    readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';338  }339340  /** @name PalletTreasuryEvent (74) */341  export interface PalletTreasuryEvent extends Enum {342    readonly isProposed: boolean;343    readonly asProposed: {344      readonly proposalIndex: u32;345    } & Struct;346    readonly isSpending: boolean;347    readonly asSpending: {348      readonly budgetRemaining: u128;349    } & Struct;350    readonly isAwarded: boolean;351    readonly asAwarded: {352      readonly proposalIndex: u32;353      readonly award: u128;354      readonly account: AccountId32;355    } & Struct;356    readonly isRejected: boolean;357    readonly asRejected: {358      readonly proposalIndex: u32;359      readonly slashed: u128;360    } & Struct;361    readonly isBurnt: boolean;362    readonly asBurnt: {363      readonly burntFunds: u128;364    } & Struct;365    readonly isRollover: boolean;366    readonly asRollover: {367      readonly rolloverBalance: u128;368    } & Struct;369    readonly isDeposit: boolean;370    readonly asDeposit: {371      readonly value: u128;372    } & Struct;373    readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';374  }375376  /** @name FrameSupportPalletId (77) */377  export interface FrameSupportPalletId extends U8aFixed {}378379  /** @name PalletTreasuryError (78) */380  export interface PalletTreasuryError extends Enum {381    readonly isInsufficientProposersBalance: boolean;382    readonly isInvalidIndex: boolean;383    readonly isTooManyApprovals: boolean;384    readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';385  }386387  /** @name PalletSudoCall (79) */388  export interface PalletSudoCall extends Enum {389    readonly isSudo: boolean;390    readonly asSudo: {391      readonly call: Call;392    } & Struct;393    readonly isSudoUncheckedWeight: boolean;394    readonly asSudoUncheckedWeight: {395      readonly call: Call;396      readonly weight: u64;397    } & Struct;398    readonly isSetKey: boolean;399    readonly asSetKey: {400      readonly new_: MultiAddress;401    } & Struct;402    readonly isSudoAs: boolean;403    readonly asSudoAs: {404      readonly who: MultiAddress;405      readonly call: Call;406    } & Struct;407    readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';408  }409410  /** @name FrameSystemCall (81) */411  export interface FrameSystemCall extends Enum {412    readonly isFillBlock: boolean;413    readonly asFillBlock: {414      readonly ratio: Perbill;415    } & Struct;416    readonly isRemark: boolean;417    readonly asRemark: {418      readonly remark: Bytes;419    } & Struct;420    readonly isSetHeapPages: boolean;421    readonly asSetHeapPages: {422      readonly pages: u64;423    } & Struct;424    readonly isSetCode: boolean;425    readonly asSetCode: {426      readonly code: Bytes;427    } & Struct;428    readonly isSetCodeWithoutChecks: boolean;429    readonly asSetCodeWithoutChecks: {430      readonly code: Bytes;431    } & Struct;432    readonly isSetStorage: boolean;433    readonly asSetStorage: {434      readonly items: Vec<ITuple<[Bytes, Bytes]>>;435    } & Struct;436    readonly isKillStorage: boolean;437    readonly asKillStorage: {438      readonly keys_: Vec<Bytes>;439    } & Struct;440    readonly isKillPrefix: boolean;441    readonly asKillPrefix: {442      readonly prefix: Bytes;443      readonly subkeys: u32;444    } & Struct;445    readonly isRemarkWithEvent: boolean;446    readonly asRemarkWithEvent: {447      readonly remark: Bytes;448    } & Struct;449    readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';450  }451452  /** @name OrmlVestingModuleCall (84) */453  export interface OrmlVestingModuleCall extends Enum {454    readonly isClaim: boolean;455    readonly isVestedTransfer: boolean;456    readonly asVestedTransfer: {457      readonly dest: MultiAddress;458      readonly schedule: OrmlVestingVestingSchedule;459    } & Struct;460    readonly isUpdateVestingSchedules: boolean;461    readonly asUpdateVestingSchedules: {462      readonly who: MultiAddress;463      readonly vestingSchedules: Vec<OrmlVestingVestingSchedule>;464    } & Struct;465    readonly isClaimFor: boolean;466    readonly asClaimFor: {467      readonly dest: MultiAddress;468    } & Struct;469    readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';470  }471472  /** @name OrmlVestingVestingSchedule (85) */473  export interface OrmlVestingVestingSchedule extends Struct {474    readonly start: u32;475    readonly period: u32;476    readonly periodCount: u32;477    readonly perPeriod: Compact<u128>;478  }479480  /** @name CumulusPalletXcmpQueueCall (87) */481  export interface CumulusPalletXcmpQueueCall extends Enum {482    readonly isServiceOverweight: boolean;483    readonly asServiceOverweight: {484      readonly index: u64;485      readonly weightLimit: u64;486    } & Struct;487    readonly isSuspendXcmExecution: boolean;488    readonly isResumeXcmExecution: boolean;489    readonly isUpdateSuspendThreshold: boolean;490    readonly asUpdateSuspendThreshold: {491      readonly new_: u32;492    } & Struct;493    readonly isUpdateDropThreshold: boolean;494    readonly asUpdateDropThreshold: {495      readonly new_: u32;496    } & Struct;497    readonly isUpdateResumeThreshold: boolean;498    readonly asUpdateResumeThreshold: {499      readonly new_: u32;500    } & Struct;501    readonly isUpdateThresholdWeight: boolean;502    readonly asUpdateThresholdWeight: {503      readonly new_: u64;504    } & Struct;505    readonly isUpdateWeightRestrictDecay: boolean;506    readonly asUpdateWeightRestrictDecay: {507      readonly new_: u64;508    } & Struct;509    readonly isUpdateXcmpMaxIndividualWeight: boolean;510    readonly asUpdateXcmpMaxIndividualWeight: {511      readonly new_: u64;512    } & Struct;513    readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';514  }515516  /** @name PalletXcmCall (88) */517  export interface PalletXcmCall extends Enum {518    readonly isSend: boolean;519    readonly asSend: {520      readonly dest: XcmVersionedMultiLocation;521      readonly message: XcmVersionedXcm;522    } & Struct;523    readonly isTeleportAssets: boolean;524    readonly asTeleportAssets: {525      readonly dest: XcmVersionedMultiLocation;526      readonly beneficiary: XcmVersionedMultiLocation;527      readonly assets: XcmVersionedMultiAssets;528      readonly feeAssetItem: u32;529    } & Struct;530    readonly isReserveTransferAssets: boolean;531    readonly asReserveTransferAssets: {532      readonly dest: XcmVersionedMultiLocation;533      readonly beneficiary: XcmVersionedMultiLocation;534      readonly assets: XcmVersionedMultiAssets;535      readonly feeAssetItem: u32;536    } & Struct;537    readonly isExecute: boolean;538    readonly asExecute: {539      readonly message: XcmVersionedXcm;540      readonly maxWeight: u64;541    } & Struct;542    readonly isForceXcmVersion: boolean;543    readonly asForceXcmVersion: {544      readonly location: XcmV1MultiLocation;545      readonly xcmVersion: u32;546    } & Struct;547    readonly isForceDefaultXcmVersion: boolean;548    readonly asForceDefaultXcmVersion: {549      readonly maybeXcmVersion: Option<u32>;550    } & Struct;551    readonly isForceSubscribeVersionNotify: boolean;552    readonly asForceSubscribeVersionNotify: {553      readonly location: XcmVersionedMultiLocation;554    } & Struct;555    readonly isForceUnsubscribeVersionNotify: boolean;556    readonly asForceUnsubscribeVersionNotify: {557      readonly location: XcmVersionedMultiLocation;558    } & Struct;559    readonly isLimitedReserveTransferAssets: boolean;560    readonly asLimitedReserveTransferAssets: {561      readonly dest: XcmVersionedMultiLocation;562      readonly beneficiary: XcmVersionedMultiLocation;563      readonly assets: XcmVersionedMultiAssets;564      readonly feeAssetItem: u32;565      readonly weightLimit: XcmV2WeightLimit;566    } & Struct;567    readonly isLimitedTeleportAssets: boolean;568    readonly asLimitedTeleportAssets: {569      readonly dest: XcmVersionedMultiLocation;570      readonly beneficiary: XcmVersionedMultiLocation;571      readonly assets: XcmVersionedMultiAssets;572      readonly feeAssetItem: u32;573      readonly weightLimit: XcmV2WeightLimit;574    } & Struct;575    readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';576  }577578  /** @name XcmVersionedMultiLocation (89) */579  export interface XcmVersionedMultiLocation extends Enum {580    readonly isV0: boolean;581    readonly asV0: XcmV0MultiLocation;582    readonly isV1: boolean;583    readonly asV1: XcmV1MultiLocation;584    readonly type: 'V0' | 'V1';585  }586587  /** @name XcmV0MultiLocation (90) */588  export interface XcmV0MultiLocation extends Enum {589    readonly isNull: boolean;590    readonly isX1: boolean;591    readonly asX1: XcmV0Junction;592    readonly isX2: boolean;593    readonly asX2: ITuple<[XcmV0Junction, XcmV0Junction]>;594    readonly isX3: boolean;595    readonly asX3: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction]>;596    readonly isX4: boolean;597    readonly asX4: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;598    readonly isX5: boolean;599    readonly asX5: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;600    readonly isX6: boolean;601    readonly asX6: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;602    readonly isX7: boolean;603    readonly asX7: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;604    readonly isX8: boolean;605    readonly asX8: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;606    readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';607  }608609  /** @name XcmV0Junction (91) */610  export interface XcmV0Junction extends Enum {611    readonly isParent: boolean;612    readonly isParachain: boolean;613    readonly asParachain: Compact<u32>;614    readonly isAccountId32: boolean;615    readonly asAccountId32: {616      readonly network: XcmV0JunctionNetworkId;617      readonly id: U8aFixed;618    } & Struct;619    readonly isAccountIndex64: boolean;620    readonly asAccountIndex64: {621      readonly network: XcmV0JunctionNetworkId;622      readonly index: Compact<u64>;623    } & Struct;624    readonly isAccountKey20: boolean;625    readonly asAccountKey20: {626      readonly network: XcmV0JunctionNetworkId;627      readonly key: U8aFixed;628    } & Struct;629    readonly isPalletInstance: boolean;630    readonly asPalletInstance: u8;631    readonly isGeneralIndex: boolean;632    readonly asGeneralIndex: Compact<u128>;633    readonly isGeneralKey: boolean;634    readonly asGeneralKey: Bytes;635    readonly isOnlyChild: boolean;636    readonly isPlurality: boolean;637    readonly asPlurality: {638      readonly id: XcmV0JunctionBodyId;639      readonly part: XcmV0JunctionBodyPart;640    } & Struct;641    readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';642  }643644  /** @name XcmV0JunctionNetworkId (92) */645  export interface XcmV0JunctionNetworkId extends Enum {646    readonly isAny: boolean;647    readonly isNamed: boolean;648    readonly asNamed: Bytes;649    readonly isPolkadot: boolean;650    readonly isKusama: boolean;651    readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';652  }653654  /** @name XcmV0JunctionBodyId (93) */655  export interface XcmV0JunctionBodyId extends Enum {656    readonly isUnit: boolean;657    readonly isNamed: boolean;658    readonly asNamed: Bytes;659    readonly isIndex: boolean;660    readonly asIndex: Compact<u32>;661    readonly isExecutive: boolean;662    readonly isTechnical: boolean;663    readonly isLegislative: boolean;664    readonly isJudicial: boolean;665    readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';666  }667668  /** @name XcmV0JunctionBodyPart (94) */669  export interface XcmV0JunctionBodyPart extends Enum {670    readonly isVoice: boolean;671    readonly isMembers: boolean;672    readonly asMembers: {673      readonly count: Compact<u32>;674    } & Struct;675    readonly isFraction: boolean;676    readonly asFraction: {677      readonly nom: Compact<u32>;678      readonly denom: Compact<u32>;679    } & Struct;680    readonly isAtLeastProportion: boolean;681    readonly asAtLeastProportion: {682      readonly nom: Compact<u32>;683      readonly denom: Compact<u32>;684    } & Struct;685    readonly isMoreThanProportion: boolean;686    readonly asMoreThanProportion: {687      readonly nom: Compact<u32>;688      readonly denom: Compact<u32>;689    } & Struct;690    readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';691  }692693  /** @name XcmV1MultiLocation (95) */694  export interface XcmV1MultiLocation extends Struct {695    readonly parents: u8;696    readonly interior: XcmV1MultilocationJunctions;697  }698699  /** @name XcmV1MultilocationJunctions (96) */700  export interface XcmV1MultilocationJunctions extends Enum {701    readonly isHere: boolean;702    readonly isX1: boolean;703    readonly asX1: XcmV1Junction;704    readonly isX2: boolean;705    readonly asX2: ITuple<[XcmV1Junction, XcmV1Junction]>;706    readonly isX3: boolean;707    readonly asX3: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction]>;708    readonly isX4: boolean;709    readonly asX4: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;710    readonly isX5: boolean;711    readonly asX5: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;712    readonly isX6: boolean;713    readonly asX6: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;714    readonly isX7: boolean;715    readonly asX7: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;716    readonly isX8: boolean;717    readonly asX8: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;718    readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';719  }720721  /** @name XcmV1Junction (97) */722  export interface XcmV1Junction extends Enum {723    readonly isParachain: boolean;724    readonly asParachain: Compact<u32>;725    readonly isAccountId32: boolean;726    readonly asAccountId32: {727      readonly network: XcmV0JunctionNetworkId;728      readonly id: U8aFixed;729    } & Struct;730    readonly isAccountIndex64: boolean;731    readonly asAccountIndex64: {732      readonly network: XcmV0JunctionNetworkId;733      readonly index: Compact<u64>;734    } & Struct;735    readonly isAccountKey20: boolean;736    readonly asAccountKey20: {737      readonly network: XcmV0JunctionNetworkId;738      readonly key: U8aFixed;739    } & Struct;740    readonly isPalletInstance: boolean;741    readonly asPalletInstance: u8;742    readonly isGeneralIndex: boolean;743    readonly asGeneralIndex: Compact<u128>;744    readonly isGeneralKey: boolean;745    readonly asGeneralKey: Bytes;746    readonly isOnlyChild: boolean;747    readonly isPlurality: boolean;748    readonly asPlurality: {749      readonly id: XcmV0JunctionBodyId;750      readonly part: XcmV0JunctionBodyPart;751    } & Struct;752    readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';753  }754755  /** @name XcmVersionedXcm (98) */756  export interface XcmVersionedXcm extends Enum {757    readonly isV0: boolean;758    readonly asV0: XcmV0Xcm;759    readonly isV1: boolean;760    readonly asV1: XcmV1Xcm;761    readonly isV2: boolean;762    readonly asV2: XcmV2Xcm;763    readonly type: 'V0' | 'V1' | 'V2';764  }765766  /** @name XcmV0Xcm (99) */767  export interface XcmV0Xcm extends Enum {768    readonly isWithdrawAsset: boolean;769    readonly asWithdrawAsset: {770      readonly assets: Vec<XcmV0MultiAsset>;771      readonly effects: Vec<XcmV0Order>;772    } & Struct;773    readonly isReserveAssetDeposit: boolean;774    readonly asReserveAssetDeposit: {775      readonly assets: Vec<XcmV0MultiAsset>;776      readonly effects: Vec<XcmV0Order>;777    } & Struct;778    readonly isTeleportAsset: boolean;779    readonly asTeleportAsset: {780      readonly assets: Vec<XcmV0MultiAsset>;781      readonly effects: Vec<XcmV0Order>;782    } & Struct;783    readonly isQueryResponse: boolean;784    readonly asQueryResponse: {785      readonly queryId: Compact<u64>;786      readonly response: XcmV0Response;787    } & Struct;788    readonly isTransferAsset: boolean;789    readonly asTransferAsset: {790      readonly assets: Vec<XcmV0MultiAsset>;791      readonly dest: XcmV0MultiLocation;792    } & Struct;793    readonly isTransferReserveAsset: boolean;794    readonly asTransferReserveAsset: {795      readonly assets: Vec<XcmV0MultiAsset>;796      readonly dest: XcmV0MultiLocation;797      readonly effects: Vec<XcmV0Order>;798    } & Struct;799    readonly isTransact: boolean;800    readonly asTransact: {801      readonly originType: XcmV0OriginKind;802      readonly requireWeightAtMost: u64;803      readonly call: XcmDoubleEncoded;804    } & Struct;805    readonly isHrmpNewChannelOpenRequest: boolean;806    readonly asHrmpNewChannelOpenRequest: {807      readonly sender: Compact<u32>;808      readonly maxMessageSize: Compact<u32>;809      readonly maxCapacity: Compact<u32>;810    } & Struct;811    readonly isHrmpChannelAccepted: boolean;812    readonly asHrmpChannelAccepted: {813      readonly recipient: Compact<u32>;814    } & Struct;815    readonly isHrmpChannelClosing: boolean;816    readonly asHrmpChannelClosing: {817      readonly initiator: Compact<u32>;818      readonly sender: Compact<u32>;819      readonly recipient: Compact<u32>;820    } & Struct;821    readonly isRelayedFrom: boolean;822    readonly asRelayedFrom: {823      readonly who: XcmV0MultiLocation;824      readonly message: XcmV0Xcm;825    } & Struct;826    readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';827  }828829  /** @name XcmV0MultiAsset (101) */830  export interface XcmV0MultiAsset extends Enum {831    readonly isNone: boolean;832    readonly isAll: boolean;833    readonly isAllFungible: boolean;834    readonly isAllNonFungible: boolean;835    readonly isAllAbstractFungible: boolean;836    readonly asAllAbstractFungible: {837      readonly id: Bytes;838    } & Struct;839    readonly isAllAbstractNonFungible: boolean;840    readonly asAllAbstractNonFungible: {841      readonly class: Bytes;842    } & Struct;843    readonly isAllConcreteFungible: boolean;844    readonly asAllConcreteFungible: {845      readonly id: XcmV0MultiLocation;846    } & Struct;847    readonly isAllConcreteNonFungible: boolean;848    readonly asAllConcreteNonFungible: {849      readonly class: XcmV0MultiLocation;850    } & Struct;851    readonly isAbstractFungible: boolean;852    readonly asAbstractFungible: {853      readonly id: Bytes;854      readonly amount: Compact<u128>;855    } & Struct;856    readonly isAbstractNonFungible: boolean;857    readonly asAbstractNonFungible: {858      readonly class: Bytes;859      readonly instance: XcmV1MultiassetAssetInstance;860    } & Struct;861    readonly isConcreteFungible: boolean;862    readonly asConcreteFungible: {863      readonly id: XcmV0MultiLocation;864      readonly amount: Compact<u128>;865    } & Struct;866    readonly isConcreteNonFungible: boolean;867    readonly asConcreteNonFungible: {868      readonly class: XcmV0MultiLocation;869      readonly instance: XcmV1MultiassetAssetInstance;870    } & Struct;871    readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';872  }873874  /** @name XcmV1MultiassetAssetInstance (102) */875  export interface XcmV1MultiassetAssetInstance extends Enum {876    readonly isUndefined: boolean;877    readonly isIndex: boolean;878    readonly asIndex: Compact<u128>;879    readonly isArray4: boolean;880    readonly asArray4: U8aFixed;881    readonly isArray8: boolean;882    readonly asArray8: U8aFixed;883    readonly isArray16: boolean;884    readonly asArray16: U8aFixed;885    readonly isArray32: boolean;886    readonly asArray32: U8aFixed;887    readonly isBlob: boolean;888    readonly asBlob: Bytes;889    readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';890  }891892  /** @name XcmV0Order (106) */893  export interface XcmV0Order extends Enum {894    readonly isNull: boolean;895    readonly isDepositAsset: boolean;896    readonly asDepositAsset: {897      readonly assets: Vec<XcmV0MultiAsset>;898      readonly dest: XcmV0MultiLocation;899    } & Struct;900    readonly isDepositReserveAsset: boolean;901    readonly asDepositReserveAsset: {902      readonly assets: Vec<XcmV0MultiAsset>;903      readonly dest: XcmV0MultiLocation;904      readonly effects: Vec<XcmV0Order>;905    } & Struct;906    readonly isExchangeAsset: boolean;907    readonly asExchangeAsset: {908      readonly give: Vec<XcmV0MultiAsset>;909      readonly receive: Vec<XcmV0MultiAsset>;910    } & Struct;911    readonly isInitiateReserveWithdraw: boolean;912    readonly asInitiateReserveWithdraw: {913      readonly assets: Vec<XcmV0MultiAsset>;914      readonly reserve: XcmV0MultiLocation;915      readonly effects: Vec<XcmV0Order>;916    } & Struct;917    readonly isInitiateTeleport: boolean;918    readonly asInitiateTeleport: {919      readonly assets: Vec<XcmV0MultiAsset>;920      readonly dest: XcmV0MultiLocation;921      readonly effects: Vec<XcmV0Order>;922    } & Struct;923    readonly isQueryHolding: boolean;924    readonly asQueryHolding: {925      readonly queryId: Compact<u64>;926      readonly dest: XcmV0MultiLocation;927      readonly assets: Vec<XcmV0MultiAsset>;928    } & Struct;929    readonly isBuyExecution: boolean;930    readonly asBuyExecution: {931      readonly fees: XcmV0MultiAsset;932      readonly weight: u64;933      readonly debt: u64;934      readonly haltOnError: bool;935      readonly xcm: Vec<XcmV0Xcm>;936    } & Struct;937    readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';938  }939940  /** @name XcmV0Response (108) */941  export interface XcmV0Response extends Enum {942    readonly isAssets: boolean;943    readonly asAssets: Vec<XcmV0MultiAsset>;944    readonly type: 'Assets';945  }946947  /** @name XcmV0OriginKind (109) */948  export interface XcmV0OriginKind extends Enum {949    readonly isNative: boolean;950    readonly isSovereignAccount: boolean;951    readonly isSuperuser: boolean;952    readonly isXcm: boolean;953    readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';954  }955956  /** @name XcmDoubleEncoded (110) */957  export interface XcmDoubleEncoded extends Struct {958    readonly encoded: Bytes;959  }960961  /** @name XcmV1Xcm (111) */962  export interface XcmV1Xcm extends Enum {963    readonly isWithdrawAsset: boolean;964    readonly asWithdrawAsset: {965      readonly assets: XcmV1MultiassetMultiAssets;966      readonly effects: Vec<XcmV1Order>;967    } & Struct;968    readonly isReserveAssetDeposited: boolean;969    readonly asReserveAssetDeposited: {970      readonly assets: XcmV1MultiassetMultiAssets;971      readonly effects: Vec<XcmV1Order>;972    } & Struct;973    readonly isReceiveTeleportedAsset: boolean;974    readonly asReceiveTeleportedAsset: {975      readonly assets: XcmV1MultiassetMultiAssets;976      readonly effects: Vec<XcmV1Order>;977    } & Struct;978    readonly isQueryResponse: boolean;979    readonly asQueryResponse: {980      readonly queryId: Compact<u64>;981      readonly response: XcmV1Response;982    } & Struct;983    readonly isTransferAsset: boolean;984    readonly asTransferAsset: {985      readonly assets: XcmV1MultiassetMultiAssets;986      readonly beneficiary: XcmV1MultiLocation;987    } & Struct;988    readonly isTransferReserveAsset: boolean;989    readonly asTransferReserveAsset: {990      readonly assets: XcmV1MultiassetMultiAssets;991      readonly dest: XcmV1MultiLocation;992      readonly effects: Vec<XcmV1Order>;993    } & Struct;994    readonly isTransact: boolean;995    readonly asTransact: {996      readonly originType: XcmV0OriginKind;997      readonly requireWeightAtMost: u64;998      readonly call: XcmDoubleEncoded;999    } & Struct;1000    readonly isHrmpNewChannelOpenRequest: boolean;1001    readonly asHrmpNewChannelOpenRequest: {1002      readonly sender: Compact<u32>;1003      readonly maxMessageSize: Compact<u32>;1004      readonly maxCapacity: Compact<u32>;1005    } & Struct;1006    readonly isHrmpChannelAccepted: boolean;1007    readonly asHrmpChannelAccepted: {1008      readonly recipient: Compact<u32>;1009    } & Struct;1010    readonly isHrmpChannelClosing: boolean;1011    readonly asHrmpChannelClosing: {1012      readonly initiator: Compact<u32>;1013      readonly sender: Compact<u32>;1014      readonly recipient: Compact<u32>;1015    } & Struct;1016    readonly isRelayedFrom: boolean;1017    readonly asRelayedFrom: {1018      readonly who: XcmV1MultilocationJunctions;1019      readonly message: XcmV1Xcm;1020    } & Struct;1021    readonly isSubscribeVersion: boolean;1022    readonly asSubscribeVersion: {1023      readonly queryId: Compact<u64>;1024      readonly maxResponseWeight: Compact<u64>;1025    } & Struct;1026    readonly isUnsubscribeVersion: boolean;1027    readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';1028  }10291030  /** @name XcmV1MultiassetMultiAssets (112) */1031  export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}10321033  /** @name XcmV1MultiAsset (114) */1034  export interface XcmV1MultiAsset extends Struct {1035    readonly id: XcmV1MultiassetAssetId;1036    readonly fun: XcmV1MultiassetFungibility;1037  }10381039  /** @name XcmV1MultiassetAssetId (115) */1040  export interface XcmV1MultiassetAssetId extends Enum {1041    readonly isConcrete: boolean;1042    readonly asConcrete: XcmV1MultiLocation;1043    readonly isAbstract: boolean;1044    readonly asAbstract: Bytes;1045    readonly type: 'Concrete' | 'Abstract';1046  }10471048  /** @name XcmV1MultiassetFungibility (116) */1049  export interface XcmV1MultiassetFungibility extends Enum {1050    readonly isFungible: boolean;1051    readonly asFungible: Compact<u128>;1052    readonly isNonFungible: boolean;1053    readonly asNonFungible: XcmV1MultiassetAssetInstance;1054    readonly type: 'Fungible' | 'NonFungible';1055  }10561057  /** @name XcmV1Order (118) */1058  export interface XcmV1Order extends Enum {1059    readonly isNoop: boolean;1060    readonly isDepositAsset: boolean;1061    readonly asDepositAsset: {1062      readonly assets: XcmV1MultiassetMultiAssetFilter;1063      readonly maxAssets: u32;1064      readonly beneficiary: XcmV1MultiLocation;1065    } & Struct;1066    readonly isDepositReserveAsset: boolean;1067    readonly asDepositReserveAsset: {1068      readonly assets: XcmV1MultiassetMultiAssetFilter;1069      readonly maxAssets: u32;1070      readonly dest: XcmV1MultiLocation;1071      readonly effects: Vec<XcmV1Order>;1072    } & Struct;1073    readonly isExchangeAsset: boolean;1074    readonly asExchangeAsset: {1075      readonly give: XcmV1MultiassetMultiAssetFilter;1076      readonly receive: XcmV1MultiassetMultiAssets;1077    } & Struct;1078    readonly isInitiateReserveWithdraw: boolean;1079    readonly asInitiateReserveWithdraw: {1080      readonly assets: XcmV1MultiassetMultiAssetFilter;1081      readonly reserve: XcmV1MultiLocation;1082      readonly effects: Vec<XcmV1Order>;1083    } & Struct;1084    readonly isInitiateTeleport: boolean;1085    readonly asInitiateTeleport: {1086      readonly assets: XcmV1MultiassetMultiAssetFilter;1087      readonly dest: XcmV1MultiLocation;1088      readonly effects: Vec<XcmV1Order>;1089    } & Struct;1090    readonly isQueryHolding: boolean;1091    readonly asQueryHolding: {1092      readonly queryId: Compact<u64>;1093      readonly dest: XcmV1MultiLocation;1094      readonly assets: XcmV1MultiassetMultiAssetFilter;1095    } & Struct;1096    readonly isBuyExecution: boolean;1097    readonly asBuyExecution: {1098      readonly fees: XcmV1MultiAsset;1099      readonly weight: u64;1100      readonly debt: u64;1101      readonly haltOnError: bool;1102      readonly instructions: Vec<XcmV1Xcm>;1103    } & Struct;1104    readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';1105  }11061107  /** @name XcmV1MultiassetMultiAssetFilter (119) */1108  export interface XcmV1MultiassetMultiAssetFilter extends Enum {1109    readonly isDefinite: boolean;1110    readonly asDefinite: XcmV1MultiassetMultiAssets;1111    readonly isWild: boolean;1112    readonly asWild: XcmV1MultiassetWildMultiAsset;1113    readonly type: 'Definite' | 'Wild';1114  }11151116  /** @name XcmV1MultiassetWildMultiAsset (120) */1117  export interface XcmV1MultiassetWildMultiAsset extends Enum {1118    readonly isAll: boolean;1119    readonly isAllOf: boolean;1120    readonly asAllOf: {1121      readonly id: XcmV1MultiassetAssetId;1122      readonly fun: XcmV1MultiassetWildFungibility;1123    } & Struct;1124    readonly type: 'All' | 'AllOf';1125  }11261127  /** @name XcmV1MultiassetWildFungibility (121) */1128  export interface XcmV1MultiassetWildFungibility extends Enum {1129    readonly isFungible: boolean;1130    readonly isNonFungible: boolean;1131    readonly type: 'Fungible' | 'NonFungible';1132  }11331134  /** @name XcmV1Response (123) */1135  export interface XcmV1Response extends Enum {1136    readonly isAssets: boolean;1137    readonly asAssets: XcmV1MultiassetMultiAssets;1138    readonly isVersion: boolean;1139    readonly asVersion: u32;1140    readonly type: 'Assets' | 'Version';1141  }11421143  /** @name XcmV2Xcm (124) */1144  export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}11451146  /** @name XcmV2Instruction (126) */1147  export interface XcmV2Instruction extends Enum {1148    readonly isWithdrawAsset: boolean;1149    readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;1150    readonly isReserveAssetDeposited: boolean;1151    readonly asReserveAssetDeposited: XcmV1MultiassetMultiAssets;1152    readonly isReceiveTeleportedAsset: boolean;1153    readonly asReceiveTeleportedAsset: XcmV1MultiassetMultiAssets;1154    readonly isQueryResponse: boolean;1155    readonly asQueryResponse: {1156      readonly queryId: Compact<u64>;1157      readonly response: XcmV2Response;1158      readonly maxWeight: Compact<u64>;1159    } & Struct;1160    readonly isTransferAsset: boolean;1161    readonly asTransferAsset: {1162      readonly assets: XcmV1MultiassetMultiAssets;1163      readonly beneficiary: XcmV1MultiLocation;1164    } & Struct;1165    readonly isTransferReserveAsset: boolean;1166    readonly asTransferReserveAsset: {1167      readonly assets: XcmV1MultiassetMultiAssets;1168      readonly dest: XcmV1MultiLocation;1169      readonly xcm: XcmV2Xcm;1170    } & Struct;1171    readonly isTransact: boolean;1172    readonly asTransact: {1173      readonly originType: XcmV0OriginKind;1174      readonly requireWeightAtMost: Compact<u64>;1175      readonly call: XcmDoubleEncoded;1176    } & Struct;1177    readonly isHrmpNewChannelOpenRequest: boolean;1178    readonly asHrmpNewChannelOpenRequest: {1179      readonly sender: Compact<u32>;1180      readonly maxMessageSize: Compact<u32>;1181      readonly maxCapacity: Compact<u32>;1182    } & Struct;1183    readonly isHrmpChannelAccepted: boolean;1184    readonly asHrmpChannelAccepted: {1185      readonly recipient: Compact<u32>;1186    } & Struct;1187    readonly isHrmpChannelClosing: boolean;1188    readonly asHrmpChannelClosing: {1189      readonly initiator: Compact<u32>;1190      readonly sender: Compact<u32>;1191      readonly recipient: Compact<u32>;1192    } & Struct;1193    readonly isClearOrigin: boolean;1194    readonly isDescendOrigin: boolean;1195    readonly asDescendOrigin: XcmV1MultilocationJunctions;1196    readonly isReportError: boolean;1197    readonly asReportError: {1198      readonly queryId: Compact<u64>;1199      readonly dest: XcmV1MultiLocation;1200      readonly maxResponseWeight: Compact<u64>;1201    } & Struct;1202    readonly isDepositAsset: boolean;1203    readonly asDepositAsset: {1204      readonly assets: XcmV1MultiassetMultiAssetFilter;1205      readonly maxAssets: Compact<u32>;1206      readonly beneficiary: XcmV1MultiLocation;1207    } & Struct;1208    readonly isDepositReserveAsset: boolean;1209    readonly asDepositReserveAsset: {1210      readonly assets: XcmV1MultiassetMultiAssetFilter;1211      readonly maxAssets: Compact<u32>;1212      readonly dest: XcmV1MultiLocation;1213      readonly xcm: XcmV2Xcm;1214    } & Struct;1215    readonly isExchangeAsset: boolean;1216    readonly asExchangeAsset: {1217      readonly give: XcmV1MultiassetMultiAssetFilter;1218      readonly receive: XcmV1MultiassetMultiAssets;1219    } & Struct;1220    readonly isInitiateReserveWithdraw: boolean;1221    readonly asInitiateReserveWithdraw: {1222      readonly assets: XcmV1MultiassetMultiAssetFilter;1223      readonly reserve: XcmV1MultiLocation;1224      readonly xcm: XcmV2Xcm;1225    } & Struct;1226    readonly isInitiateTeleport: boolean;1227    readonly asInitiateTeleport: {1228      readonly assets: XcmV1MultiassetMultiAssetFilter;1229      readonly dest: XcmV1MultiLocation;1230      readonly xcm: XcmV2Xcm;1231    } & Struct;1232    readonly isQueryHolding: boolean;1233    readonly asQueryHolding: {1234      readonly queryId: Compact<u64>;1235      readonly dest: XcmV1MultiLocation;1236      readonly assets: XcmV1MultiassetMultiAssetFilter;1237      readonly maxResponseWeight: Compact<u64>;1238    } & Struct;1239    readonly isBuyExecution: boolean;1240    readonly asBuyExecution: {1241      readonly fees: XcmV1MultiAsset;1242      readonly weightLimit: XcmV2WeightLimit;1243    } & Struct;1244    readonly isRefundSurplus: boolean;1245    readonly isSetErrorHandler: boolean;1246    readonly asSetErrorHandler: XcmV2Xcm;1247    readonly isSetAppendix: boolean;1248    readonly asSetAppendix: XcmV2Xcm;1249    readonly isClearError: boolean;1250    readonly isClaimAsset: boolean;1251    readonly asClaimAsset: {1252      readonly assets: XcmV1MultiassetMultiAssets;1253      readonly ticket: XcmV1MultiLocation;1254    } & Struct;1255    readonly isTrap: boolean;1256    readonly asTrap: Compact<u64>;1257    readonly isSubscribeVersion: boolean;1258    readonly asSubscribeVersion: {1259      readonly queryId: Compact<u64>;1260      readonly maxResponseWeight: Compact<u64>;1261    } & Struct;1262    readonly isUnsubscribeVersion: boolean;1263    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';1264  }12651266  /** @name XcmV2Response (127) */1267  export interface XcmV2Response extends Enum {1268    readonly isNull: boolean;1269    readonly isAssets: boolean;1270    readonly asAssets: XcmV1MultiassetMultiAssets;1271    readonly isExecutionResult: boolean;1272    readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;1273    readonly isVersion: boolean;1274    readonly asVersion: u32;1275    readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';1276  }12771278  /** @name XcmV2TraitsError (130) */1279  export interface XcmV2TraitsError extends Enum {1280    readonly isOverflow: boolean;1281    readonly isUnimplemented: boolean;1282    readonly isUntrustedReserveLocation: boolean;1283    readonly isUntrustedTeleportLocation: boolean;1284    readonly isMultiLocationFull: boolean;1285    readonly isMultiLocationNotInvertible: boolean;1286    readonly isBadOrigin: boolean;1287    readonly isInvalidLocation: boolean;1288    readonly isAssetNotFound: boolean;1289    readonly isFailedToTransactAsset: boolean;1290    readonly isNotWithdrawable: boolean;1291    readonly isLocationCannotHold: boolean;1292    readonly isExceedsMaxMessageSize: boolean;1293    readonly isDestinationUnsupported: boolean;1294    readonly isTransport: boolean;1295    readonly isUnroutable: boolean;1296    readonly isUnknownClaim: boolean;1297    readonly isFailedToDecode: boolean;1298    readonly isMaxWeightInvalid: boolean;1299    readonly isNotHoldingFees: boolean;1300    readonly isTooExpensive: boolean;1301    readonly isTrap: boolean;1302    readonly asTrap: u64;1303    readonly isUnhandledXcmVersion: boolean;1304    readonly isWeightLimitReached: boolean;1305    readonly asWeightLimitReached: u64;1306    readonly isBarrier: boolean;1307    readonly isWeightNotComputable: boolean;1308    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';1309  }13101311  /** @name XcmV2WeightLimit (131) */1312  export interface XcmV2WeightLimit extends Enum {1313    readonly isUnlimited: boolean;1314    readonly isLimited: boolean;1315    readonly asLimited: Compact<u64>;1316    readonly type: 'Unlimited' | 'Limited';1317  }13181319  /** @name XcmVersionedMultiAssets (132) */1320  export interface XcmVersionedMultiAssets extends Enum {1321    readonly isV0: boolean;1322    readonly asV0: Vec<XcmV0MultiAsset>;1323    readonly isV1: boolean;1324    readonly asV1: XcmV1MultiassetMultiAssets;1325    readonly type: 'V0' | 'V1';1326  }13271328  /** @name CumulusPalletXcmCall (147) */1329  export type CumulusPalletXcmCall = Null;13301331  /** @name CumulusPalletDmpQueueCall (148) */1332  export interface CumulusPalletDmpQueueCall extends Enum {1333    readonly isServiceOverweight: boolean;1334    readonly asServiceOverweight: {1335      readonly index: u64;1336      readonly weightLimit: u64;1337    } & Struct;1338    readonly type: 'ServiceOverweight';1339  }13401341  /** @name PalletInflationCall (149) */1342  export interface PalletInflationCall extends Enum {1343    readonly isStartInflation: boolean;1344    readonly asStartInflation: {1345      readonly inflationStartRelayBlock: u32;1346    } & Struct;1347    readonly type: 'StartInflation';1348  }13491350  /** @name PalletUniqueCall (150) */1351  export interface PalletUniqueCall extends Enum {1352    readonly isCreateCollection: boolean;1353    readonly asCreateCollection: {1354      readonly collectionName: Vec<u16>;1355      readonly collectionDescription: Vec<u16>;1356      readonly tokenPrefix: Bytes;1357      readonly mode: UpDataStructsCollectionMode;1358    } & Struct;1359    readonly isCreateCollectionEx: boolean;1360    readonly asCreateCollectionEx: {1361      readonly data: UpDataStructsCreateCollectionData;1362    } & Struct;1363    readonly isDestroyCollection: boolean;1364    readonly asDestroyCollection: {1365      readonly collectionId: u32;1366    } & Struct;1367    readonly isAddToAllowList: boolean;1368    readonly asAddToAllowList: {1369      readonly collectionId: u32;1370      readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1371    } & Struct;1372    readonly isRemoveFromAllowList: boolean;1373    readonly asRemoveFromAllowList: {1374      readonly collectionId: u32;1375      readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1376    } & Struct;1377    readonly isSetPublicAccessMode: boolean;1378    readonly asSetPublicAccessMode: {1379      readonly collectionId: u32;1380      readonly mode: UpDataStructsAccessMode;1381    } & Struct;1382    readonly isSetMintPermission: boolean;1383    readonly asSetMintPermission: {1384      readonly collectionId: u32;1385      readonly mintPermission: bool;1386    } & Struct;1387    readonly isChangeCollectionOwner: boolean;1388    readonly asChangeCollectionOwner: {1389      readonly collectionId: u32;1390      readonly newOwner: AccountId32;1391    } & Struct;1392    readonly isAddCollectionAdmin: boolean;1393    readonly asAddCollectionAdmin: {1394      readonly collectionId: u32;1395      readonly newAdminId: PalletEvmAccountBasicCrossAccountIdRepr;1396    } & Struct;1397    readonly isRemoveCollectionAdmin: boolean;1398    readonly asRemoveCollectionAdmin: {1399      readonly collectionId: u32;1400      readonly accountId: PalletEvmAccountBasicCrossAccountIdRepr;1401    } & Struct;1402    readonly isSetCollectionSponsor: boolean;1403    readonly asSetCollectionSponsor: {1404      readonly collectionId: u32;1405      readonly newSponsor: AccountId32;1406    } & Struct;1407    readonly isConfirmSponsorship: boolean;1408    readonly asConfirmSponsorship: {1409      readonly collectionId: u32;1410    } & Struct;1411    readonly isRemoveCollectionSponsor: boolean;1412    readonly asRemoveCollectionSponsor: {1413      readonly collectionId: u32;1414    } & Struct;1415    readonly isCreateItem: boolean;1416    readonly asCreateItem: {1417      readonly collectionId: u32;1418      readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1419      readonly data: UpDataStructsCreateItemData;1420    } & Struct;1421    readonly isCreateMultipleItems: boolean;1422    readonly asCreateMultipleItems: {1423      readonly collectionId: u32;1424      readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1425      readonly itemsData: Vec<UpDataStructsCreateItemData>;1426    } & Struct;1427    readonly isCreateMultipleItemsEx: boolean;1428    readonly asCreateMultipleItemsEx: {1429      readonly collectionId: u32;1430      readonly data: UpDataStructsCreateItemExData;1431    } & Struct;1432    readonly isSetTransfersEnabledFlag: boolean;1433    readonly asSetTransfersEnabledFlag: {1434      readonly collectionId: u32;1435      readonly value: bool;1436    } & Struct;1437    readonly isBurnItem: boolean;1438    readonly asBurnItem: {1439      readonly collectionId: u32;1440      readonly itemId: u32;1441      readonly value: u128;1442    } & Struct;1443    readonly isBurnFrom: boolean;1444    readonly asBurnFrom: {1445      readonly collectionId: u32;1446      readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1447      readonly itemId: u32;1448      readonly value: u128;1449    } & Struct;1450    readonly isTransfer: boolean;1451    readonly asTransfer: {1452      readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1453      readonly collectionId: u32;1454      readonly itemId: u32;1455      readonly value: u128;1456    } & Struct;1457    readonly isApprove: boolean;1458    readonly asApprove: {1459      readonly spender: PalletEvmAccountBasicCrossAccountIdRepr;1460      readonly collectionId: u32;1461      readonly itemId: u32;1462      readonly amount: u128;1463    } & Struct;1464    readonly isTransferFrom: boolean;1465    readonly asTransferFrom: {1466      readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1467      readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1468      readonly collectionId: u32;1469      readonly itemId: u32;1470      readonly value: u128;1471    } & Struct;1472    readonly isSetVariableMetaData: boolean;1473    readonly asSetVariableMetaData: {1474      readonly collectionId: u32;1475      readonly itemId: u32;1476      readonly data: Bytes;1477    } & Struct;1478    readonly isSetMetaUpdatePermissionFlag: boolean;1479    readonly asSetMetaUpdatePermissionFlag: {1480      readonly collectionId: u32;1481      readonly value: UpDataStructsMetaUpdatePermission;1482    } & Struct;1483    readonly isSetSchemaVersion: boolean;1484    readonly asSetSchemaVersion: {1485      readonly collectionId: u32;1486      readonly version: UpDataStructsSchemaVersion;1487    } & Struct;1488    readonly isSetOffchainSchema: boolean;1489    readonly asSetOffchainSchema: {1490      readonly collectionId: u32;1491      readonly schema: Bytes;1492    } & Struct;1493    readonly isSetConstOnChainSchema: boolean;1494    readonly asSetConstOnChainSchema: {1495      readonly collectionId: u32;1496      readonly schema: Bytes;1497    } & Struct;1498    readonly isSetVariableOnChainSchema: boolean;1499    readonly asSetVariableOnChainSchema: {1500      readonly collectionId: u32;1501      readonly schema: Bytes;1502    } & Struct;1503    readonly isSetCollectionLimits: boolean;1504    readonly asSetCollectionLimits: {1505      readonly collectionId: u32;1506      readonly newLimit: UpDataStructsCollectionLimits;1507    } & Struct;1508    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';1509  }15101511  /** @name UpDataStructsCollectionMode (156) */1512  export interface UpDataStructsCollectionMode extends Enum {1513    readonly isNft: boolean;1514    readonly isFungible: boolean;1515    readonly asFungible: u8;1516    readonly isReFungible: boolean;1517    readonly type: 'Nft' | 'Fungible' | 'ReFungible';1518  }15191520  /** @name UpDataStructsCreateCollectionData (157) */1521  export interface UpDataStructsCreateCollectionData extends Struct {1522    readonly mode: UpDataStructsCollectionMode;1523    readonly access: Option<UpDataStructsAccessMode>;1524    readonly name: Vec<u16>;1525    readonly description: Vec<u16>;1526    readonly tokenPrefix: Bytes;1527    readonly offchainSchema: Bytes;1528    readonly schemaVersion: Option<UpDataStructsSchemaVersion>;1529    readonly pendingSponsor: Option<AccountId32>;1530    readonly limits: Option<UpDataStructsCollectionLimits>;1531    readonly variableOnChainSchema: Bytes;1532    readonly constOnChainSchema: Bytes;1533    readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;1534  }15351536  /** @name UpDataStructsAccessMode (159) */1537  export interface UpDataStructsAccessMode extends Enum {1538    readonly isNormal: boolean;1539    readonly isAllowList: boolean;1540    readonly type: 'Normal' | 'AllowList';1541  }15421543  /** @name UpDataStructsSchemaVersion (162) */1544  export interface UpDataStructsSchemaVersion extends Enum {1545    readonly isImageURL: boolean;1546    readonly isUnique: boolean;1547    readonly type: 'ImageURL' | 'Unique';1548  }15491550  /** @name UpDataStructsCollectionLimits (165) */1551  export interface UpDataStructsCollectionLimits extends Struct {1552    readonly accountTokenOwnershipLimit: Option<u32>;1553    readonly sponsoredDataSize: Option<u32>;1554    readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;1555    readonly tokenLimit: Option<u32>;1556    readonly sponsorTransferTimeout: Option<u32>;1557    readonly sponsorApproveTimeout: Option<u32>;1558    readonly ownerCanTransfer: Option<bool>;1559    readonly ownerCanDestroy: Option<bool>;1560    readonly transfersEnabled: Option<bool>;1561  }15621563  /** @name UpDataStructsSponsoringRateLimit (167) */1564  export interface UpDataStructsSponsoringRateLimit extends Enum {1565    readonly isSponsoringDisabled: boolean;1566    readonly isBlocks: boolean;1567    readonly asBlocks: u32;1568    readonly type: 'SponsoringDisabled' | 'Blocks';1569  }15701571  /** @name UpDataStructsMetaUpdatePermission (171) */1572  export interface UpDataStructsMetaUpdatePermission extends Enum {1573    readonly isItemOwner: boolean;1574    readonly isAdmin: boolean;1575    readonly isNone: boolean;1576    readonly type: 'ItemOwner' | 'Admin' | 'None';1577  }15781579  /** @name PalletEvmAccountBasicCrossAccountIdRepr (173) */1580  export interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum {1581    readonly isSubstrate: boolean;1582    readonly asSubstrate: AccountId32;1583    readonly isEthereum: boolean;1584    readonly asEthereum: H160;1585    readonly type: 'Substrate' | 'Ethereum';1586  }15871588  /** @name UpDataStructsCreateItemData (175) */1589  export interface UpDataStructsCreateItemData extends Enum {1590    readonly isNft: boolean;1591    readonly asNft: UpDataStructsCreateNftData;1592    readonly isFungible: boolean;1593    readonly asFungible: UpDataStructsCreateFungibleData;1594    readonly isReFungible: boolean;1595    readonly asReFungible: UpDataStructsCreateReFungibleData;1596    readonly type: 'Nft' | 'Fungible' | 'ReFungible';1597  }15981599  /** @name UpDataStructsCreateNftData (176) */1600  export interface UpDataStructsCreateNftData extends Struct {1601    readonly constData: Bytes;1602    readonly variableData: Bytes;1603  }16041605  /** @name UpDataStructsCreateFungibleData (178) */1606  export interface UpDataStructsCreateFungibleData extends Struct {1607    readonly value: u128;1608  }16091610  /** @name UpDataStructsCreateReFungibleData (179) */1611  export interface UpDataStructsCreateReFungibleData extends Struct {1612    readonly constData: Bytes;1613    readonly variableData: Bytes;1614    readonly pieces: u128;1615  }16161617  /** @name UpDataStructsCreateItemExData (181) */1618  export interface UpDataStructsCreateItemExData extends Enum {1619    readonly isNft: boolean;1620    readonly asNft: Vec<UpDataStructsCreateNftExData>;1621    readonly isFungible: boolean;1622    readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;1623    readonly isRefungibleMultipleItems: boolean;1624    readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;1625    readonly isRefungibleMultipleOwners: boolean;1626    readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;1627    readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1628  }16291630  /** @name UpDataStructsCreateNftExData (183) */1631  export interface UpDataStructsCreateNftExData extends Struct {1632    readonly constData: Bytes;1633    readonly variableData: Bytes;1634    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1635  }16361637  /** @name UpDataStructsCreateRefungibleExData (190) */1638  export interface UpDataStructsCreateRefungibleExData extends Struct {1639    readonly constData: Bytes;1640    readonly variableData: Bytes;1641    readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;1642  }16431644  /** @name PalletTemplateTransactionPaymentCall (193) */1645  export type PalletTemplateTransactionPaymentCall = Null;16461647  /** @name PalletEvmCall (194) */1648  export interface PalletEvmCall extends Enum {1649    readonly isWithdraw: boolean;1650    readonly asWithdraw: {1651      readonly address: H160;1652      readonly value: u128;1653    } & Struct;1654    readonly isCall: boolean;1655    readonly asCall: {1656      readonly source: H160;1657      readonly target: H160;1658      readonly input: Bytes;1659      readonly value: U256;1660      readonly gasLimit: u64;1661      readonly maxFeePerGas: U256;1662      readonly maxPriorityFeePerGas: Option<U256>;1663      readonly nonce: Option<U256>;1664      readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;1665    } & Struct;1666    readonly isCreate: boolean;1667    readonly asCreate: {1668      readonly source: H160;1669      readonly init: Bytes;1670      readonly value: U256;1671      readonly gasLimit: u64;1672      readonly maxFeePerGas: U256;1673      readonly maxPriorityFeePerGas: Option<U256>;1674      readonly nonce: Option<U256>;1675      readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;1676    } & Struct;1677    readonly isCreate2: boolean;1678    readonly asCreate2: {1679      readonly source: H160;1680      readonly init: Bytes;1681      readonly salt: H256;1682      readonly value: U256;1683      readonly gasLimit: u64;1684      readonly maxFeePerGas: U256;1685      readonly maxPriorityFeePerGas: Option<U256>;1686      readonly nonce: Option<U256>;1687      readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;1688    } & Struct;1689    readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';1690  }16911692  /** @name PalletEthereumCall (200) */1693  export interface PalletEthereumCall extends Enum {1694    readonly isTransact: boolean;1695    readonly asTransact: {1696      readonly transaction: EthereumTransactionTransactionV2;1697    } & Struct;1698    readonly type: 'Transact';1699  }17001701  /** @name EthereumTransactionTransactionV2 (201) */1702  export interface EthereumTransactionTransactionV2 extends Enum {1703    readonly isLegacy: boolean;1704    readonly asLegacy: EthereumTransactionLegacyTransaction;1705    readonly isEip2930: boolean;1706    readonly asEip2930: EthereumTransactionEip2930Transaction;1707    readonly isEip1559: boolean;1708    readonly asEip1559: EthereumTransactionEip1559Transaction;1709    readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';1710  }17111712  /** @name EthereumTransactionLegacyTransaction (202) */1713  export interface EthereumTransactionLegacyTransaction extends Struct {1714    readonly nonce: U256;1715    readonly gasPrice: U256;1716    readonly gasLimit: U256;1717    readonly action: EthereumTransactionTransactionAction;1718    readonly value: U256;1719    readonly input: Bytes;1720    readonly signature: EthereumTransactionTransactionSignature;1721  }17221723  /** @name EthereumTransactionTransactionAction (203) */1724  export interface EthereumTransactionTransactionAction extends Enum {1725    readonly isCall: boolean;1726    readonly asCall: H160;1727    readonly isCreate: boolean;1728    readonly type: 'Call' | 'Create';1729  }17301731  /** @name EthereumTransactionTransactionSignature (204) */1732  export interface EthereumTransactionTransactionSignature extends Struct {1733    readonly v: u64;1734    readonly r: H256;1735    readonly s: H256;1736  }17371738  /** @name EthereumTransactionEip2930Transaction (206) */1739  export interface EthereumTransactionEip2930Transaction extends Struct {1740    readonly chainId: u64;1741    readonly nonce: U256;1742    readonly gasPrice: U256;1743    readonly gasLimit: U256;1744    readonly action: EthereumTransactionTransactionAction;1745    readonly value: U256;1746    readonly input: Bytes;1747    readonly accessList: Vec<EthereumTransactionAccessListItem>;1748    readonly oddYParity: bool;1749    readonly r: H256;1750    readonly s: H256;1751  }17521753  /** @name EthereumTransactionAccessListItem (208) */1754  export interface EthereumTransactionAccessListItem extends Struct {1755    readonly address: H160;1756    readonly storageKeys: Vec<H256>;1757  }17581759  /** @name EthereumTransactionEip1559Transaction (209) */1760  export interface EthereumTransactionEip1559Transaction extends Struct {1761    readonly chainId: u64;1762    readonly nonce: U256;1763    readonly maxPriorityFeePerGas: U256;1764    readonly maxFeePerGas: U256;1765    readonly gasLimit: U256;1766    readonly action: EthereumTransactionTransactionAction;1767    readonly value: U256;1768    readonly input: Bytes;1769    readonly accessList: Vec<EthereumTransactionAccessListItem>;1770    readonly oddYParity: bool;1771    readonly r: H256;1772    readonly s: H256;1773  }17741775  /** @name PalletEvmMigrationCall (210) */1776  export interface PalletEvmMigrationCall extends Enum {1777    readonly isBegin: boolean;1778    readonly asBegin: {1779      readonly address: H160;1780    } & Struct;1781    readonly isSetData: boolean;1782    readonly asSetData: {1783      readonly address: H160;1784      readonly data: Vec<ITuple<[H256, H256]>>;1785    } & Struct;1786    readonly isFinish: boolean;1787    readonly asFinish: {1788      readonly address: H160;1789      readonly code: Bytes;1790    } & Struct;1791    readonly type: 'Begin' | 'SetData' | 'Finish';1792  }17931794  /** @name PalletSudoEvent (213) */1795  export interface PalletSudoEvent extends Enum {1796    readonly isSudid: boolean;1797    readonly asSudid: {1798      readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1799    } & Struct;1800    readonly isKeyChanged: boolean;1801    readonly asKeyChanged: {1802      readonly oldSudoer: Option<AccountId32>;1803    } & Struct;1804    readonly isSudoAsDone: boolean;1805    readonly asSudoAsDone: {1806      readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1807    } & Struct;1808    readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';1809  }18101811  /** @name SpRuntimeDispatchError (215) */1812  export interface SpRuntimeDispatchError extends Enum {1813    readonly isOther: boolean;1814    readonly isCannotLookup: boolean;1815    readonly isBadOrigin: boolean;1816    readonly isModule: boolean;1817    readonly asModule: SpRuntimeModuleError;1818    readonly isConsumerRemaining: boolean;1819    readonly isNoProviders: boolean;1820    readonly isTooManyConsumers: boolean;1821    readonly isToken: boolean;1822    readonly asToken: SpRuntimeTokenError;1823    readonly isArithmetic: boolean;1824    readonly asArithmetic: SpRuntimeArithmeticError;1825    readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';1826  }18271828  /** @name SpRuntimeModuleError (216) */1829  export interface SpRuntimeModuleError extends Struct {1830    readonly index: u8;1831    readonly error: u8;1832  }18331834  /** @name SpRuntimeTokenError (217) */1835  export interface SpRuntimeTokenError extends Enum {1836    readonly isNoFunds: boolean;1837    readonly isWouldDie: boolean;1838    readonly isBelowMinimum: boolean;1839    readonly isCannotCreate: boolean;1840    readonly isUnknownAsset: boolean;1841    readonly isFrozen: boolean;1842    readonly isUnsupported: boolean;1843    readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';1844  }18451846  /** @name SpRuntimeArithmeticError (218) */1847  export interface SpRuntimeArithmeticError extends Enum {1848    readonly isUnderflow: boolean;1849    readonly isOverflow: boolean;1850    readonly isDivisionByZero: boolean;1851    readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';1852  }18531854  /** @name PalletSudoError (219) */1855  export interface PalletSudoError extends Enum {1856    readonly isRequireSudo: boolean;1857    readonly type: 'RequireSudo';1858  }18591860  /** @name FrameSystemAccountInfo (220) */1861  export interface FrameSystemAccountInfo extends Struct {1862    readonly nonce: u32;1863    readonly consumers: u32;1864    readonly providers: u32;1865    readonly sufficients: u32;1866    readonly data: PalletBalancesAccountData;1867  }18681869  /** @name FrameSupportWeightsPerDispatchClassU64 (221) */1870  export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {1871    readonly normal: u64;1872    readonly operational: u64;1873    readonly mandatory: u64;1874  }18751876  /** @name SpRuntimeDigest (222) */1877  export interface SpRuntimeDigest extends Struct {1878    readonly logs: Vec<SpRuntimeDigestDigestItem>;1879  }18801881  /** @name SpRuntimeDigestDigestItem (224) */1882  export interface SpRuntimeDigestDigestItem extends Enum {1883    readonly isOther: boolean;1884    readonly asOther: Bytes;1885    readonly isConsensus: boolean;1886    readonly asConsensus: ITuple<[U8aFixed, Bytes]>;1887    readonly isSeal: boolean;1888    readonly asSeal: ITuple<[U8aFixed, Bytes]>;1889    readonly isPreRuntime: boolean;1890    readonly asPreRuntime: ITuple<[U8aFixed, Bytes]>;1891    readonly isRuntimeEnvironmentUpdated: boolean;1892    readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';1893  }18941895  /** @name FrameSystemEventRecord (226) */1896  export interface FrameSystemEventRecord extends Struct {1897    readonly phase: FrameSystemPhase;1898    readonly event: Event;1899    readonly topics: Vec<H256>;1900  }19011902  /** @name FrameSystemEvent (228) */1903  export interface FrameSystemEvent extends Enum {1904    readonly isExtrinsicSuccess: boolean;1905    readonly asExtrinsicSuccess: {1906      readonly dispatchInfo: FrameSupportWeightsDispatchInfo;1907    } & Struct;1908    readonly isExtrinsicFailed: boolean;1909    readonly asExtrinsicFailed: {1910      readonly dispatchError: SpRuntimeDispatchError;1911      readonly dispatchInfo: FrameSupportWeightsDispatchInfo;1912    } & Struct;1913    readonly isCodeUpdated: boolean;1914    readonly isNewAccount: boolean;1915    readonly asNewAccount: {1916      readonly account: AccountId32;1917    } & Struct;1918    readonly isKilledAccount: boolean;1919    readonly asKilledAccount: {1920      readonly account: AccountId32;1921    } & Struct;1922    readonly isRemarked: boolean;1923    readonly asRemarked: {1924      readonly sender: AccountId32;1925      readonly hash_: H256;1926    } & Struct;1927    readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';1928  }19291930  /** @name FrameSupportWeightsDispatchInfo (229) */1931  export interface FrameSupportWeightsDispatchInfo extends Struct {1932    readonly weight: u64;1933    readonly class: FrameSupportWeightsDispatchClass;1934    readonly paysFee: FrameSupportWeightsPays;1935  }19361937  /** @name FrameSupportWeightsDispatchClass (230) */1938  export interface FrameSupportWeightsDispatchClass extends Enum {1939    readonly isNormal: boolean;1940    readonly isOperational: boolean;1941    readonly isMandatory: boolean;1942    readonly type: 'Normal' | 'Operational' | 'Mandatory';1943  }19441945  /** @name FrameSupportWeightsPays (231) */1946  export interface FrameSupportWeightsPays extends Enum {1947    readonly isYes: boolean;1948    readonly isNo: boolean;1949    readonly type: 'Yes' | 'No';1950  }19511952  /** @name OrmlVestingModuleEvent (232) */1953  export interface OrmlVestingModuleEvent extends Enum {1954    readonly isVestingScheduleAdded: boolean;1955    readonly asVestingScheduleAdded: {1956      readonly from: AccountId32;1957      readonly to: AccountId32;1958      readonly vestingSchedule: OrmlVestingVestingSchedule;1959    } & Struct;1960    readonly isClaimed: boolean;1961    readonly asClaimed: {1962      readonly who: AccountId32;1963      readonly amount: u128;1964    } & Struct;1965    readonly isVestingSchedulesUpdated: boolean;1966    readonly asVestingSchedulesUpdated: {1967      readonly who: AccountId32;1968    } & Struct;1969    readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';1970  }19711972  /** @name CumulusPalletXcmpQueueEvent (233) */1973  export interface CumulusPalletXcmpQueueEvent extends Enum {1974    readonly isSuccess: boolean;1975    readonly asSuccess: Option<H256>;1976    readonly isFail: boolean;1977    readonly asFail: ITuple<[Option<H256>, XcmV2TraitsError]>;1978    readonly isBadVersion: boolean;1979    readonly asBadVersion: Option<H256>;1980    readonly isBadFormat: boolean;1981    readonly asBadFormat: Option<H256>;1982    readonly isUpwardMessageSent: boolean;1983    readonly asUpwardMessageSent: Option<H256>;1984    readonly isXcmpMessageSent: boolean;1985    readonly asXcmpMessageSent: Option<H256>;1986    readonly isOverweightEnqueued: boolean;1987    readonly asOverweightEnqueued: ITuple<[u32, u32, u64, u64]>;1988    readonly isOverweightServiced: boolean;1989    readonly asOverweightServiced: ITuple<[u64, u64]>;1990    readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';1991  }19921993  /** @name PalletXcmEvent (234) */1994  export interface PalletXcmEvent extends Enum {1995    readonly isAttempted: boolean;1996    readonly asAttempted: XcmV2TraitsOutcome;1997    readonly isSent: boolean;1998    readonly asSent: ITuple<[XcmV1MultiLocation, XcmV1MultiLocation, XcmV2Xcm]>;1999    readonly isUnexpectedResponse: boolean;2000    readonly asUnexpectedResponse: ITuple<[XcmV1MultiLocation, u64]>;2001    readonly isResponseReady: boolean;2002    readonly asResponseReady: ITuple<[u64, XcmV2Response]>;2003    readonly isNotified: boolean;2004    readonly asNotified: ITuple<[u64, u8, u8]>;2005    readonly isNotifyOverweight: boolean;2006    readonly asNotifyOverweight: ITuple<[u64, u8, u8, u64, u64]>;2007    readonly isNotifyDispatchError: boolean;2008    readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;2009    readonly isNotifyDecodeFailed: boolean;2010    readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;2011    readonly isInvalidResponder: boolean;2012    readonly asInvalidResponder: ITuple<[XcmV1MultiLocation, u64, Option<XcmV1MultiLocation>]>;2013    readonly isInvalidResponderVersion: boolean;2014    readonly asInvalidResponderVersion: ITuple<[XcmV1MultiLocation, u64]>;2015    readonly isResponseTaken: boolean;2016    readonly asResponseTaken: u64;2017    readonly isAssetsTrapped: boolean;2018    readonly asAssetsTrapped: ITuple<[H256, XcmV1MultiLocation, XcmVersionedMultiAssets]>;2019    readonly isVersionChangeNotified: boolean;2020    readonly asVersionChangeNotified: ITuple<[XcmV1MultiLocation, u32]>;2021    readonly isSupportedVersionChanged: boolean;2022    readonly asSupportedVersionChanged: ITuple<[XcmV1MultiLocation, u32]>;2023    readonly isNotifyTargetSendFail: boolean;2024    readonly asNotifyTargetSendFail: ITuple<[XcmV1MultiLocation, u64, XcmV2TraitsError]>;2025    readonly isNotifyTargetMigrationFail: boolean;2026    readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;2027    readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';2028  }20292030  /** @name XcmV2TraitsOutcome (235) */2031  export interface XcmV2TraitsOutcome extends Enum {2032    readonly isComplete: boolean;2033    readonly asComplete: u64;2034    readonly isIncomplete: boolean;2035    readonly asIncomplete: ITuple<[u64, XcmV2TraitsError]>;2036    readonly isError: boolean;2037    readonly asError: XcmV2TraitsError;2038    readonly type: 'Complete' | 'Incomplete' | 'Error';2039  }20402041  /** @name CumulusPalletXcmEvent (237) */2042  export interface CumulusPalletXcmEvent extends Enum {2043    readonly isInvalidFormat: boolean;2044    readonly asInvalidFormat: U8aFixed;2045    readonly isUnsupportedVersion: boolean;2046    readonly asUnsupportedVersion: U8aFixed;2047    readonly isExecutedDownward: boolean;2048    readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;2049    readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';2050  }20512052  /** @name CumulusPalletDmpQueueEvent (238) */2053  export interface CumulusPalletDmpQueueEvent extends Enum {2054    readonly isInvalidFormat: boolean;2055    readonly asInvalidFormat: U8aFixed;2056    readonly isUnsupportedVersion: boolean;2057    readonly asUnsupportedVersion: U8aFixed;2058    readonly isExecutedDownward: boolean;2059    readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;2060    readonly isWeightExhausted: boolean;2061    readonly asWeightExhausted: ITuple<[U8aFixed, u64, u64]>;2062    readonly isOverweightEnqueued: boolean;2063    readonly asOverweightEnqueued: ITuple<[U8aFixed, u64, u64]>;2064    readonly isOverweightServiced: boolean;2065    readonly asOverweightServiced: ITuple<[u64, u64]>;2066    readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';2067  }20682069  /** @name PalletUniqueRawEvent (239) */2070  export interface PalletUniqueRawEvent extends Enum {2071    readonly isCollectionSponsorRemoved: boolean;2072    readonly asCollectionSponsorRemoved: u32;2073    readonly isCollectionAdminAdded: boolean;2074    readonly asCollectionAdminAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;2075    readonly isCollectionOwnedChanged: boolean;2076    readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;2077    readonly isCollectionSponsorSet: boolean;2078    readonly asCollectionSponsorSet: ITuple<[u32, AccountId32]>;2079    readonly isConstOnChainSchemaSet: boolean;2080    readonly asConstOnChainSchemaSet: u32;2081    readonly isSponsorshipConfirmed: boolean;2082    readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;2083    readonly isCollectionAdminRemoved: boolean;2084    readonly asCollectionAdminRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;2085    readonly isAllowListAddressRemoved: boolean;2086    readonly asAllowListAddressRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;2087    readonly isAllowListAddressAdded: boolean;2088    readonly asAllowListAddressAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;2089    readonly isCollectionLimitSet: boolean;2090    readonly asCollectionLimitSet: u32;2091    readonly isMintPermissionSet: boolean;2092    readonly asMintPermissionSet: u32;2093    readonly isOffchainSchemaSet: boolean;2094    readonly asOffchainSchemaSet: u32;2095    readonly isPublicAccessModeSet: boolean;2096    readonly asPublicAccessModeSet: ITuple<[u32, UpDataStructsAccessMode]>;2097    readonly isSchemaVersionSet: boolean;2098    readonly asSchemaVersionSet: u32;2099    readonly isVariableOnChainSchemaSet: boolean;2100    readonly asVariableOnChainSchemaSet: u32;2101    readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';2102  }21032104  /** @name PalletCommonEvent (240) */2105  export interface PalletCommonEvent extends Enum {2106    readonly isCollectionCreated: boolean;2107    readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;2108    readonly isCollectionDestroyed: boolean;2109    readonly asCollectionDestroyed: u32;2110    readonly isItemCreated: boolean;2111    readonly asItemCreated: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;2112    readonly isItemDestroyed: boolean;2113    readonly asItemDestroyed: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;2114    readonly isTransfer: boolean;2115    readonly asTransfer: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;2116    readonly isApproved: boolean;2117    readonly asApproved: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;2118    readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';2119  }21202121  /** @name PalletEvmEvent (241) */2122  export interface PalletEvmEvent extends Enum {2123    readonly isLog: boolean;2124    readonly asLog: EthereumLog;2125    readonly isCreated: boolean;2126    readonly asCreated: H160;2127    readonly isCreatedFailed: boolean;2128    readonly asCreatedFailed: H160;2129    readonly isExecuted: boolean;2130    readonly asExecuted: H160;2131    readonly isExecutedFailed: boolean;2132    readonly asExecutedFailed: H160;2133    readonly isBalanceDeposit: boolean;2134    readonly asBalanceDeposit: ITuple<[AccountId32, H160, U256]>;2135    readonly isBalanceWithdraw: boolean;2136    readonly asBalanceWithdraw: ITuple<[AccountId32, H160, U256]>;2137    readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';2138  }21392140  /** @name EthereumLog (242) */2141  export interface EthereumLog extends Struct {2142    readonly address: H160;2143    readonly topics: Vec<H256>;2144    readonly data: Bytes;2145  }21462147  /** @name PalletEthereumEvent (243) */2148  export interface PalletEthereumEvent extends Enum {2149    readonly isExecuted: boolean;2150    readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;2151    readonly type: 'Executed';2152  }21532154  /** @name EvmCoreErrorExitReason (244) */2155  export interface EvmCoreErrorExitReason extends Enum {2156    readonly isSucceed: boolean;2157    readonly asSucceed: EvmCoreErrorExitSucceed;2158    readonly isError: boolean;2159    readonly asError: EvmCoreErrorExitError;2160    readonly isRevert: boolean;2161    readonly asRevert: EvmCoreErrorExitRevert;2162    readonly isFatal: boolean;2163    readonly asFatal: EvmCoreErrorExitFatal;2164    readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';2165  }21662167  /** @name EvmCoreErrorExitSucceed (245) */2168  export interface EvmCoreErrorExitSucceed extends Enum {2169    readonly isStopped: boolean;2170    readonly isReturned: boolean;2171    readonly isSuicided: boolean;2172    readonly type: 'Stopped' | 'Returned' | 'Suicided';2173  }21742175  /** @name EvmCoreErrorExitError (246) */2176  export interface EvmCoreErrorExitError extends Enum {2177    readonly isStackUnderflow: boolean;2178    readonly isStackOverflow: boolean;2179    readonly isInvalidJump: boolean;2180    readonly isInvalidRange: boolean;2181    readonly isDesignatedInvalid: boolean;2182    readonly isCallTooDeep: boolean;2183    readonly isCreateCollision: boolean;2184    readonly isCreateContractLimit: boolean;2185    readonly isInvalidCode: boolean;2186    readonly isOutOfOffset: boolean;2187    readonly isOutOfGas: boolean;2188    readonly isOutOfFund: boolean;2189    readonly isPcUnderflow: boolean;2190    readonly isCreateEmpty: boolean;2191    readonly isOther: boolean;2192    readonly asOther: Text;2193    readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';2194  }21952196  /** @name EvmCoreErrorExitRevert (249) */2197  export interface EvmCoreErrorExitRevert extends Enum {2198    readonly isReverted: boolean;2199    readonly type: 'Reverted';2200  }22012202  /** @name EvmCoreErrorExitFatal (250) */2203  export interface EvmCoreErrorExitFatal extends Enum {2204    readonly isNotSupported: boolean;2205    readonly isUnhandledInterrupt: boolean;2206    readonly isCallErrorAsFatal: boolean;2207    readonly asCallErrorAsFatal: EvmCoreErrorExitError;2208    readonly isOther: boolean;2209    readonly asOther: Text;2210    readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';2211  }22122213  /** @name FrameSystemPhase (251) */2214  export interface FrameSystemPhase extends Enum {2215    readonly isApplyExtrinsic: boolean;2216    readonly asApplyExtrinsic: u32;2217    readonly isFinalization: boolean;2218    readonly isInitialization: boolean;2219    readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';2220  }22212222  /** @name FrameSystemLastRuntimeUpgradeInfo (253) */2223  export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {2224    readonly specVersion: Compact<u32>;2225    readonly specName: Text;2226  }22272228  /** @name FrameSystemLimitsBlockWeights (254) */2229  export interface FrameSystemLimitsBlockWeights extends Struct {2230    readonly baseBlock: u64;2231    readonly maxBlock: u64;2232    readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;2233  }22342235  /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (255) */2236  export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {2237    readonly normal: FrameSystemLimitsWeightsPerClass;2238    readonly operational: FrameSystemLimitsWeightsPerClass;2239    readonly mandatory: FrameSystemLimitsWeightsPerClass;2240  }22412242  /** @name FrameSystemLimitsWeightsPerClass (256) */2243  export interface FrameSystemLimitsWeightsPerClass extends Struct {2244    readonly baseExtrinsic: u64;2245    readonly maxExtrinsic: Option<u64>;2246    readonly maxTotal: Option<u64>;2247    readonly reserved: Option<u64>;2248  }22492250  /** @name FrameSystemLimitsBlockLength (258) */2251  export interface FrameSystemLimitsBlockLength extends Struct {2252    readonly max: FrameSupportWeightsPerDispatchClassU32;2253  }22542255  /** @name FrameSupportWeightsPerDispatchClassU32 (259) */2256  export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {2257    readonly normal: u32;2258    readonly operational: u32;2259    readonly mandatory: u32;2260  }22612262  /** @name FrameSupportWeightsRuntimeDbWeight (260) */2263  export interface FrameSupportWeightsRuntimeDbWeight extends Struct {2264    readonly read: u64;2265    readonly write: u64;2266  }22672268  /** @name SpVersionRuntimeVersion (261) */2269  export interface SpVersionRuntimeVersion extends Struct {2270    readonly specName: Text;2271    readonly implName: Text;2272    readonly authoringVersion: u32;2273    readonly specVersion: u32;2274    readonly implVersion: u32;2275    readonly apis: Vec<ITuple<[U8aFixed, u32]>>;2276    readonly transactionVersion: u32;2277    readonly stateVersion: u8;2278  }22792280  /** @name FrameSystemError (265) */2281  export interface FrameSystemError extends Enum {2282    readonly isInvalidSpecName: boolean;2283    readonly isSpecVersionNeedsToIncrease: boolean;2284    readonly isFailedToExtractRuntimeVersion: boolean;2285    readonly isNonDefaultComposite: boolean;2286    readonly isNonZeroRefCount: boolean;2287    readonly isCallFiltered: boolean;2288    readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';2289  }22902291  /** @name OrmlVestingModuleError (267) */2292  export interface OrmlVestingModuleError extends Enum {2293    readonly isZeroVestingPeriod: boolean;2294    readonly isZeroVestingPeriodCount: boolean;2295    readonly isInsufficientBalanceToLock: boolean;2296    readonly isTooManyVestingSchedules: boolean;2297    readonly isAmountLow: boolean;2298    readonly isMaxVestingSchedulesExceeded: boolean;2299    readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';2300  }23012302  /** @name CumulusPalletXcmpQueueInboundChannelDetails (269) */2303  export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {2304    readonly sender: u32;2305    readonly state: CumulusPalletXcmpQueueInboundState;2306    readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;2307  }23082309  /** @name CumulusPalletXcmpQueueInboundState (270) */2310  export interface CumulusPalletXcmpQueueInboundState extends Enum {2311    readonly isOk: boolean;2312    readonly isSuspended: boolean;2313    readonly type: 'Ok' | 'Suspended';2314  }23152316  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (273) */2317  export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {2318    readonly isConcatenatedVersionedXcm: boolean;2319    readonly isConcatenatedEncodedBlob: boolean;2320    readonly isSignals: boolean;2321    readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';2322  }23232324  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (276) */2325  export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {2326    readonly recipient: u32;2327    readonly state: CumulusPalletXcmpQueueOutboundState;2328    readonly signalsExist: bool;2329    readonly firstIndex: u16;2330    readonly lastIndex: u16;2331  }23322333  /** @name CumulusPalletXcmpQueueOutboundState (277) */2334  export interface CumulusPalletXcmpQueueOutboundState extends Enum {2335    readonly isOk: boolean;2336    readonly isSuspended: boolean;2337    readonly type: 'Ok' | 'Suspended';2338  }23392340  /** @name CumulusPalletXcmpQueueQueueConfigData (279) */2341  export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {2342    readonly suspendThreshold: u32;2343    readonly dropThreshold: u32;2344    readonly resumeThreshold: u32;2345    readonly thresholdWeight: u64;2346    readonly weightRestrictDecay: u64;2347    readonly xcmpMaxIndividualWeight: u64;2348  }23492350  /** @name CumulusPalletXcmpQueueError (281) */2351  export interface CumulusPalletXcmpQueueError extends Enum {2352    readonly isFailedToSend: boolean;2353    readonly isBadXcmOrigin: boolean;2354    readonly isBadXcm: boolean;2355    readonly isBadOverweightIndex: boolean;2356    readonly isWeightOverLimit: boolean;2357    readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';2358  }23592360  /** @name PalletXcmError (282) */2361  export interface PalletXcmError extends Enum {2362    readonly isUnreachable: boolean;2363    readonly isSendFailure: boolean;2364    readonly isFiltered: boolean;2365    readonly isUnweighableMessage: boolean;2366    readonly isDestinationNotInvertible: boolean;2367    readonly isEmpty: boolean;2368    readonly isCannotReanchor: boolean;2369    readonly isTooManyAssets: boolean;2370    readonly isInvalidOrigin: boolean;2371    readonly isBadVersion: boolean;2372    readonly isBadLocation: boolean;2373    readonly isNoSubscription: boolean;2374    readonly isAlreadySubscribed: boolean;2375    readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';2376  }23772378  /** @name CumulusPalletXcmError (283) */2379  export type CumulusPalletXcmError = Null;23802381  /** @name CumulusPalletDmpQueueConfigData (284) */2382  export interface CumulusPalletDmpQueueConfigData extends Struct {2383    readonly maxIndividual: u64;2384  }23852386  /** @name CumulusPalletDmpQueuePageIndexData (285) */2387  export interface CumulusPalletDmpQueuePageIndexData extends Struct {2388    readonly beginUsed: u32;2389    readonly endUsed: u32;2390    readonly overweightCount: u64;2391  }23922393  /** @name CumulusPalletDmpQueueError (288) */2394  export interface CumulusPalletDmpQueueError extends Enum {2395    readonly isUnknown: boolean;2396    readonly isOverLimit: boolean;2397    readonly type: 'Unknown' | 'OverLimit';2398  }23992400  /** @name PalletUniqueError (292) */2401  export interface PalletUniqueError extends Enum {2402    readonly isCollectionDecimalPointLimitExceeded: boolean;2403    readonly isConfirmUnsetSponsorFail: boolean;2404    readonly isEmptyArgument: boolean;2405    readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';2406  }24072408  /** @name UpDataStructsCollection (293) */2409  export interface UpDataStructsCollection extends Struct {2410    readonly owner: AccountId32;2411    readonly mode: UpDataStructsCollectionMode;2412    readonly access: UpDataStructsAccessMode;2413    readonly name: Vec<u16>;2414    readonly description: Vec<u16>;2415    readonly tokenPrefix: Bytes;2416    readonly mintMode: bool;2417    readonly offchainSchema: Bytes;2418    readonly schemaVersion: UpDataStructsSchemaVersion;2419    readonly sponsorship: UpDataStructsSponsorshipState;2420    readonly limits: UpDataStructsCollectionLimits;2421    readonly variableOnChainSchema: Bytes;2422    readonly constOnChainSchema: Bytes;2423    readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;2424  }24252426  /** @name UpDataStructsSponsorshipState (294) */2427  export interface UpDataStructsSponsorshipState extends Enum {2428    readonly isDisabled: boolean;2429    readonly isUnconfirmed: boolean;2430    readonly asUnconfirmed: AccountId32;2431    readonly isConfirmed: boolean;2432    readonly asConfirmed: AccountId32;2433    readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';2434  }24352436  /** @name UpDataStructsCollectionStats (297) */2437  export interface UpDataStructsCollectionStats extends Struct {2438    readonly created: u32;2439    readonly destroyed: u32;2440    readonly alive: u32;2441  }24422443  /** @name PalletCommonError (298) */2444  export interface PalletCommonError extends Enum {2445    readonly isCollectionNotFound: boolean;2446    readonly isMustBeTokenOwner: boolean;2447    readonly isNoPermission: boolean;2448    readonly isPublicMintingNotAllowed: boolean;2449    readonly isAddressNotInAllowlist: boolean;2450    readonly isCollectionNameLimitExceeded: boolean;2451    readonly isCollectionDescriptionLimitExceeded: boolean;2452    readonly isCollectionTokenPrefixLimitExceeded: boolean;2453    readonly isTotalCollectionsLimitExceeded: boolean;2454    readonly isTokenVariableDataLimitExceeded: boolean;2455    readonly isCollectionAdminCountExceeded: boolean;2456    readonly isCollectionLimitBoundsExceeded: boolean;2457    readonly isOwnerPermissionsCantBeReverted: boolean;2458    readonly isTransferNotAllowed: boolean;2459    readonly isAccountTokenLimitExceeded: boolean;2460    readonly isCollectionTokenLimitExceeded: boolean;2461    readonly isMetadataFlagFrozen: boolean;2462    readonly isTokenNotFound: boolean;2463    readonly isTokenValueTooLow: boolean;2464    readonly isApprovedValueTooLow: boolean;2465    readonly isCantApproveMoreThanOwned: boolean;2466    readonly isAddressIsZero: boolean;2467    readonly isUnsupportedOperation: boolean;2468    readonly isNotSufficientFounds: boolean;2469    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';2470  }24712472  /** @name PalletFungibleError (300) */2473  export interface PalletFungibleError extends Enum {2474    readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;2475    readonly isFungibleItemsHaveNoId: boolean;2476    readonly isFungibleItemsDontHaveData: boolean;2477    readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData';2478  }24792480  /** @name PalletRefungibleItemData (301) */2481  export interface PalletRefungibleItemData extends Struct {2482    readonly constData: Bytes;2483    readonly variableData: Bytes;2484  }24852486  /** @name PalletRefungibleError (305) */2487  export interface PalletRefungibleError extends Enum {2488    readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;2489    readonly isWrongRefungiblePieces: boolean;2490    readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces';2491  }24922493  /** @name PalletNonfungibleItemData (306) */2494  export interface PalletNonfungibleItemData extends Struct {2495    readonly constData: Bytes;2496    readonly variableData: Bytes;2497    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;2498  }24992500  /** @name PalletNonfungibleError (307) */2501  export interface PalletNonfungibleError extends Enum {2502    readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;2503    readonly isNonfungibleItemsHaveNoAmount: boolean;2504    readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';2505  }25062507  /** @name PalletEvmError (309) */2508  export interface PalletEvmError extends Enum {2509    readonly isBalanceLow: boolean;2510    readonly isFeeOverflow: boolean;2511    readonly isPaymentOverflow: boolean;2512    readonly isWithdrawFailed: boolean;2513    readonly isGasPriceTooLow: boolean;2514    readonly isInvalidNonce: boolean;2515    readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';2516  }25172518  /** @name FpRpcTransactionStatus (312) */2519  export interface FpRpcTransactionStatus extends Struct {2520    readonly transactionHash: H256;2521    readonly transactionIndex: u32;2522    readonly from: H160;2523    readonly to: Option<H160>;2524    readonly contractAddress: Option<H160>;2525    readonly logs: Vec<EthereumLog>;2526    readonly logsBloom: EthbloomBloom;2527  }25282529  /** @name EthbloomBloom (315) */2530  export interface EthbloomBloom extends U8aFixed {}25312532  /** @name EthereumReceiptReceiptV3 (317) */2533  export interface EthereumReceiptReceiptV3 extends Enum {2534    readonly isLegacy: boolean;2535    readonly asLegacy: EthereumReceiptEip658ReceiptData;2536    readonly isEip2930: boolean;2537    readonly asEip2930: EthereumReceiptEip658ReceiptData;2538    readonly isEip1559: boolean;2539    readonly asEip1559: EthereumReceiptEip658ReceiptData;2540    readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';2541  }25422543  /** @name EthereumReceiptEip658ReceiptData (318) */2544  export interface EthereumReceiptEip658ReceiptData extends Struct {2545    readonly statusCode: u8;2546    readonly usedGas: U256;2547    readonly logsBloom: EthbloomBloom;2548    readonly logs: Vec<EthereumLog>;2549  }25502551  /** @name EthereumBlock (319) */2552  export interface EthereumBlock extends Struct {2553    readonly header: EthereumHeader;2554    readonly transactions: Vec<EthereumTransactionTransactionV2>;2555    readonly ommers: Vec<EthereumHeader>;2556  }25572558  /** @name EthereumHeader (320) */2559  export interface EthereumHeader extends Struct {2560    readonly parentHash: H256;2561    readonly ommersHash: H256;2562    readonly beneficiary: H160;2563    readonly stateRoot: H256;2564    readonly transactionsRoot: H256;2565    readonly receiptsRoot: H256;2566    readonly logsBloom: EthbloomBloom;2567    readonly difficulty: U256;2568    readonly number: U256;2569    readonly gasLimit: U256;2570    readonly gasUsed: U256;2571    readonly timestamp: u64;2572    readonly extraData: Bytes;2573    readonly mixHash: H256;2574    readonly nonce: EthereumTypesHashH64;2575  }25762577  /** @name EthereumTypesHashH64 (321) */2578  export interface EthereumTypesHashH64 extends U8aFixed {}25792580  /** @name PalletEthereumError (326) */2581  export interface PalletEthereumError extends Enum {2582    readonly isInvalidSignature: boolean;2583    readonly isPreLogExists: boolean;2584    readonly type: 'InvalidSignature' | 'PreLogExists';2585  }25862587  /** @name PalletEvmCoderSubstrateError (327) */2588  export interface PalletEvmCoderSubstrateError extends Enum {2589    readonly isOutOfGas: boolean;2590    readonly isOutOfFund: boolean;2591    readonly type: 'OutOfGas' | 'OutOfFund';2592  }25932594  /** @name PalletEvmContractHelpersSponsoringModeT (328) */2595  export interface PalletEvmContractHelpersSponsoringModeT extends Enum {2596    readonly isDisabled: boolean;2597    readonly isAllowlisted: boolean;2598    readonly isGenerous: boolean;2599    readonly type: 'Disabled' | 'Allowlisted' | 'Generous';2600  }26012602  /** @name PalletEvmContractHelpersError (330) */2603  export interface PalletEvmContractHelpersError extends Enum {2604    readonly isNoPermission: boolean;2605    readonly type: 'NoPermission';2606  }26072608  /** @name PalletEvmMigrationError (331) */2609  export interface PalletEvmMigrationError extends Enum {2610    readonly isAccountNotEmpty: boolean;2611    readonly isAccountIsNotMigrating: boolean;2612    readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';2613  }26142615  /** @name SpRuntimeMultiSignature (333) */2616  export interface SpRuntimeMultiSignature extends Enum {2617    readonly isEd25519: boolean;2618    readonly asEd25519: SpCoreEd25519Signature;2619    readonly isSr25519: boolean;2620    readonly asSr25519: SpCoreSr25519Signature;2621    readonly isEcdsa: boolean;2622    readonly asEcdsa: SpCoreEcdsaSignature;2623    readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';2624  }26252626  /** @name SpCoreEd25519Signature (334) */2627  export interface SpCoreEd25519Signature extends U8aFixed {}26282629  /** @name SpCoreSr25519Signature (336) */2630  export interface SpCoreSr25519Signature extends U8aFixed {}26312632  /** @name SpCoreEcdsaSignature (337) */2633  export interface SpCoreEcdsaSignature extends U8aFixed {}26342635  /** @name FrameSystemExtensionsCheckSpecVersion (340) */2636  export type FrameSystemExtensionsCheckSpecVersion = Null;26372638  /** @name FrameSystemExtensionsCheckGenesis (341) */2639  export type FrameSystemExtensionsCheckGenesis = Null;26402641  /** @name FrameSystemExtensionsCheckNonce (344) */2642  export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}26432644  /** @name FrameSystemExtensionsCheckWeight (345) */2645  export type FrameSystemExtensionsCheckWeight = Null;26462647  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (346) */2648  export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}26492650  /** @name OpalRuntimeRuntime (347) */2651  export type OpalRuntimeRuntime = Null;26522653} // 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
--- a/tests/src/interfaces/unique/types.ts
+++ b/tests/src/interfaces/unique/types.ts
@@ -6,6 +6,9 @@
 import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';
 import type { Event } from '@polkadot/types/interfaces/system';
 
+/** @name BTreeSet */
+export interface BTreeSet extends Vec<Bytes> {}
+
 /** @name CumulusPalletDmpQueueCall */
 export interface CumulusPalletDmpQueueCall extends Enum {
   readonly isServiceOverweight: boolean;
@@ -299,7 +302,7 @@
 /** @name EthereumTransactionAccessListItem */
 export interface EthereumTransactionAccessListItem extends Struct {
   readonly address: H160;
-  readonly slots: Vec<H256>;
+  readonly storageKeys: Vec<H256>;
 }
 
 /** @name EthereumTransactionEip1559Transaction */
@@ -654,6 +657,9 @@
   readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';
 }
 
+/** @name OpalRuntimeRuntime */
+export interface OpalRuntimeRuntime extends Null {}
+
 /** @name OrmlVestingModuleCall */
 export interface OrmlVestingModuleCall extends Enum {
   readonly isClaim: boolean;
@@ -856,15 +862,6 @@
 export interface PalletBalancesReserveData extends Struct {
   readonly id: U8aFixed;
   readonly amount: u128;
-}
-
-/** @name PalletCommonAccountBasicCrossAccountIdRepr */
-export interface PalletCommonAccountBasicCrossAccountIdRepr extends Enum {
-  readonly isSubstrate: boolean;
-  readonly asSubstrate: AccountId32;
-  readonly isEthereum: boolean;
-  readonly asEthereum: H160;
-  readonly type: 'Substrate' | 'Ethereum';
 }
 
 /** @name PalletCommonError */
@@ -892,7 +889,8 @@
   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 PalletCommonEvent */
@@ -902,13 +900,13 @@
   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';
 }
 
@@ -935,6 +933,15 @@
   readonly type: 'Executed';
 }
 
+/** @name PalletEvmAccountBasicCrossAccountIdRepr */
+export interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum {
+  readonly isSubstrate: boolean;
+  readonly asSubstrate: AccountId32;
+  readonly isEthereum: boolean;
+  readonly asEthereum: H160;
+  readonly type: 'Substrate' | 'Ethereum';
+}
+
 /** @name PalletEvmCall */
 export interface PalletEvmCall extends Enum {
   readonly isWithdraw: boolean;
@@ -1085,7 +1092,7 @@
 export interface PalletNonfungibleItemData extends Struct {
   readonly constData: Bytes;
   readonly variableData: Bytes;
-  readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
 }
 
 /** @name PalletRefungibleError */
@@ -1259,12 +1266,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: {
@@ -1284,12 +1291,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: {
@@ -1307,13 +1314,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;
@@ -1335,28 +1342,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;
@@ -1413,7 +1420,7 @@
   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;
@@ -1423,11 +1430,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;
@@ -1707,7 +1714,7 @@
 
 /** @name SpTrieStorageProof */
 export interface SpTrieStorageProof extends Struct {
-  readonly trieNodes: Vec<Bytes>;
+  readonly trieNodes: BTreeSet;
 }
 
 /** @name SpVersionRuntimeVersion */
@@ -1722,9 +1729,6 @@
   readonly stateVersion: u8;
 }
 
-/** @name UniqueRuntimeRuntime */
-export interface UniqueRuntimeRuntime extends Null {}
-
 /** @name UpDataStructsAccessMode */
 export interface UpDataStructsAccessMode extends Enum {
   readonly isNormal: boolean;
@@ -1816,7 +1820,7 @@
   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;
@@ -1834,7 +1838,7 @@
 export interface UpDataStructsCreateNftExData extends Struct {
   readonly constData: Bytes;
   readonly variableData: Bytes;
-  readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
 }
 
 /** @name UpDataStructsCreateReFungibleData */
@@ -1848,7 +1852,7 @@
 export interface UpDataStructsCreateRefungibleExData extends Struct {
   readonly constData: Bytes;
   readonly variableData: Bytes;
-  readonly users: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;
+  readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
 }
 
 /** @name UpDataStructsMetaUpdatePermission */
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,