git.delta.rocks / unique-network / refs/commits / 518e58fd93c8

difftreelog

Merge pull request #408 from UniqueNetwork/release-v924000

kozyrevdev2022-06-28parents: #462ebc1 #5f68a20.patch.diff
in: master
Release v924000

41 files changed

modified.envdiffbeforeafterboth
--- a/.env
+++ b/.env
@@ -1,6 +1,6 @@
 RUST_TOOLCHAIN=nightly-2022-05-11
 RUST_C=1.62.0-nightly
-POLKA_VERSION=release-v0.9.23
+POLKA_VERSION=release-v0.9.24
 UNIQUE_BRANCH=develop
 USER=***
 PASS=***
modifiedCargo.lockdiffbeforeafterboth
before · Cargo.lock
980 packageslockfile v3
after · Cargo.lock
985 packageslockfile v3
modifiedDockerfile-parachaindiffbeforeafterboth
--- a/Dockerfile-parachain
+++ b/Dockerfile-parachain
@@ -2,9 +2,9 @@
 FROM phusion/baseimage:focal-1.1.0 as rust-builder
 LABEL maintainer="Unique.Network"
 
-ARG RUST_TOOLCHAIN=nightly-2022-04-07
+ARG RUST_TOOLCHAIN=nightly-2022-05-11
 #ARG RUST_C=1.62.0-nightly
-ARG POLKA_VERSION=release-v0.9.23
+ARG POLKA_VERSION=release-v0.9.24
 ARG UNIQUE_BRANCH=develop
 
 #ARG USER=***
modifiedREADME.mddiffbeforeafterboth
--- a/README.md
+++ b/README.md
@@ -91,7 +91,7 @@
 ```
 git clone https://github.com/paritytech/polkadot.git
 cd polkadot
-git checkout release-v0.9.23
+git checkout release-v0.9.24
 cargo build --release
 ```
 
modifiedclient/rpc/Cargo.tomldiffbeforeafterboth
--- a/client/rpc/Cargo.toml
+++ b/client/rpc/Cargo.toml
@@ -14,9 +14,9 @@
 jsonrpsee = { version = "0.13.0", features = ["server", "macros"] }
 anyhow = "1.0.57"
 
-sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-blockchain = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-blockchain = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
modifiedcrates/evm-coder/Cargo.tomldiffbeforeafterboth
--- a/crates/evm-coder/Cargo.toml
+++ b/crates/evm-coder/Cargo.toml
@@ -9,7 +9,7 @@
 primitive-types = { version = "0.11.1", default-features = false }
 hex-literal = "0.3.3"
 ethereum = { version = "0.12.0", default-features = false }
-evm-core = { default-features = false , git = "https://github.com/uniquenetwork/evm", branch = "unique-polkadot-v0.9.23" }
+evm-core = { default-features = false , git = "https://github.com/uniquenetwork/evm", branch = "unique-polkadot-v0.9.24" }
 impl-trait-for-tuples = "0.2.1"
 
 [dev-dependencies]
modifiedlaunch-config.jsondiffbeforeafterboth
--- a/launch-config.json
+++ b/launch-config.json
@@ -1,7 +1,7 @@
 {
     "relaychain": {
         "bin": "../polkadot/target/release/polkadot",
-        "chain": "westend-local",
+        "chain": "rococo-local",
         "nodes": [
             {
                 "name": "alice",
modifiednode/cli/Cargo.tomldiffbeforeafterboth
--- a/node/cli/Cargo.toml
+++ b/node/cli/Cargo.toml
@@ -3,7 +3,7 @@
 
 [build-dependencies.substrate-build-script-utils]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 ################################################################################
 # Substrate Dependecies
@@ -16,158 +16,158 @@
 
 [dependencies.frame-benchmarking]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-benchmarking-cli]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.try-runtime-cli]
 git = 'https://github.com/paritytech/substrate'
-branch = 'polkadot-v0.9.23'
+branch = 'polkadot-v0.9.24'
 
 [dependencies.pallet-transaction-payment-rpc]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.substrate-prometheus-endpoint]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-basic-authorship]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-chain-spec]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-cli]
 features = ['wasmtime']
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-client-api]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-consensus]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-consensus-aura]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-executor]
 features = ['wasmtime']
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-finality-grandpa]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-keystore]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-rpc]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-rpc-api]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-service]
 features = ['wasmtime']
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-telemetry]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-transaction-pool]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-tracing]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-sysinfo]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-block-builder]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-api]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-blockchain]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-consensus]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-consensus-aura]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-core]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-finality-grandpa]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-inherents]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-keystore]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-offchain]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-runtime]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-session]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-timestamp]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-transaction-pool]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-trie]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.substrate-frame-rpc-system]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sc-network]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.serde]
 features = ['derive']
@@ -178,76 +178,76 @@
 
 [dependencies.sc-consensus-manual-seal]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 ################################################################################
 # Cumulus dependencies
 
 [dependencies.cumulus-client-consensus-aura]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-client-consensus-common]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-client-collator]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-client-cli]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-client-network]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-primitives-core]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-primitives-parachain-inherent]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-client-service]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-relay-chain-interface]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-relay-chain-inprocess-interface]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-relay-chain-rpc-interface]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 ################################################################################
 # Polkadot dependencies
 [dependencies.polkadot-primitives]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 
 [dependencies.polkadot-service]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 
 [dependencies.polkadot-cli]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 
 [dependencies.polkadot-test-service]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 
 [dependencies.polkadot-parachain]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 
 
 ################################################################################
@@ -277,7 +277,7 @@
 
 [dependencies.pallet-transaction-payment-rpc-runtime-api]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 ################################################################################
 # Package
@@ -291,7 +291,7 @@
 license = 'GPLv3'
 name = 'unique-node'
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.23'
+version = '0.9.24'
 
 [[bin]]
 name = 'unique-collator'
@@ -309,13 +309,13 @@
 jsonrpsee = { version = "0.13.0", features = ["server", "macros"] }
 tokio = { version = "1.17.0", features = ["time"] }
 
-fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-consensus = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-db = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-consensus = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-db = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 unique-rpc = { default-features = false, path = "../rpc" }
 rmrk-rpc = { path = "../../primitives/rmrk-rpc" }
modifiednode/cli/src/command.rsdiffbeforeafterboth
--- a/node/cli/src/command.rs
+++ b/node/cli/src/command.rs
@@ -473,6 +473,11 @@
 
 					let autoseal_interval = Duration::from_millis(cli.idle_autoseal_interval);
 
+					let mut config = config;
+					if config.state_pruning == None {
+						config.state_pruning = Some(sc_service::PruningMode::ArchiveAll);
+					}
+
 					return start_node_using_chain_runtime! {
 						start_dev_node(config, autoseal_interval).map_err(Into::into)
 					};
modifiednode/rpc/Cargo.tomldiffbeforeafterboth
--- a/node/rpc/Cargo.toml
+++ b/node/rpc/Cargo.toml
@@ -13,40 +13,40 @@
 futures = { version = "0.3.17", features = ["compat"] }
 jsonrpsee = { version = "0.13.0", features = ["server", "macros"] }
 # pallet-contracts-rpc = { git = 'https://github.com/paritytech/substrate', branch = 'master' }
-pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-consensus-epochs = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-finality-grandpa-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-storage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-consensus-epochs = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-finality-grandpa-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-storage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 tokio = { version = "0.2.25", features = ["macros", "sync"] }
 
-pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-storage = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-storage = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 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
@@ -11,18 +11,18 @@
 version = '3.1.2'
 
 [dependencies]
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 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' }
 ethereum = { version = "0.12.0", default-features = false }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 serde = { version = "1.0.130", default-features = false }
 scale-info = { version = "2.0.1", default-features = false, features = [
modifiedpallets/evm-coder-substrate/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-coder-substrate/Cargo.toml
+++ b/pallets/evm-coder-substrate/Cargo.toml
@@ -8,15 +8,15 @@
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 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", branch = "unique-polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 up-data-structs = { default-features = false, path = "../../primitives/data-structs" }
 
 [dependencies.codec]
modifiedpallets/evm-contract-helpers/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-contract-helpers/Cargo.toml
+++ b/pallets/evm-contract-helpers/Cargo.toml
@@ -11,16 +11,16 @@
 log = { default-features = false, version = "0.4.14" }
 
 # Substrate
-frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-frame-system = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
+frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+frame-system = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
 
 # Unique
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.24" }
 
 # Locals
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
modifiedpallets/evm-migration/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-migration/Cargo.toml
+++ b/pallets/evm-migration/Cargo.toml
@@ -8,15 +8,15 @@
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 [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
@@ -8,17 +8,17 @@
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.23" }
-fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.24" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 [dependencies.codec]
 default-features = false
modifiedpallets/fungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/fungible/Cargo.toml
+++ b/pallets/fungible/Cargo.toml
@@ -11,19 +11,19 @@
 version = '3.1.2'
 
 [dependencies]
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 pallet-common = { default-features = false, path = '../common' }
 pallet-structure = { default-features = false, path = '../structure' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
 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", branch = "polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
modifiedpallets/inflation/Cargo.tomldiffbeforeafterboth
--- a/pallets/inflation/Cargo.toml
+++ b/pallets/inflation/Cargo.toml
@@ -43,37 +43,37 @@
 default-features = false
 optional = true
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-support]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-balances]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-timestamp]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-randomness-collective-flip]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-std]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.serde]
 default-features = false
@@ -83,17 +83,17 @@
 [dependencies.sp-runtime]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-core]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-io]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies]
 scale-info = { version = "2.0.1", default-features = false, features = [
modifiedpallets/nonfungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/nonfungible/Cargo.toml
+++ b/pallets/nonfungible/Cargo.toml
@@ -11,19 +11,19 @@
 version = '3.1.2'
 
 [dependencies]
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 pallet-common = { default-features = false, path = '../common' }
 pallet-structure = { default-features = false, path = '../structure' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
 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", branch = "polkadot-v0.9.23" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
modifiedpallets/proxy-rmrk-core/Cargo.tomldiffbeforeafterboth
--- a/pallets/proxy-rmrk-core/Cargo.toml
+++ b/pallets/proxy-rmrk-core/Cargo.toml
@@ -11,17 +11,17 @@
 version = '3.1.2'
 
 [dependencies]
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 pallet-common = { default-features = false, path = '../common' }
 pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
 pallet-structure = { default-features = false, path = "../../pallets/structure" }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }
 scale-info = { version = "2.0.1", default-features = false, features = ["derive"] }
 derivative = { version = "2.2.0", features = ["use_core"] }
modifiedpallets/proxy-rmrk-equip/Cargo.tomldiffbeforeafterboth
--- a/pallets/proxy-rmrk-equip/Cargo.toml
+++ b/pallets/proxy-rmrk-equip/Cargo.toml
@@ -11,16 +11,16 @@
 version = '3.1.2'
 
 [dependencies]
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 pallet-common = { default-features = false, path = '../common' }
 pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }
 scale-info = { version = "2.0.1", default-features = false, features = ["derive"] }
 pallet-rmrk-core = { default-features = false, path = "../proxy-rmrk-core" }
modifiedpallets/refungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/refungible/Cargo.toml
+++ b/pallets/refungible/Cargo.toml
@@ -11,16 +11,16 @@
 version = '3.1.2'
 
 [dependencies]
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 pallet-common = { default-features = false, path = '../common' }
 pallet-structure = { default-features = false, path = '../structure' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
-frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
modifiedpallets/scheduler/Cargo.tomldiffbeforeafterboth
--- a/pallets/scheduler/Cargo.toml
+++ b/pallets/scheduler/Cargo.toml
@@ -16,20 +16,20 @@
 	"derive",
 ] }
 
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.23' }
-frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.24' }
+frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 
-up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.23" }
+up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.24" }
 log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-substrate-test-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+substrate-test-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 
 [features]
 default = ["std"]
modifiedpallets/structure/Cargo.tomldiffbeforeafterboth
--- a/pallets/structure/Cargo.toml
+++ b/pallets/structure/Cargo.toml
@@ -4,10 +4,10 @@
 edition = "2021"
 
 [dependencies]
-frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-frame-system = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
+frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+frame-system = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
 pallet-common = { path = "../common", default-features = false }
 parity-scale-codec = { version = "3.1.2", default-features = false, features = [
 	"derive",
@@ -16,7 +16,7 @@
 	"derive",
 ] }
 up-data-structs = { path = "../../primitives/data-structs", default-features = false }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 [features]
 default = ["std"]
modifiedpallets/unique/Cargo.tomldiffbeforeafterboth
--- a/pallets/unique/Cargo.toml
+++ b/pallets/unique/Cargo.toml
@@ -59,37 +59,37 @@
 default-features = false
 optional = true
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-support]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-std]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-runtime]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-core]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-io]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 ################################################################################
 # Local Dependencies
@@ -98,7 +98,7 @@
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 pallet-common = { default-features = false, path = "../common" }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
 pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
modifiedpallets/unique/src/lib.rsdiffbeforeafterboth
--- a/pallets/unique/src/lib.rs
+++ b/pallets/unique/src/lib.rs
@@ -290,7 +290,7 @@
 			Ok(())
 		}
 
-		/// **DANGEROUS**: Destroys collection and all NFTs within this collection. Users irrecoverably lose their assets and may lose real money.
+		/// Destroys collection if no tokens within this collection
 		///
 		/// # Permissions
 		///
modifiedprimitives/data-structs/Cargo.tomldiffbeforeafterboth
--- a/primitives/data-structs/Cargo.toml
+++ b/primitives/data-structs/Cargo.toml
@@ -18,14 +18,14 @@
 serde = { version = "1.0.130", features = [
   'derive',
 ], default-features = false, optional = true }
-frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
+frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
 derivative = { version = "2.2.0", features = ["use_core"] }
 struct-versioning = { path = "../../crates/struct-versioning" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 rmrk-traits = { default-features = false, path = "../rmrk-traits" }
 
 [features]
modifiedprimitives/rmrk-rpc/Cargo.tomldiffbeforeafterboth
--- a/primitives/rmrk-rpc/Cargo.toml
+++ b/primitives/rmrk-rpc/Cargo.toml
@@ -6,10 +6,10 @@
 
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
-sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-api = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
+sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-api = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
 serde = { version = "1.0.130", default-features = false, features = ["derive"] }
 rmrk-traits = { default-features = false, path = "../rmrk-traits" }
 
modifiedprimitives/rpc/Cargo.tomldiffbeforeafterboth
--- a/primitives/rpc/Cargo.toml
+++ b/primitives/rpc/Cargo.toml
@@ -10,11 +10,11 @@
 codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [
 	"derive",
 ] }
-sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.23" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 [features]
 default = ["std"]
modifiedruntime/common/Cargo.tomldiffbeforeafterboth
--- a/runtime/common/Cargo.toml
+++ b/runtime/common/Cargo.toml
@@ -6,7 +6,7 @@
 license = 'All Rights Reserved'
 name = 'unique-runtime-common'
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.23'
+version = '0.9.24'
 
 [features]
 default = ['std']
@@ -36,17 +36,17 @@
 [dependencies.sp-core]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-std]
 default-features = false
 git = 'https://github.com/paritytech/substrate'
-branch = 'polkadot-v0.9.23'
+branch = 'polkadot-v0.9.24'
 
 [dependencies.sp-runtime]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.codec]
 default-features = false
@@ -62,12 +62,12 @@
 [dependencies.frame-support]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-common]
 default-features = false
@@ -100,16 +100,16 @@
 [dependencies.sp-consensus-aura]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.fp-rpc]
 default-features = false
 git = "https://github.com/uniquenetwork/frontier"
-branch = "unique-polkadot-v0.9.23"
+branch = "unique-polkadot-v0.9.24"
 
 [dependencies]
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
-up-sponsorship = { default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.23' }
+up-sponsorship = { default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.24' }
 
 rmrk-rpc = { default-features = false, path = "../../primitives/rmrk-rpc" }
modifiedruntime/opal/Cargo.tomldiffbeforeafterboth
--- a/runtime/opal/Cargo.toml
+++ b/runtime/opal/Cargo.toml
@@ -10,7 +10,7 @@
 license = 'GPLv3'
 name = 'opal-runtime'
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.23'
+version = '0.9.24'
 
 [package.metadata.docs.rs]
 targets = ['x86_64-unknown-linux-gnu']
@@ -133,39 +133,39 @@
 default-features = false
 git = "https://github.com/paritytech/substrate"
 optional = true
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-try-runtime]
 default-features = false
 git = 'https://github.com/paritytech/substrate'
 optional = true
-branch = 'polkadot-v0.9.23'
+branch = 'polkadot-v0.9.24'
 
 [dependencies.frame-executive]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-support]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system-benchmarking]
 default-features = false
 git = "https://github.com/paritytech/substrate"
 optional = true
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system-rpc-runtime-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.hex-literal]
 optional = true
@@ -180,12 +180,12 @@
 [dependencies.pallet-aura]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-balances]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 # Contracts specific packages
 # [dependencies.pallet-contracts]
@@ -209,32 +209,32 @@
 [dependencies.pallet-randomness-collective-flip]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-sudo]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-timestamp]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-transaction-payment]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-transaction-payment-rpc-runtime-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-treasury]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 # [dependencies.pallet-vesting]
 # default-features = false
@@ -244,67 +244,67 @@
 [dependencies.sp-arithmetic]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-block-builder]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-core]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-consensus-aura]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-inherents]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-io]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-offchain]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-runtime]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-session]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-std]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-transaction-pool]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-version]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.smallvec]
 version = '1.6.1'
@@ -315,46 +315,46 @@
 [dependencies.parachain-info]
 default-features = false
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-pallet-aura-ext]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-parachain-system]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-core]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-xcm]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-dmp-queue]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-xcmp-queue]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-utility]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-timestamp]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 ################################################################################
@@ -362,32 +362,32 @@
 
 [dependencies.polkadot-parachain]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm-builder]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm-executor]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.pallet-xcm]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.orml-vesting]
 git = "https://github.com/uniquenetwork/open-runtime-module-library"
-branch = "unique-polkadot-v0.9.23"
+branch = "unique-polkadot-v0.9.24"
 version = "0.4.1-dev"
 default-features = false
 
@@ -404,7 +404,7 @@
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
 rmrk-rpc = { path = "../../primitives/rmrk-rpc", default-features = false }
-fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 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" }
@@ -416,20 +416,20 @@
 pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }
 pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }
 # pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
-pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.23", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
+pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.24", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
 pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
 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", branch = "unique-polkadot-v0.9.23" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 ################################################################################
 # Build Dependencies
 
 [build-dependencies.substrate-wasm-builder]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
modifiedruntime/opal/src/lib.rsdiffbeforeafterboth
--- a/runtime/opal/src/lib.rs
+++ b/runtime/opal/src/lib.rs
@@ -192,7 +192,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 923000,
+	spec_version: 924000,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
modifiedruntime/quartz/Cargo.tomldiffbeforeafterboth
--- a/runtime/quartz/Cargo.toml
+++ b/runtime/quartz/Cargo.toml
@@ -10,7 +10,7 @@
 license = 'GPLv3'
 name = 'quartz-runtime'
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.23'
+version = '0.9.24'
 
 [package.metadata.docs.rs]
 targets = ['x86_64-unknown-linux-gnu']
@@ -132,39 +132,39 @@
 default-features = false
 git = "https://github.com/paritytech/substrate"
 optional = true
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-try-runtime]
 default-features = false
 git = 'https://github.com/paritytech/substrate'
 optional = true
-branch = 'polkadot-v0.9.23'
+branch = 'polkadot-v0.9.24'
 
 [dependencies.frame-executive]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-support]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system-benchmarking]
 default-features = false
 git = "https://github.com/paritytech/substrate"
 optional = true
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system-rpc-runtime-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.hex-literal]
 optional = true
@@ -179,12 +179,12 @@
 [dependencies.pallet-aura]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-balances]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 # Contracts specific packages
 # [dependencies.pallet-contracts]
@@ -208,32 +208,32 @@
 [dependencies.pallet-randomness-collective-flip]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-sudo]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-timestamp]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-transaction-payment]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-transaction-payment-rpc-runtime-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-treasury]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 # [dependencies.pallet-vesting]
 # default-features = false
@@ -243,67 +243,67 @@
 [dependencies.sp-arithmetic]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-block-builder]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-core]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-consensus-aura]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-inherents]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-io]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-offchain]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-runtime]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-session]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-std]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-transaction-pool]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-version]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.smallvec]
 version = '1.6.1'
@@ -314,46 +314,46 @@
 [dependencies.parachain-info]
 default-features = false
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-pallet-aura-ext]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-parachain-system]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-core]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-xcm]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-dmp-queue]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-xcmp-queue]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-utility]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-timestamp]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 ################################################################################
@@ -361,32 +361,32 @@
 
 [dependencies.polkadot-parachain]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm-builder]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm-executor]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.pallet-xcm]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.orml-vesting]
 git = "https://github.com/uniquenetwork/open-runtime-module-library"
-branch = "unique-polkadot-v0.9.23"
+branch = "unique-polkadot-v0.9.24"
 version = "0.4.1-dev"
 default-features = false
 
@@ -410,7 +410,7 @@
 derivative = "2.2.0"
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
-fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 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" }
@@ -422,20 +422,20 @@
 pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }
 pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }
 # pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
-pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.23", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
+pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.24", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
 pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
 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", branch = "unique-polkadot-v0.9.23" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 ################################################################################
 # Build Dependencies
 
 [build-dependencies.substrate-wasm-builder]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
modifiedruntime/quartz/src/lib.rsdiffbeforeafterboth
--- a/runtime/quartz/src/lib.rs
+++ b/runtime/quartz/src/lib.rs
@@ -191,7 +191,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 923000,
+	spec_version: 924000,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
modifiedruntime/tests/Cargo.tomldiffbeforeafterboth
--- a/runtime/tests/Cargo.toml
+++ b/runtime/tests/Cargo.toml
@@ -7,22 +7,22 @@
 unique-runtime-common = { path = '../common' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 
-sp-core = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-std = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-io = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-sp-runtime = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
+sp-core = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-std = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-io = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+sp-runtime = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
 
-fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
-frame-support = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-frame-system = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
+frame-support = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+frame-system = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
 
-pallet-balances = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-pallet-transaction-payment = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
-pallet-timestamp = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.23' }
+pallet-balances = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+pallet-transaction-payment = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
+pallet-timestamp = { git = 'https://github.com/paritytech/substrate', branch = 'polkadot-v0.9.24' }
 
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 pallet-common = { path = '../../pallets/common' }
 pallet-structure = { path = '../../pallets/structure' }
modifiedruntime/unique/Cargo.tomldiffbeforeafterboth
--- a/runtime/unique/Cargo.toml
+++ b/runtime/unique/Cargo.toml
@@ -10,7 +10,7 @@
 license = 'GPLv3'
 name = 'unique-runtime'
 repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.23'
+version = '0.9.24'
 
 [package.metadata.docs.rs]
 targets = ['x86_64-unknown-linux-gnu']
@@ -134,39 +134,39 @@
 default-features = false
 git = "https://github.com/paritytech/substrate"
 optional = true
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-try-runtime]
 default-features = false
 git = 'https://github.com/paritytech/substrate'
 optional = true
-branch = 'polkadot-v0.9.23'
+branch = 'polkadot-v0.9.24'
 
 [dependencies.frame-executive]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-support]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system-benchmarking]
 default-features = false
 git = "https://github.com/paritytech/substrate"
 optional = true
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.frame-system-rpc-runtime-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.hex-literal]
 optional = true
@@ -181,12 +181,12 @@
 [dependencies.pallet-aura]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-balances]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 # Contracts specific packages
 # [dependencies.pallet-contracts]
@@ -210,32 +210,32 @@
 [dependencies.pallet-randomness-collective-flip]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-sudo]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-timestamp]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-transaction-payment]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-transaction-payment-rpc-runtime-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.pallet-treasury]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 # [dependencies.pallet-vesting]
 # default-features = false
@@ -245,67 +245,67 @@
 [dependencies.sp-arithmetic]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-api]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-block-builder]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-core]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-consensus-aura]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-inherents]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-io]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-offchain]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-runtime]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-session]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-std]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-transaction-pool]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.sp-version]
 default-features = false
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.smallvec]
 version = '1.6.1'
@@ -316,46 +316,46 @@
 [dependencies.parachain-info]
 default-features = false
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 
 [dependencies.cumulus-pallet-aura-ext]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-parachain-system]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-core]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-xcm]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-dmp-queue]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-pallet-xcmp-queue]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-utility]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 [dependencies.cumulus-primitives-timestamp]
 git = "https://github.com/paritytech/cumulus"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
 default-features = false
 
 ################################################################################
@@ -363,32 +363,32 @@
 
 [dependencies.polkadot-parachain]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm-builder]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.xcm-executor]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.pallet-xcm]
 git = "https://github.com/paritytech/polkadot"
-branch = "release-v0.9.23"
+branch = "release-v0.9.24"
 default-features = false
 
 [dependencies.orml-vesting]
 git = "https://github.com/uniquenetwork/open-runtime-module-library"
-branch = "unique-polkadot-v0.9.23"
+branch = "unique-polkadot-v0.9.24"
 version = "0.4.1-dev"
 default-features = false
 
@@ -416,21 +416,21 @@
 pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }
 pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }
 # pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }
-pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.23", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
+pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.24", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }
 pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }
 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", branch = "unique-polkadot-v0.9.23" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
-fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.23" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.24" }
 
 ################################################################################
 # Build Dependencies
 
 [build-dependencies.substrate-wasm-builder]
 git = "https://github.com/paritytech/substrate"
-branch = "polkadot-v0.9.23"
+branch = "polkadot-v0.9.24"
modifiedruntime/unique/src/lib.rsdiffbeforeafterboth
--- a/runtime/unique/src/lib.rs
+++ b/runtime/unique/src/lib.rs
@@ -190,7 +190,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 923000,
+	spec_version: 924000,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
modifiedtests/README.mddiffbeforeafterboth
--- a/tests/README.md
+++ b/tests/README.md
@@ -5,10 +5,10 @@
 1. Checkout polkadot in sibling folder with this project
 ```bash
 git clone https://github.com/paritytech/polkadot.git && cd polkadot
-git checkout release-v0.9.23
+git checkout release-v0.9.24
 ```
 
-2. Build with nightly-2021-11-11
+2. Build with nightly-2022-05-11
 ```bash
 cargo build --release
 ```
modifiedtests/package.jsondiffbeforeafterboth
--- a/tests/package.json
+++ b/tests/package.json
@@ -37,7 +37,7 @@
     "testUnnesting": "mocha --timeout 9999999 -r ts-node/register ./**/unnest.test.ts",
     "testStructure": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/**.test.ts",
     "testProperties": "mocha --timeout 9999999 -r ts-node/register ./**/properties.test.ts",
-    "testMigrationStructure": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/migration-check.test.ts",
+    "testMigration": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/migration-check.test.ts",
     "testRmrk": "mocha --timeout 9999999 -r ts-node/register ./**/rmrk/**.test.ts",
     "testAddCollectionAdmin": "mocha --timeout 9999999 -r ts-node/register ./**/addCollectionAdmin.test.ts",
     "testSetSchemaVersion": "mocha --timeout 9999999 -r ts-node/register ./**/setSchemaVersion.test.ts",
modifiedtests/src/nesting/migration-check.test.tsdiffbeforeafterboth
--- a/tests/src/nesting/migration-check.test.ts
+++ b/tests/src/nesting/migration-check.test.ts
@@ -1,6 +1,6 @@
 import {expect} from 'chai';
-import usingApi, {submitTransactionAsync} from '../substrate/substrate-api';
-import {getCreateCollectionResult} from '../util/helpers';
+import usingApi, {executeTransaction, submitTransactionAsync} from '../substrate/substrate-api';
+import {getCreateCollectionResult, getCreateItemResult, normalizeAccountId} from '../util/helpers';
 import {IKeyringPair} from '@polkadot/types/types';
 import {strToUTF16} from '../util/util';
 import waitNewBlocks from '../substrate/wait-new-blocks';
@@ -8,11 +8,11 @@
 import find from 'find-process';
 
 // todo un-skip for migrations
-describe.skip('Migration testing for pallet-common', () => {
+describe.skip('Migration testing', () => {
   let alice: IKeyringPair;
 
   before(async() => {
-    await usingApi(async (api, privateKeyWrapper) => {
+    await usingApi(async (_, privateKeyWrapper) => {
       alice = privateKeyWrapper('//Alice');
     });
   });
@@ -21,29 +21,51 @@
     let oldVersion: number;
     let collectionId: number;
     let collectionOld: any;
+    let nftId: number;
+    let nftOld: any;
 
     await usingApi(async api => {
-      // Create a collection for comparison before and after the upgrade
-      const tx = api.tx.unique.createCollectionEx({
+      // ----------- Collection pre-upgrade ------------
+      const txCollection = api.tx.unique.createCollectionEx({
         mode: 'NFT',
         access: 'AllowList',
         name: strToUTF16('Mojave Pictures'),
         description: strToUTF16('$2.2 billion power plant!'),
         tokenPrefix: '0x0002030',
-        //offchainSchema: '0x111111',
-        //schemaVersion: 'Unique',
+        offchainSchema: '0x111111',
+        schemaVersion: 'Unique',
         limits: {
           accountTokenOwnershipLimit: 3,
         },
-        //constOnChainSchema: '0x333333',
+        constOnChainSchema: '0x333333',
+        variableOnChainSchema: '0x22222',
       });
-      const events = await submitTransactionAsync(alice, tx);
-      const result = getCreateCollectionResult(events);
-      collectionId = result.collectionId;
+      const events0 = await submitTransactionAsync(alice, txCollection);
+      const result0 = getCreateCollectionResult(events0);
+      collectionId = result0.collectionId;
 
       // Get the pre-upgrade collection info
       collectionOld = (await api.query.common.collectionById(collectionId)).toJSON();
 
+      // ---------- NFT pre-upgrade ------------
+      const txNft = api.tx.unique.createItem(
+        collectionId, 
+        normalizeAccountId(alice), 
+        {
+          NFT: {
+            owner: {substrate: alice.address},
+            constData: '0x0000',
+            variableData: '0x1111',
+          },
+        },
+      );
+      const events1 = await executeTransaction(api, alice, txNft);
+      const result1 = getCreateItemResult(events1);
+      nftId = result1.itemId;
+
+      // Get the pre-upgrade NFT data
+      nftOld = (await api.query.nonfungible.tokenData(collectionId, nftId)).toJSON();
+
       // Get the pre-upgrade spec version
       oldVersion = (api.consts.system.version.toJSON() as any).specVersion;
     });
@@ -73,7 +95,8 @@
       };
 
       let oldWarnCount = 0;
-      while (newVersion == oldVersion! && connectionFailCounter < 2) {
+      while (newVersion == oldVersion! && connectionFailCounter < 5) {
+        await new Promise(resolve => setTimeout(resolve, 12000));
         try {
           await usingApi(async api => {
             await waitNewBlocks(api);
@@ -82,32 +105,68 @@
               console.log(`Still waiting for the parachain upgrade from ${oldVersion!}...`);
               oldWarnCount = warnCount;
             }
-            await new Promise(resolve => setTimeout(resolve, 6000));
           });
         } catch (_) {
           connectionFailCounter++;
-          await new Promise(resolve => setTimeout(resolve, 12000));
         }
       }
     }
 
     await usingApi(async api => {
+      // ---------- Collection comparison -----------
       const collectionNew = (await api.query.common.collectionById(collectionId)).toJSON() as any;
 
       // Make sure the extra fields are what they should be
-      //const constOnChainSchema = await api.query.common.collectionData(collectionId, 'ConstOnChainSchema');
-      //const offchainSchema = await api.query.common.collectionData(collectionId, 'OffchainSchema');
+      expect((
+        await api.rpc.unique.collectionProperties(collectionId, ['_old_constOnChainSchema'])
+      )[0].value.toHex()).to.be.equal(collectionOld.constOnChainSchema);
+
+      expect((
+        await api.rpc.unique.collectionProperties(collectionId, ['_old_variableOnChainSchema'])
+      )[0].value.toHex()).to.be.equal(collectionOld.variableOnChainSchema);
+
+      expect((
+        await api.rpc.unique.collectionProperties(collectionId, ['_old_offchainSchema'])
+      )[0].value.toHex()).to.be.equal(collectionOld.offchainSchema);
+
+      expect((
+        await api.rpc.unique.collectionProperties(collectionId, ['_old_schemaVersion'])
+      )[0].value.toHuman()).to.be.equal(collectionOld.schemaVersion);
 
-      //expect(constOnChainSchema.toHex()).to.be.deep.equal(collectionOld.constOnChainSchema);
-      //expect(offchainSchema.toHex()).to.be.deep.equal(collectionOld.offchainSchema);
-      expect(collectionNew).to.have.nested.property('limits.nestingRule');
+      expect(collectionNew.permissions).to.be.deep.equal({
+        access: collectionOld.access,
+        mintMode: collectionOld.mintMode,
+        nesting: null,
+      });
+
+      expect(collectionNew.externalCollection).to.be.equal(false);
 
       // Get rid of extra fields to perform comparison on the rest of the collection
-      delete collectionNew.limits.nestingRule;
-      //delete collectionOld.constOnChainSchema;
-      //delete collectionOld.offchainSchema;
+      delete collectionNew.permissions;
+      delete collectionNew.externalCollection;
+      delete collectionOld.schemaVersion;
+      delete collectionOld.constOnChainSchema;
+      delete collectionOld.variableOnChainSchema;
+      delete collectionOld.offchainSchema;
+      delete collectionOld.mintMode;
+      delete collectionOld.access;
+      delete collectionOld.metaUpdatePermission; // todo look into, doesn't migrate
 
       expect(collectionNew).to.be.deep.equal(collectionOld);
+
+      // ---------- NFT comparison -----------
+      const nftNew = (await api.query.nonfungible.tokenData(collectionId, nftId)).toJSON() as any;
+
+      // Make sure the extra fields are what they should be
+      expect((await api.rpc.unique.tokenProperties(collectionId, nftId, ['_old_constData']))[0].value.toHex()).to.be.equal(nftOld.constData);
+
+      expect((await api.rpc.unique.tokenProperties(collectionId, nftId, ['_old_variableData']))[0].value.toHex()).to.be.equal(nftOld.variableData);
+
+      // Get rid of extra fields to perform comparison on the rest of the NFT
+      delete nftOld.constData;
+      delete nftOld.variableData;
+
+      expect(nftNew).to.be.deep.equal(nftOld);
     });
   });
 });
addedtests/src/refungible.test.tsdiffbeforeafterboth
--- /dev/null
+++ b/tests/src/refungible.test.ts
@@ -0,0 +1,165 @@
+// 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 {default as usingApi} from './substrate/substrate-api';
+import {IKeyringPair} from '@polkadot/types/types';
+import {
+  createCollectionExpectSuccess,
+  getBalance,
+  createMultipleItemsExpectSuccess,
+  isTokenExists,
+  getLastTokenId,
+  getAllowance,
+  approve,
+  transferFrom,
+  createCollection,
+  createRefungibleToken,
+  transfer,
+  burnItem,
+} from './util/helpers';
+
+import chai from 'chai';
+import chaiAsPromised from 'chai-as-promised';
+chai.use(chaiAsPromised);
+const expect = chai.expect;
+
+let alice: IKeyringPair;
+let bob: IKeyringPair;
+
+describe('integration test: Refungible functionality:', () => {
+  before(async () => {
+    await usingApi(async (api, privateKeyWrapper) => {
+      alice = privateKeyWrapper('//Alice');
+      bob = privateKeyWrapper('//Bob');
+    });
+  });
+
+  it('Create refungible collection and token', async () => {
+    await usingApi(async api => {
+      const createCollectionResult = await createCollection(api, alice, {mode: {type: 'ReFungible'}});
+      expect(createCollectionResult.success).to.be.true;    
+      const collectionId  = createCollectionResult.collectionId;
+
+      const itemCountBefore = await getLastTokenId(api, collectionId);
+      const result = await createRefungibleToken(api, alice, collectionId, 100n);
+
+      const itemCountAfter = await getLastTokenId(api, collectionId);
+
+      // What to expect
+      // tslint:disable-next-line:no-unused-expression
+      expect(result.success).to.be.true;
+      expect(itemCountAfter).to.be.equal(itemCountBefore + 1);
+      expect(collectionId).to.be.equal(result.collectionId);
+      expect(itemCountAfter.toString()).to.be.equal(result.itemId.toString());
+    });
+  });
+
+  it('Transfer token pieces', async () => {
+    await usingApi(async api => {
+      const collectionId = (await createCollection(api, alice, {mode: {type: 'ReFungible'}})).collectionId;
+      const tokenId = (await createRefungibleToken(api, alice, collectionId, 100n)).itemId;
+
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(100n);
+      expect(await transfer(api, collectionId, tokenId, alice, bob, 60n)).to.be.true;
+
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(40n);
+      expect(await getBalance(api, collectionId, bob, tokenId)).to.be.equal(60n);
+      await expect(transfer(api, collectionId, tokenId, alice, bob, 41n)).to.eventually.be.rejected;
+    });
+  });
+
+  it('Create multiple tokens', async () => {
+    const collectionId = await createCollectionExpectSuccess({mode: {type: 'ReFungible'}});
+    const args = [
+      {ReFungible: {pieces: 1}},
+      {ReFungible: {pieces: 2}},
+      {ReFungible: {pieces: 100}},
+    ];
+    await createMultipleItemsExpectSuccess(alice, collectionId, args);
+
+    await usingApi(async api => {      
+      const tokenId = await getLastTokenId(api, collectionId);
+      expect(tokenId).to.be.equal(3);
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(100n);
+    });
+  });
+
+  it('Burn some pieces', async () => {
+    await usingApi(async api => {   
+      const collectionId = (await createCollection(api, alice, {mode: {type: 'ReFungible'}})).collectionId;
+      const tokenId = (await createRefungibleToken(api, alice, collectionId, 100n)).itemId;
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.true;
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(100n);
+      expect(await burnItem(api, alice, collectionId, tokenId, 99n)).to.be.true;
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.true;
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(1n);
+    });
+  });
+
+  it('Burn all pieces', async () => {
+    await usingApi(async api => {   
+      const collectionId = (await createCollection(api, alice, {mode: {type: 'ReFungible'}})).collectionId;
+      const tokenId = (await createRefungibleToken(api, alice, collectionId, 100n)).itemId;
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.true;
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(100n);
+      expect(await burnItem(api, alice, collectionId, tokenId, 100n)).to.be.true;
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.false;
+    });
+  });
+
+  it('Burn some pieces for multiple users', async () => {
+    await usingApi(async api => {   
+      const collectionId = (await createCollection(api, alice, {mode: {type: 'ReFungible'}})).collectionId;
+      const tokenId = (await createRefungibleToken(api, alice, collectionId, 100n)).itemId;
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.true;
+
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(100n);
+      expect(await transfer(api, collectionId, tokenId, alice, bob, 60n)).to.be.true;
+
+      
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(40n);
+      expect(await getBalance(api, collectionId, bob, tokenId)).to.be.equal(60n);
+      expect(await burnItem(api, alice, collectionId, tokenId, 40n)).to.be.true;
+
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(0n);
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.true;
+      expect(await burnItem(api, bob, collectionId, tokenId, 59n)).to.be.true;
+
+      expect(await getBalance(api, collectionId, bob, tokenId)).to.be.equal(1n);
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.true;
+      expect(await burnItem(api, bob, collectionId, tokenId, 1n)).to.be.true;
+      
+      expect(await isTokenExists(api, collectionId, tokenId)).to.be.false;
+    });
+  });
+
+  it('Set allowance for token', async () => {
+    await usingApi(async api => {
+      const collectionId = (await createCollection(api, alice, {mode: {type: 'ReFungible'}})).collectionId;
+      const tokenId = (await createRefungibleToken(api, alice, collectionId, 100n)).itemId;
+
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(100n);
+
+      expect(await approve(api, collectionId, tokenId, alice, bob, 60n)).to.be.true;
+      expect(await getAllowance(api, collectionId, alice, bob, tokenId)).to.be.equal(60n);
+
+      expect(await transferFrom(api, collectionId, tokenId, bob, alice, bob,  20n)).to.be.true;
+      expect(await getBalance(api, collectionId, alice, tokenId)).to.be.equal(80n);
+      expect(await getBalance(api, collectionId, bob, tokenId)).to.be.equal(20n);
+      expect(await getAllowance(api, collectionId, alice, bob, tokenId)).to.be.equal(40n);
+    });
+  });
+});
modifiedtests/src/util/helpers.tsdiffbeforeafterboth
--- a/tests/src/util/helpers.ts
+++ b/tests/src/util/helpers.ts
@@ -318,6 +318,33 @@
   tokenPrefix: 'prefix',
 };
 
+export async function
+createCollection(
+  api: ApiPromise,
+  sender: IKeyringPair,
+  params: Partial<CreateCollectionParams> = {},
+): Promise<CreateCollectionResult> {
+  const {name, description, mode, tokenPrefix} = {...defaultCreateCollectionParams, ...params};
+
+  let modeprm = {};
+  if (mode.type === 'NFT') {
+    modeprm = {nft: null};
+  } else if (mode.type === 'Fungible') {
+    modeprm = {fungible: mode.decimalPoints};
+  } else if (mode.type === 'ReFungible') {
+    modeprm = {refungible: null};
+  }
+
+  const tx = api.tx.unique.createCollectionEx({
+    name: strToUTF16(name),
+    description: strToUTF16(description),
+    tokenPrefix: strToUTF16(tokenPrefix),
+    mode: modeprm as any,
+  });
+  const events = await submitTransactionAsync(sender, tx);
+  return getCreateCollectionResult(events);
+}
+
 export async function createCollectionExpectSuccess(params: Partial<CreateCollectionParams> = {}): Promise<number> {
   const {name, description, mode, tokenPrefix} = {...defaultCreateCollectionParams, ...params};
 
@@ -329,23 +356,7 @@
     // Run the CreateCollection transaction
     const alicePrivateKey = privateKeyWrapper('//Alice');
 
-    let modeprm = {};
-    if (mode.type === 'NFT') {
-      modeprm = {nft: null};
-    } else if (mode.type === 'Fungible') {
-      modeprm = {fungible: mode.decimalPoints};
-    } else if (mode.type === 'ReFungible') {
-      modeprm = {refungible: null};
-    }
-
-    const tx = api.tx.unique.createCollectionEx({
-      name: strToUTF16(name),
-      description: strToUTF16(description),
-      tokenPrefix: strToUTF16(tokenPrefix),
-      mode: modeprm as any,
-    });
-    const events = await submitTransactionAsync(alicePrivateKey, tx);
-    const result = getCreateCollectionResult(events);
+    const result = await createCollection(api, alicePrivateKey, params);
 
     // Get number of collections after the transaction
     const collectionCountAfter = await getCreatedCollectionCount(api);
@@ -490,7 +501,7 @@
   return unused;
 }
 
-export async function getAllowance(api: ApiPromise, collectionId: number, owner: CrossAccountId | string, approved: CrossAccountId | string, tokenId: number) {
+export async function getAllowance(api: ApiPromise, collectionId: number, owner: CrossAccountId | string | IKeyringPair, approved: CrossAccountId | string | IKeyringPair, tokenId: number) {
   return (await api.rpc.unique.allowance(collectionId, normalizeAccountId(owner), normalizeAccountId(approved), tokenId)).toBigInt();
 }
 
@@ -800,16 +811,19 @@
   ReFungible: CreateReFungibleData;
 };
 
-export async function burnItemExpectSuccess(sender: IKeyringPair, collectionId: number, tokenId: number, value = 1) {
+export async function burnItem(api: ApiPromise, sender: IKeyringPair, collectionId: number, tokenId: number, value: number | bigint) : Promise<boolean> {
+  const tx = api.tx.unique.burnItem(collectionId, tokenId, value);
+  const events = await submitTransactionAsync(sender, tx);
+  return getGenericResult(events).success;
+}
+
+export async function burnItemExpectSuccess(sender: IKeyringPair, collectionId: number, tokenId: number, value: number | bigint = 1) {
   await usingApi(async (api) => {
     const balanceBefore = await getBalance(api, collectionId, normalizeAccountId(sender), tokenId);
     // if burning token by admin - use adminButnItemExpectSuccess
     expect(balanceBefore >= BigInt(value)).to.be.true;
 
-    const tx = api.tx.unique.burnItem(collectionId, tokenId, value);
-    const events = await submitTransactionAsync(sender, tx);
-    const result = getGenericResult(events);
-    expect(result.success).to.be.true;
+    expect(await burnItem(api, sender, collectionId, tokenId, value)).to.be.true;
 
     const balanceAfter = await getBalance(api, collectionId, normalizeAccountId(sender), tokenId);
     expect(balanceAfter + BigInt(value)).to.be.equal(balanceBefore);
@@ -817,17 +831,26 @@
 }
 
 export async function
+approve(
+  api: ApiPromise,
+  collectionId: number,
+  tokenId: number, owner: IKeyringPair, approved: CrossAccountId | string | IKeyringPair, amount: number | bigint,
+) {
+  const approveUniqueTx = api.tx.unique.approve(normalizeAccountId(approved), collectionId, tokenId, amount);
+  const events = await submitTransactionAsync(owner, approveUniqueTx);
+  return getGenericResult(events).success;
+}
+
+export async function
 approveExpectSuccess(
   collectionId: number,
   tokenId: number, owner: IKeyringPair, approved: CrossAccountId | string, amount: number | bigint = 1,
 ) {
   await usingApi(async (api: ApiPromise) => {
-    const approveUniqueTx = api.tx.unique.approve(normalizeAccountId(approved), collectionId, tokenId, amount);
-    const events = await submitTransactionAsync(owner, approveUniqueTx);
-    const result = getGenericResult(events);
-    expect(result.success).to.be.true;
+    const result = await approve(api, collectionId, tokenId, owner, approved, amount);
+    expect(result).to.be.true;
 
-    expect(await getAllowance(api, collectionId, owner.address, approved, tokenId)).to.be.equal(BigInt(amount));
+    expect(await getAllowance(api, collectionId, owner, approved, tokenId)).to.be.equal(BigInt(amount));
   });
 }
 
@@ -846,6 +869,23 @@
 }
 
 export async function
+transferFrom(
+  api: ApiPromise,
+  collectionId: number,
+  tokenId: number,
+  accountApproved: IKeyringPair,
+  accountFrom: IKeyringPair | CrossAccountId,
+  accountTo: IKeyringPair | CrossAccountId,
+  value: number | bigint,
+) {
+  const from = normalizeAccountId(accountFrom);
+  const to = normalizeAccountId(accountTo);
+  const transferFromTx = api.tx.unique.transferFrom(from, to, collectionId, tokenId, value);
+  const events = await submitTransactionAsync(accountApproved, transferFromTx);
+  return getGenericResult(events).success;
+}
+
+export async function
 transferFromExpectSuccess(
   collectionId: number,
   tokenId: number,
@@ -862,11 +902,7 @@
     if (type === 'Fungible' || type === 'ReFungible') {
       balanceBefore = await getBalance(api, collectionId, to, tokenId);
     }
-    const transferFromTx = api.tx.unique.transferFrom(normalizeAccountId(accountFrom), to, collectionId, tokenId, value);
-    const events = await submitTransactionAsync(accountApproved, transferFromTx);
-    const result = getGenericResult(events);
-    // tslint:disable-next-line:no-unused-expression
-    expect(result.success).to.be.true;
+    expect(await transferFrom(api, collectionId, tokenId, accountApproved, accountFrom, accountTo, value)).to.be.true;
     if (type === 'NFT') {
       expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal(to);
     }
@@ -1071,6 +1107,20 @@
 }
 
 export async function
+transfer(
+  api: ApiPromise,
+  collectionId: number,
+  tokenId: number,
+  sender: IKeyringPair,
+  recipient: IKeyringPair | CrossAccountId,
+  value: number | bigint,
+) : Promise<boolean> {
+  const transferTx = api.tx.unique.transfer(normalizeAccountId(recipient), collectionId, tokenId, value);
+  const events = await executeTransaction(api, sender, transferTx);
+  return getGenericResult(events).success;
+}
+
+export async function
 transferExpectSuccess(
   collectionId: number,
   tokenId: number,
@@ -1084,13 +1134,14 @@
     const to = normalizeAccountId(recipient);
 
     let balanceBefore = 0n;
-    if (type === 'Fungible') {
+    if (type === 'Fungible' || type === 'ReFungible') {
       balanceBefore = await getBalance(api, collectionId, to, tokenId);
     }
-    const transferTx = api.tx.unique.transfer(to, collectionId, tokenId, value);
-    const events = await executeTransaction(api, sender, transferTx);
 
+    const transferTx = api.tx.unique.transfer(normalizeAccountId(recipient), collectionId, tokenId, value);
+    const events = await executeTransaction(api, sender, transferTx);
     const result = getTransferResult(api, events);
+
     expect(result.collectionId).to.be.equal(collectionId);
     expect(result.itemId).to.be.equal(tokenId);
     expect(result.sender).to.be.deep.equal(normalizeAccountId(sender.address));
@@ -1100,7 +1151,7 @@
     if (type === 'NFT') {
       expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal(to);
     }
-    if (type === 'Fungible') {
+    if (type === 'Fungible' || type === 'ReFungible') {
       const balanceAfter = await getBalance(api, collectionId, to, tokenId);
       if (JSON.stringify(to) !== JSON.stringify(from)) {
         expect(balanceAfter - balanceBefore).to.be.equal(BigInt(value));
@@ -1108,9 +1159,6 @@
         expect(balanceAfter).to.be.equal(balanceBefore);
       }
     }
-    if (type === 'ReFungible') {
-      expect(await getBalance(api, collectionId, to, tokenId) >= value).to.be.true;
-    }
   });
 }
 
@@ -1151,7 +1199,7 @@
 export async function getBalance(
   api: ApiPromise,
   collectionId: number,
-  owner: string | CrossAccountId,
+  owner: string | CrossAccountId | IKeyringPair,
   token: number,
 ): Promise<bigint> {
   return (await api.rpc.unique.balance(collectionId, normalizeAccountId(owner), token)).toBigInt();
@@ -1226,6 +1274,16 @@
   });
 }
 
+export async function createMultipleItemsExpectSuccess(sender: IKeyringPair, collectionId: number, itemsData: any, owner: CrossAccountId | string = sender.address) {
+  await usingApi(async (api) => {
+    const to = normalizeAccountId(owner);
+    const tx = api.tx.unique.createMultipleItems(collectionId, to, itemsData);
+
+    const events = await submitTransactionAsync(sender, tx);
+    expect(getGenericResult(events).success).to.be.true;
+  });
+}
+
 export async function createMultipleItemsWithPropsExpectSuccess(sender: IKeyringPair, collectionId: number, itemsData: any, owner: CrossAccountId | string = sender.address) {
   await usingApi(async (api) => {
     const to = normalizeAccountId(owner);
@@ -1359,6 +1417,14 @@
   return newItemId;
 }
 
+export async function createRefungibleToken(api: ApiPromise, sender: IKeyringPair, collectionId: number, amount: bigint, owner: CrossAccountId | IKeyringPair | string = sender.address) : Promise<CreateItemResult> {
+  const createData = {refungible: {pieces: amount}};
+  const tx = api.tx.unique.createItem(collectionId, normalizeAccountId(owner), createData as any);
+
+  const events = await submitTransactionAsync(sender, tx);
+  return  getCreateItemResult(events);
+}
+
 export async function createItemExpectFailure(sender: IKeyringPair, collectionId: number, createMode: string, owner: CrossAccountId | string = sender.address) {
   await usingApi(async (api) => {
     const tx = api.tx.unique.createItem(collectionId, normalizeAccountId(owner), createMode);