diff --git a/polkadot/Cargo.lock b/polkadot/Cargo.lock
index fcb50982c58ef777a01dbe2aad777c174fad8369..ac2bd158e6160f1b1a34b5b8611021f90a056680 100644
--- a/polkadot/Cargo.lock
+++ b/polkadot/Cargo.lock
@@ -410,7 +410,7 @@ dependencies = [
 [[package]]
 name = "beefy-gadget"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -447,7 +447,7 @@ dependencies = [
 [[package]]
 name = "beefy-gadget-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "beefy-gadget",
  "futures",
@@ -467,7 +467,7 @@ dependencies = [
 [[package]]
 name = "beefy-merkle-tree"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "sp-api",
  "sp-beefy",
@@ -1990,7 +1990,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 [[package]]
 name = "fork-tree"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
 ]
@@ -2014,7 +2014,7 @@ checksum = "85dcb89d2b10c5f6133de2efd8c11959ce9dbb46a2f7a4cab208c4eeda6ce1ab"
 [[package]]
 name = "frame-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2037,7 +2037,7 @@ dependencies = [
 [[package]]
 name = "frame-benchmarking-cli"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "Inflector",
  "array-bytes",
@@ -2089,7 +2089,7 @@ dependencies = [
 [[package]]
 name = "frame-election-provider-solution-type"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -2100,7 +2100,7 @@ dependencies = [
 [[package]]
 name = "frame-election-provider-support"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-election-provider-solution-type",
  "frame-support",
@@ -2116,7 +2116,7 @@ dependencies = [
 [[package]]
 name = "frame-executive"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2145,7 +2145,7 @@ dependencies = [
 [[package]]
 name = "frame-remote-externalities"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "env_logger 0.9.0",
  "log",
@@ -2162,7 +2162,7 @@ dependencies = [
 [[package]]
 name = "frame-support"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "bitflags",
  "frame-metadata",
@@ -2194,7 +2194,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "Inflector",
  "cfg-expr",
@@ -2208,7 +2208,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural-tools"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support-procedural-tools-derive",
  "proc-macro-crate",
@@ -2220,7 +2220,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural-tools-derive"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2230,7 +2230,7 @@ dependencies = [
 [[package]]
 name = "frame-support-test"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-support-test-pallet",
@@ -2253,7 +2253,7 @@ dependencies = [
 [[package]]
 name = "frame-support-test-pallet"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2264,7 +2264,7 @@ dependencies = [
 [[package]]
 name = "frame-system"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "log",
@@ -2282,7 +2282,7 @@ dependencies = [
 [[package]]
 name = "frame-system-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -2297,7 +2297,7 @@ dependencies = [
 [[package]]
 name = "frame-system-rpc-runtime-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -2306,7 +2306,7 @@ dependencies = [
 [[package]]
 name = "frame-try-runtime"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "parity-scale-codec",
@@ -2477,7 +2477,7 @@ dependencies = [
 [[package]]
 name = "generate-bags"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "chrono",
  "frame-election-provider-support",
@@ -4083,7 +4083,7 @@ dependencies = [
 [[package]]
 name = "mmr-gadget"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "log",
@@ -4103,7 +4103,7 @@ dependencies = [
 [[package]]
 name = "mmr-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "anyhow",
  "jsonrpsee",
@@ -4608,7 +4608,7 @@ checksum = "20448fd678ec04e6ea15bbe0476874af65e98a01515d667aa49f1434dc44ebf4"
 [[package]]
 name = "pallet-assets"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4622,7 +4622,7 @@ dependencies = [
 [[package]]
 name = "pallet-authority-discovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -4638,7 +4638,7 @@ dependencies = [
 [[package]]
 name = "pallet-authorship"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -4653,7 +4653,7 @@ dependencies = [
 [[package]]
 name = "pallet-babe"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4677,7 +4677,7 @@ dependencies = [
 [[package]]
 name = "pallet-bags-list"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -4697,7 +4697,7 @@ dependencies = [
 [[package]]
 name = "pallet-bags-list-remote-tests"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-election-provider-support",
  "frame-remote-externalities",
@@ -4716,7 +4716,7 @@ dependencies = [
 [[package]]
 name = "pallet-balances"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4731,7 +4731,7 @@ dependencies = [
 [[package]]
 name = "pallet-beefy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -4747,7 +4747,7 @@ dependencies = [
 [[package]]
 name = "pallet-beefy-mmr"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "beefy-merkle-tree",
@@ -4770,7 +4770,7 @@ dependencies = [
 [[package]]
 name = "pallet-bounties"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4788,7 +4788,7 @@ dependencies = [
 [[package]]
 name = "pallet-child-bounties"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4807,7 +4807,7 @@ dependencies = [
 [[package]]
 name = "pallet-collective"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4824,7 +4824,7 @@ dependencies = [
 [[package]]
 name = "pallet-conviction-voting"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "assert_matches",
  "frame-benchmarking",
@@ -4841,7 +4841,7 @@ dependencies = [
 [[package]]
 name = "pallet-democracy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4859,7 +4859,7 @@ dependencies = [
 [[package]]
 name = "pallet-election-provider-multi-phase"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -4883,7 +4883,7 @@ dependencies = [
 [[package]]
 name = "pallet-election-provider-support-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -4896,7 +4896,7 @@ dependencies = [
 [[package]]
 name = "pallet-elections-phragmen"
 version = "5.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4914,13 +4914,14 @@ dependencies = [
 [[package]]
 name = "pallet-fast-unstake"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
  "frame-support",
  "frame-system",
  "log",
+ "pallet-staking",
  "parity-scale-codec",
  "scale-info",
  "sp-io",
@@ -4932,7 +4933,7 @@ dependencies = [
 [[package]]
 name = "pallet-grandpa"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4955,7 +4956,7 @@ dependencies = [
 [[package]]
 name = "pallet-identity"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "enumflags2",
  "frame-benchmarking",
@@ -4971,7 +4972,7 @@ dependencies = [
 [[package]]
 name = "pallet-im-online"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4991,7 +4992,7 @@ dependencies = [
 [[package]]
 name = "pallet-indices"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5008,7 +5009,7 @@ dependencies = [
 [[package]]
 name = "pallet-membership"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5025,7 +5026,7 @@ dependencies = [
 [[package]]
 name = "pallet-mmr"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5042,7 +5043,7 @@ dependencies = [
 [[package]]
 name = "pallet-multisig"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5058,7 +5059,7 @@ dependencies = [
 [[package]]
 name = "pallet-nis"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5074,7 +5075,7 @@ dependencies = [
 [[package]]
 name = "pallet-nomination-pools"
 version = "1.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5091,7 +5092,7 @@ dependencies = [
 [[package]]
 name = "pallet-nomination-pools-benchmarking"
 version = "1.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5111,7 +5112,7 @@ dependencies = [
 [[package]]
 name = "pallet-nomination-pools-runtime-api"
 version = "1.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -5121,7 +5122,7 @@ dependencies = [
 [[package]]
 name = "pallet-offences"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5138,7 +5139,7 @@ dependencies = [
 [[package]]
 name = "pallet-offences-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5161,7 +5162,7 @@ dependencies = [
 [[package]]
 name = "pallet-preimage"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5178,7 +5179,7 @@ dependencies = [
 [[package]]
 name = "pallet-proxy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5193,7 +5194,7 @@ dependencies = [
 [[package]]
 name = "pallet-ranked-collective"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5211,7 +5212,7 @@ dependencies = [
 [[package]]
 name = "pallet-recovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5226,7 +5227,7 @@ dependencies = [
 [[package]]
 name = "pallet-referenda"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "assert_matches",
  "frame-benchmarking",
@@ -5245,7 +5246,7 @@ dependencies = [
 [[package]]
 name = "pallet-scheduler"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5261,7 +5262,7 @@ dependencies = [
 [[package]]
 name = "pallet-session"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5282,7 +5283,7 @@ dependencies = [
 [[package]]
 name = "pallet-session-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5298,7 +5299,7 @@ dependencies = [
 [[package]]
 name = "pallet-society"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5312,7 +5313,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5320,6 +5321,7 @@ dependencies = [
  "frame-system",
  "log",
  "pallet-authorship",
+ "pallet-bags-list",
  "pallet-session",
  "parity-scale-codec",
  "rand_chacha 0.2.2",
@@ -5335,7 +5337,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking-reward-curve"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -5346,7 +5348,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking-reward-fn"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "log",
  "sp-arithmetic",
@@ -5355,7 +5357,7 @@ dependencies = [
 [[package]]
 name = "pallet-state-trie-migration"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5372,7 +5374,7 @@ dependencies = [
 [[package]]
 name = "pallet-sudo"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5386,7 +5388,7 @@ dependencies = [
 [[package]]
 name = "pallet-timestamp"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5404,7 +5406,7 @@ dependencies = [
 [[package]]
 name = "pallet-tips"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5423,7 +5425,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5439,7 +5441,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "jsonrpsee",
  "pallet-transaction-payment-rpc-runtime-api",
@@ -5455,7 +5457,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment-rpc-runtime-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "pallet-transaction-payment",
  "parity-scale-codec",
@@ -5467,7 +5469,7 @@ dependencies = [
 [[package]]
 name = "pallet-treasury"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5484,7 +5486,7 @@ dependencies = [
 [[package]]
 name = "pallet-utility"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5500,7 +5502,7 @@ dependencies = [
 [[package]]
 name = "pallet-vesting"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5515,7 +5517,7 @@ dependencies = [
 [[package]]
 name = "pallet-whitelist"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8286,7 +8288,7 @@ dependencies = [
 [[package]]
 name = "sc-allocator"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "log",
  "sp-core",
@@ -8297,7 +8299,7 @@ dependencies = [
 [[package]]
 name = "sc-authority-discovery"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures",
@@ -8324,7 +8326,7 @@ dependencies = [
 [[package]]
 name = "sc-basic-authorship"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "futures-timer",
@@ -8347,7 +8349,7 @@ dependencies = [
 [[package]]
 name = "sc-block-builder"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "sc-client-api",
@@ -8363,7 +8365,7 @@ dependencies = [
 [[package]]
 name = "sc-chain-spec"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "impl-trait-for-tuples",
  "memmap2",
@@ -8380,7 +8382,7 @@ dependencies = [
 [[package]]
 name = "sc-chain-spec-derive"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -8391,7 +8393,7 @@ dependencies = [
 [[package]]
 name = "sc-cli"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "chrono",
@@ -8431,7 +8433,7 @@ dependencies = [
 [[package]]
 name = "sc-client-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "fnv",
  "futures",
@@ -8459,7 +8461,7 @@ dependencies = [
 [[package]]
 name = "sc-client-db"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "hash-db",
  "kvdb",
@@ -8484,7 +8486,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures",
@@ -8508,7 +8510,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-babe"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "fork-tree",
@@ -8549,7 +8551,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-babe-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "jsonrpsee",
@@ -8571,7 +8573,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-epochs"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "fork-tree",
  "parity-scale-codec",
@@ -8584,7 +8586,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-slots"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures",
@@ -8608,7 +8610,7 @@ dependencies = [
 [[package]]
 name = "sc-executor"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "lru",
  "parity-scale-codec",
@@ -8632,7 +8634,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-common"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "sc-allocator",
  "sp-maybe-compressed-blob",
@@ -8645,7 +8647,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-wasmi"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "log",
  "sc-allocator",
@@ -8658,7 +8660,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-wasmtime"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "cfg-if",
  "libc",
@@ -8675,7 +8677,7 @@ dependencies = [
 [[package]]
 name = "sc-finality-grandpa"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "ahash",
  "array-bytes",
@@ -8716,7 +8718,7 @@ dependencies = [
 [[package]]
 name = "sc-finality-grandpa-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "finality-grandpa",
  "futures",
@@ -8737,7 +8739,7 @@ dependencies = [
 [[package]]
 name = "sc-informant"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "ansi_term",
  "futures",
@@ -8753,7 +8755,7 @@ dependencies = [
 [[package]]
 name = "sc-keystore"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -8768,7 +8770,7 @@ dependencies = [
 [[package]]
 name = "sc-network"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -8815,7 +8817,7 @@ dependencies = [
 [[package]]
 name = "sc-network-bitswap"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "cid",
  "futures",
@@ -8835,7 +8837,7 @@ dependencies = [
 [[package]]
 name = "sc-network-common"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "bitflags",
@@ -8861,7 +8863,7 @@ dependencies = [
 [[package]]
 name = "sc-network-gossip"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "ahash",
  "futures",
@@ -8879,7 +8881,7 @@ dependencies = [
 [[package]]
 name = "sc-network-light"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "futures",
@@ -8900,7 +8902,7 @@ dependencies = [
 [[package]]
 name = "sc-network-sync"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -8931,7 +8933,7 @@ dependencies = [
 [[package]]
 name = "sc-network-transactions"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "futures",
@@ -8950,7 +8952,7 @@ dependencies = [
 [[package]]
 name = "sc-offchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "bytes",
@@ -8980,7 +8982,7 @@ dependencies = [
 [[package]]
 name = "sc-peerset"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "libp2p",
@@ -8993,7 +8995,7 @@ dependencies = [
 [[package]]
 name = "sc-proposer-metrics"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "log",
  "substrate-prometheus-endpoint",
@@ -9002,7 +9004,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "hash-db",
@@ -9032,7 +9034,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-api"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "jsonrpsee",
@@ -9055,7 +9057,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-server"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "jsonrpsee",
@@ -9068,7 +9070,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-spec-v2"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "hex",
@@ -9087,7 +9089,7 @@ dependencies = [
 [[package]]
 name = "sc-service"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "directories",
@@ -9157,7 +9159,7 @@ dependencies = [
 [[package]]
 name = "sc-state-db"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "log",
  "parity-scale-codec",
@@ -9169,7 +9171,7 @@ dependencies = [
 [[package]]
 name = "sc-sync-state-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "jsonrpsee",
  "parity-scale-codec",
@@ -9188,7 +9190,7 @@ dependencies = [
 [[package]]
 name = "sc-sysinfo"
 version = "6.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "libc",
@@ -9207,7 +9209,7 @@ dependencies = [
 [[package]]
 name = "sc-telemetry"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "chrono",
  "futures",
@@ -9225,7 +9227,7 @@ dependencies = [
 [[package]]
 name = "sc-tracing"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "ansi_term",
  "atty",
@@ -9256,7 +9258,7 @@ dependencies = [
 [[package]]
 name = "sc-tracing-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -9267,7 +9269,7 @@ dependencies = [
 [[package]]
 name = "sc-transaction-pool"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures",
@@ -9293,7 +9295,7 @@ dependencies = [
 [[package]]
 name = "sc-transaction-pool-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures",
@@ -9307,7 +9309,7 @@ dependencies = [
 [[package]]
 name = "sc-utils"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "futures-timer",
@@ -9788,7 +9790,7 @@ dependencies = [
 [[package]]
 name = "sp-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "hash-db",
  "log",
@@ -9806,7 +9808,7 @@ dependencies = [
 [[package]]
 name = "sp-api-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "blake2",
  "proc-macro-crate",
@@ -9818,7 +9820,7 @@ dependencies = [
 [[package]]
 name = "sp-application-crypto"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -9831,7 +9833,7 @@ dependencies = [
 [[package]]
 name = "sp-arithmetic"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "integer-sqrt",
  "num-traits",
@@ -9846,7 +9848,7 @@ dependencies = [
 [[package]]
 name = "sp-authority-discovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -9859,7 +9861,7 @@ dependencies = [
 [[package]]
 name = "sp-authorship"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -9871,7 +9873,7 @@ dependencies = [
 [[package]]
 name = "sp-beefy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -9888,7 +9890,7 @@ dependencies = [
 [[package]]
 name = "sp-block-builder"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -9900,7 +9902,7 @@ dependencies = [
 [[package]]
 name = "sp-blockchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "log",
@@ -9918,7 +9920,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures",
@@ -9937,7 +9939,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-babe"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "merlin",
@@ -9960,7 +9962,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-slots"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -9974,7 +9976,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-vrf"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -9987,7 +9989,7 @@ dependencies = [
 [[package]]
 name = "sp-core"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "base58",
@@ -10032,7 +10034,7 @@ dependencies = [
 [[package]]
 name = "sp-core-hashing"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "blake2",
  "byteorder",
@@ -10046,7 +10048,7 @@ dependencies = [
 [[package]]
 name = "sp-core-hashing-proc-macro"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -10057,7 +10059,7 @@ dependencies = [
 [[package]]
 name = "sp-database"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "kvdb",
  "parking_lot 0.12.1",
@@ -10066,7 +10068,7 @@ dependencies = [
 [[package]]
 name = "sp-debug-derive"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -10076,7 +10078,7 @@ dependencies = [
 [[package]]
 name = "sp-externalities"
 version = "0.13.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "environmental",
  "parity-scale-codec",
@@ -10087,7 +10089,7 @@ dependencies = [
 [[package]]
 name = "sp-finality-grandpa"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "finality-grandpa",
  "log",
@@ -10105,7 +10107,7 @@ dependencies = [
 [[package]]
 name = "sp-inherents"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "impl-trait-for-tuples",
@@ -10119,7 +10121,7 @@ dependencies = [
 [[package]]
 name = "sp-io"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "bytes",
  "ed25519-dalek",
@@ -10146,7 +10148,7 @@ dependencies = [
 [[package]]
 name = "sp-keyring"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "lazy_static",
  "sp-core",
@@ -10157,7 +10159,7 @@ dependencies = [
 [[package]]
 name = "sp-keystore"
 version = "0.13.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures",
@@ -10174,7 +10176,7 @@ dependencies = [
 [[package]]
 name = "sp-maybe-compressed-blob"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "thiserror",
  "zstd",
@@ -10183,7 +10185,7 @@ dependencies = [
 [[package]]
 name = "sp-mmr-primitives"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "ckb-merkle-mountain-range",
  "log",
@@ -10201,7 +10203,7 @@ dependencies = [
 [[package]]
 name = "sp-npos-elections"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10215,7 +10217,7 @@ dependencies = [
 [[package]]
 name = "sp-offchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "sp-api",
  "sp-core",
@@ -10225,7 +10227,7 @@ dependencies = [
 [[package]]
 name = "sp-panic-handler"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "backtrace",
  "lazy_static",
@@ -10235,7 +10237,7 @@ dependencies = [
 [[package]]
 name = "sp-rpc"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "rustc-hash",
  "serde",
@@ -10245,7 +10247,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "either",
  "hash256-std-hasher",
@@ -10267,7 +10269,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime-interface"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "bytes",
  "impl-trait-for-tuples",
@@ -10285,7 +10287,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime-interface-proc-macro"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "Inflector",
  "proc-macro-crate",
@@ -10297,7 +10299,7 @@ dependencies = [
 [[package]]
 name = "sp-session"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10311,7 +10313,7 @@ dependencies = [
 [[package]]
 name = "sp-staking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10322,7 +10324,7 @@ dependencies = [
 [[package]]
 name = "sp-state-machine"
 version = "0.13.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "hash-db",
  "log",
@@ -10344,12 +10346,12 @@ dependencies = [
 [[package]]
 name = "sp-std"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 
 [[package]]
 name = "sp-storage"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "impl-serde",
  "parity-scale-codec",
@@ -10362,7 +10364,7 @@ dependencies = [
 [[package]]
 name = "sp-timestamp"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "futures-timer",
@@ -10378,7 +10380,7 @@ dependencies = [
 [[package]]
 name = "sp-tracing"
 version = "6.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "sp-std",
@@ -10390,7 +10392,7 @@ dependencies = [
 [[package]]
 name = "sp-transaction-pool"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "sp-api",
  "sp-runtime",
@@ -10399,7 +10401,7 @@ dependencies = [
 [[package]]
 name = "sp-transaction-storage-proof"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "log",
@@ -10415,7 +10417,7 @@ dependencies = [
 [[package]]
 name = "sp-trie"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "ahash",
  "hash-db",
@@ -10438,7 +10440,7 @@ dependencies = [
 [[package]]
 name = "sp-version"
 version = "5.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "impl-serde",
  "parity-scale-codec",
@@ -10455,7 +10457,7 @@ dependencies = [
 [[package]]
 name = "sp-version-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "parity-scale-codec",
  "proc-macro2",
@@ -10466,7 +10468,7 @@ dependencies = [
 [[package]]
 name = "sp-wasm-interface"
 version = "7.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "impl-trait-for-tuples",
  "log",
@@ -10479,7 +10481,7 @@ dependencies = [
 [[package]]
 name = "sp-weights"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "impl-trait-for-tuples",
  "parity-scale-codec",
@@ -10694,7 +10696,7 @@ dependencies = [
 [[package]]
 name = "substrate-build-script-utils"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "platforms",
 ]
@@ -10702,7 +10704,7 @@ dependencies = [
 [[package]]
 name = "substrate-frame-rpc-system"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "frame-system-rpc-runtime-api",
  "futures",
@@ -10723,7 +10725,7 @@ dependencies = [
 [[package]]
 name = "substrate-prometheus-endpoint"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures-util",
  "hyper",
@@ -10736,7 +10738,7 @@ dependencies = [
 [[package]]
 name = "substrate-rpc-client"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "async-trait",
  "jsonrpsee",
@@ -10749,7 +10751,7 @@ dependencies = [
 [[package]]
 name = "substrate-state-trie-migration-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "jsonrpsee",
  "log",
@@ -10770,7 +10772,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-client"
 version = "2.0.1"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "array-bytes",
  "async-trait",
@@ -10796,7 +10798,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-utils"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "futures",
  "substrate-test-utils-derive",
@@ -10806,7 +10808,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-utils-derive"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -10817,7 +10819,7 @@ dependencies = [
 [[package]]
 name = "substrate-wasm-builder"
 version = "5.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "ansi_term",
  "build-helper",
@@ -11528,7 +11530,7 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
 [[package]]
 name = "try-runtime-cli"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#0a27e54514338b71204e7321192fbd32dae3b950"
+source = "git+https://github.com/paritytech/substrate?branch=master#d0540a79967cb06cd7598a4965c7c06afc788b0c"
 dependencies = [
  "clap",
  "frame-remote-externalities",
diff --git a/polkadot/runtime/common/src/lib.rs b/polkadot/runtime/common/src/lib.rs
index ac5fc69a28e46964c626edc8189bd983e96ceb12..3fb1d902130729b02ce0cd3a55cc3d0f96d69c30 100644
--- a/polkadot/runtime/common/src/lib.rs
+++ b/polkadot/runtime/common/src/lib.rs
@@ -40,7 +40,7 @@ mod mock;
 use frame_support::{
 	parameter_types,
 	traits::{ConstU32, Currency, OneSessionHandler},
-	weights::{constants::WEIGHT_PER_SECOND, Weight},
+	weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight},
 };
 use frame_system::limits;
 use primitives::v2::{AssignmentId, Balance, BlockNumber, ValidatorId, MAX_POV_SIZE};
@@ -71,7 +71,7 @@ pub const AVERAGE_ON_INITIALIZE_RATIO: Perbill = Perbill::from_percent(1);
 pub const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);
 /// The storage proof size is not limited so far.
 pub const MAXIMUM_BLOCK_WEIGHT: Weight =
-	WEIGHT_PER_SECOND.saturating_mul(2).set_proof_size(MAX_POV_SIZE as u64);
+	Weight::from_parts(WEIGHT_REF_TIME_PER_SECOND.saturating_mul(2), MAX_POV_SIZE as u64);
 
 const_assert!(NORMAL_DISPATCH_RATIO.deconstruct() >= AVERAGE_ON_INITIALIZE_RATIO.deconstruct());
 
diff --git a/polkadot/runtime/kusama/constants/src/weights/block_weights.rs b/polkadot/runtime/kusama/constants/src/weights/block_weights.rs
index 546c6426d8260aa83d4a9c7a5807cd9c17449763..7931478ee7b0423a8441ca908b292717da8cbdf8 100644
--- a/polkadot/runtime/kusama/constants/src/weights/block_weights.rs
+++ b/polkadot/runtime/kusama/constants/src/weights/block_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute an empty block.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 6_876_251
 	///   95th: 6_811_463
 	///   75th: 6_751_221
-	pub const BlockExecutionWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(6_731_894);
+	pub const BlockExecutionWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(6_731_894));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 100 µs.
 		assert!(
-			w.ref_time() >= 100u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 100u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 100 µs."
 		);
 		// At most 50 ms.
 		assert!(
-			w.ref_time() <= 50u64 * constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= 50u64 * constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 50 ms."
 		);
 	}
diff --git a/polkadot/runtime/kusama/constants/src/weights/extrinsic_weights.rs b/polkadot/runtime/kusama/constants/src/weights/extrinsic_weights.rs
index 0de0c399f78377e9cd7d851c646b8946e16725c7..f0fc7739ee27c9312c840c30d063ad16f1fed3b2 100644
--- a/polkadot/runtime/kusama/constants/src/weights/extrinsic_weights.rs
+++ b/polkadot/runtime/kusama/constants/src/weights/extrinsic_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute a NO-OP extrinsic, for example `System::remark`.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 96_279
 	///   95th: 95_584
 	///   75th: 95_005
-	pub const ExtrinsicBaseWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(94_889);
+	pub const ExtrinsicBaseWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(94_889));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 10 µs.
 		assert!(
-			w.ref_time() >= 10u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 10u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 10 µs."
 		);
 		// At most 1 ms.
 		assert!(
-			w.ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 1 ms."
 		);
 	}
diff --git a/polkadot/runtime/kusama/constants/src/weights/paritydb_weights.rs b/polkadot/runtime/kusama/constants/src/weights/paritydb_weights.rs
index dca7d348310cc412a328b58c6f08a468e728b5d7..4338d928d807a41cc60ec91d86e91c81bb253631 100644
--- a/polkadot/runtime/kusama/constants/src/weights/paritydb_weights.rs
+++ b/polkadot/runtime/kusama/constants/src/weights/paritydb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// `ParityDB` can be enabled with a feature flag, but is still experimental. These weights
 		/// are available for brave runtime engineers who may want to try this out as default.
 		pub const ParityDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 8_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 50_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 8_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 50_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/kusama/constants/src/weights/rocksdb_weights.rs b/polkadot/runtime/kusama/constants/src/weights/rocksdb_weights.rs
index 87867ebfe177fab40bbcd25f7f64bc6c60e86793..1d115d963facb39fe29d6258918fda3bc8d94900 100644
--- a/polkadot/runtime/kusama/constants/src/weights/rocksdb_weights.rs
+++ b/polkadot/runtime/kusama/constants/src/weights/rocksdb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// By default, Substrate uses `RocksDB`, so this will be the weight used throughout
 		/// the runtime.
 		pub const RocksDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 25_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 100_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 25_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 100_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/parachains/src/configuration.rs b/polkadot/runtime/parachains/src/configuration.rs
index 2ebaff1b82823851af5e45d36434571f40ad84dc..113fad1d7a57cdd130bd8decd4eef1740b085eff 100644
--- a/polkadot/runtime/parachains/src/configuration.rs
+++ b/polkadot/runtime/parachains/src/configuration.rs
@@ -19,7 +19,7 @@
 //! Configuration can change only at session boundaries and is buffered until then.
 
 use crate::shared;
-use frame_support::{pallet_prelude::*, weights::constants::WEIGHT_PER_MILLIS};
+use frame_support::{pallet_prelude::*, weights::constants::WEIGHT_REF_TIME_PER_MILLIS};
 use frame_system::pallet_prelude::*;
 use parity_scale_codec::{Decode, Encode};
 use primitives::v2::{Balance, SessionIndex, MAX_CODE_SIZE, MAX_HEAD_DATA_SIZE, MAX_POV_SIZE};
@@ -285,8 +285,10 @@ impl<BlockNumber: Default + From<u32>> Default for HostConfiguration<BlockNumber
 			hrmp_max_parachain_outbound_channels: Default::default(),
 			hrmp_max_parathread_outbound_channels: Default::default(),
 			hrmp_max_message_num_per_candidate: Default::default(),
-			ump_max_individual_weight: (20u64 * WEIGHT_PER_MILLIS)
-				.set_proof_size(MAX_POV_SIZE as u64),
+			ump_max_individual_weight: Weight::from_parts(
+				20u64 * WEIGHT_REF_TIME_PER_MILLIS,
+				MAX_POV_SIZE as u64,
+			),
 			pvf_checking_enabled: false,
 			pvf_voting_ttl: 2u32.into(),
 			minimum_validation_upgrade_delay: 2.into(),
diff --git a/polkadot/runtime/parachains/src/configuration/migration.rs b/polkadot/runtime/parachains/src/configuration/migration.rs
index d87c98f6ae7899670dd9055e6efaf6dff582d06e..2b754f1559666f6b77bd5ec199ccf22678326b1c 100644
--- a/polkadot/runtime/parachains/src/configuration/migration.rs
+++ b/polkadot/runtime/parachains/src/configuration/migration.rs
@@ -128,7 +128,7 @@ pub mod v3 {
 				hrmp_max_parathread_outbound_channels: Default::default(),
 				hrmp_max_message_num_per_candidate: Default::default(),
 				ump_max_individual_weight: OldWeight(
-					frame_support::weights::constants::WEIGHT_PER_MILLIS.ref_time() * 20,
+					frame_support::weights::constants::WEIGHT_REF_TIME_PER_MILLIS * 20,
 				),
 				pvf_checking_enabled: false,
 				pvf_voting_ttl: 2u32.into(),
diff --git a/polkadot/runtime/polkadot/constants/src/weights/block_weights.rs b/polkadot/runtime/polkadot/constants/src/weights/block_weights.rs
index 63d38650481ade7415f3a9952b25a980bcf0c5d3..b9f99d689a6506c1489b13dfc01b3b44ddc9022a 100644
--- a/polkadot/runtime/polkadot/constants/src/weights/block_weights.rs
+++ b/polkadot/runtime/polkadot/constants/src/weights/block_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute an empty block.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 6_239_600
 	///   95th: 6_178_734
 	///   75th: 6_145_812
-	pub const BlockExecutionWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(6_103_588);
+	pub const BlockExecutionWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(6_103_588));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 100 µs.
 		assert!(
-			w.ref_time() >= 100u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 100u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 100 µs."
 		);
 		// At most 50 ms.
 		assert!(
-			w.ref_time() <= 50u64 * constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= 50u64 * constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 50 ms."
 		);
 	}
diff --git a/polkadot/runtime/polkadot/constants/src/weights/extrinsic_weights.rs b/polkadot/runtime/polkadot/constants/src/weights/extrinsic_weights.rs
index 334cf008916779c35992e35d9720842e4f614d34..e56fc91084525f27c1092fbd8cef30bd470f1f50 100644
--- a/polkadot/runtime/polkadot/constants/src/weights/extrinsic_weights.rs
+++ b/polkadot/runtime/polkadot/constants/src/weights/extrinsic_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute a NO-OP extrinsic, for example `System::remark`.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 96_351
 	///   95th: 96_116
 	///   75th: 95_639
-	pub const ExtrinsicBaseWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(95_479);
+	pub const ExtrinsicBaseWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(95_479));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 10 µs.
 		assert!(
-			w.ref_time() >= 10u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 10u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 10 µs."
 		);
 		// At most 1 ms.
 		assert!(
-			w.ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 1 ms."
 		);
 	}
diff --git a/polkadot/runtime/polkadot/constants/src/weights/paritydb_weights.rs b/polkadot/runtime/polkadot/constants/src/weights/paritydb_weights.rs
index 9695b7bc7800782d371fbf237a116ea21533a9c1..95c91e5182bdaaa319e892158fc4d895d5487c74 100644
--- a/polkadot/runtime/polkadot/constants/src/weights/paritydb_weights.rs
+++ b/polkadot/runtime/polkadot/constants/src/weights/paritydb_weights.rs
@@ -57,7 +57,7 @@ pub mod constants {
 			///   99th: 14_451
 			///   95th: 12_588
 			///   75th: 11_200
-			read: 11_826 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 11_826 * constants::WEIGHT_REF_TIME_PER_NANOS,
 
 			/// Time to write one storage item.
 			/// Calculated by multiplying the *Average* of all values with `1.1` and adding `0`.
@@ -72,7 +72,7 @@ pub mod constants {
 			///   99th: 69_379
 			///   95th: 47_168
 			///   75th: 35_252
-			write: 38_052 * constants::WEIGHT_PER_NANOS.ref_time(),
+			write: 38_052 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -88,20 +88,20 @@ pub mod constants {
 		fn bound() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/polkadot/constants/src/weights/rocksdb_weights.rs b/polkadot/runtime/polkadot/constants/src/weights/rocksdb_weights.rs
index 1ed70431b9e36accc198d6d720150de9231a3e23..cfc480ce94612e2d892f5e646404e92246a397a0 100644
--- a/polkadot/runtime/polkadot/constants/src/weights/rocksdb_weights.rs
+++ b/polkadot/runtime/polkadot/constants/src/weights/rocksdb_weights.rs
@@ -56,7 +56,7 @@ pub mod constants {
 			///   99th: 32_074
 			///   95th: 26_658
 			///   75th: 19_363
-			read: 20_499 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 20_499 * constants::WEIGHT_REF_TIME_PER_NANOS,
 
 			/// Time to write one storage item.
 			/// Calculated by multiplying the *Average* of all values with `1.1` and adding `0`.
@@ -71,7 +71,7 @@ pub mod constants {
 			///   99th: 111_151
 			///   95th: 92_666
 			///   75th: 80_297
-			write: 83_471 * constants::WEIGHT_PER_NANOS.ref_time(),
+			write: 83_471 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -87,20 +87,20 @@ pub mod constants {
 		fn bound() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/rococo/constants/src/weights/block_weights.rs b/polkadot/runtime/rococo/constants/src/weights/block_weights.rs
index 6be462e2b490b48acb3d09ae4e01ffa38774ec1d..8d0f096561c40aecf72f9b10c61866d1c0213849 100644
--- a/polkadot/runtime/rococo/constants/src/weights/block_weights.rs
+++ b/polkadot/runtime/rococo/constants/src/weights/block_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute an empty block.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 5_495_378
 	///   95th: 5_453_765
 	///   75th: 5_352_587
-	pub const BlockExecutionWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(5_334_883);
+	pub const BlockExecutionWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(5_334_883));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 100 µs.
 		assert!(
-			w.ref_time() >= 100u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 100u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 100 µs."
 		);
 		// At most 50 ms.
 		assert!(
-			w.ref_time() <= 50u64 * constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= 50u64 * constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 50 ms."
 		);
 	}
diff --git a/polkadot/runtime/rococo/constants/src/weights/extrinsic_weights.rs b/polkadot/runtime/rococo/constants/src/weights/extrinsic_weights.rs
index 46d516b4461188fff6542ef79dc82773cfead15b..0993985292d82260127cc4633e9f995dd92ff5c5 100644
--- a/polkadot/runtime/rococo/constants/src/weights/extrinsic_weights.rs
+++ b/polkadot/runtime/rococo/constants/src/weights/extrinsic_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute a NO-OP extrinsic, for example `System::remark`.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 87_916
 	///   95th: 87_727
 	///   75th: 87_112
-	pub const ExtrinsicBaseWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(87_092);
+	pub const ExtrinsicBaseWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(87_092));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 10 µs.
 		assert!(
-			w.ref_time() >= 10u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 10u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 10 µs."
 		);
 		// At most 1 ms.
 		assert!(
-			w.ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 1 ms."
 		);
 	}
diff --git a/polkadot/runtime/rococo/constants/src/weights/paritydb_weights.rs b/polkadot/runtime/rococo/constants/src/weights/paritydb_weights.rs
index dca7d348310cc412a328b58c6f08a468e728b5d7..4338d928d807a41cc60ec91d86e91c81bb253631 100644
--- a/polkadot/runtime/rococo/constants/src/weights/paritydb_weights.rs
+++ b/polkadot/runtime/rococo/constants/src/weights/paritydb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// `ParityDB` can be enabled with a feature flag, but is still experimental. These weights
 		/// are available for brave runtime engineers who may want to try this out as default.
 		pub const ParityDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 8_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 50_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 8_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 50_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/rococo/constants/src/weights/rocksdb_weights.rs b/polkadot/runtime/rococo/constants/src/weights/rocksdb_weights.rs
index 87867ebfe177fab40bbcd25f7f64bc6c60e86793..1d115d963facb39fe29d6258918fda3bc8d94900 100644
--- a/polkadot/runtime/rococo/constants/src/weights/rocksdb_weights.rs
+++ b/polkadot/runtime/rococo/constants/src/weights/rocksdb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// By default, Substrate uses `RocksDB`, so this will be the weight used throughout
 		/// the runtime.
 		pub const RocksDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 25_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 100_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 25_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 100_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/test-runtime/constants/src/weights/block_weights.rs b/polkadot/runtime/test-runtime/constants/src/weights/block_weights.rs
index c004307336d903b165f253e89517323b9e0a722f..ea8a341b58bb6dd63888ea0684c8cd6e29aeb8b8 100644
--- a/polkadot/runtime/test-runtime/constants/src/weights/block_weights.rs
+++ b/polkadot/runtime/test-runtime/constants/src/weights/block_weights.rs
@@ -23,7 +23,8 @@ pub mod constants {
 
 	parameter_types! {
 		/// Importing a block with 0 Extrinsics.
-		pub const BlockExecutionWeight: Weight = constants::WEIGHT_PER_NANOS.saturating_mul(5_000_000);
+		pub const BlockExecutionWeight: Weight =
+			Weight::from_ref_time(constants::WEIGHT_REF_TIME_PER_NANOS.saturating_mul(5_000_000));
 	}
 
 	#[cfg(test)]
@@ -39,12 +40,12 @@ pub mod constants {
 
 			// At least 100 µs.
 			assert!(
-				w.ref_time() >= 100u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+				w.ref_time() >= 100u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Weight should be at least 100 µs."
 			);
 			// At most 50 ms.
 			assert!(
-				w.ref_time() <= 50u64 * constants::WEIGHT_PER_MILLIS.ref_time(),
+				w.ref_time() <= 50u64 * constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Weight should be at most 50 ms."
 			);
 		}
diff --git a/polkadot/runtime/test-runtime/constants/src/weights/extrinsic_weights.rs b/polkadot/runtime/test-runtime/constants/src/weights/extrinsic_weights.rs
index 3ce6b73d584407df7440f2d87c05fb7d0734c0f4..0512efb60e2ac062def9066ce117f7fb88a9aded 100644
--- a/polkadot/runtime/test-runtime/constants/src/weights/extrinsic_weights.rs
+++ b/polkadot/runtime/test-runtime/constants/src/weights/extrinsic_weights.rs
@@ -23,7 +23,8 @@ pub mod constants {
 
 	parameter_types! {
 		/// Executing a NO-OP `System::remarks` Extrinsic.
-		pub const ExtrinsicBaseWeight: Weight = constants::WEIGHT_PER_NANOS.saturating_mul(125_000);
+		pub const ExtrinsicBaseWeight: Weight =
+			Weight::from_ref_time(constants::WEIGHT_REF_TIME_PER_NANOS.saturating_mul(125_000));
 	}
 
 	#[cfg(test)]
@@ -39,12 +40,12 @@ pub mod constants {
 
 			// At least 10 µs.
 			assert!(
-				w.ref_time() >= 10u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+				w.ref_time() >= 10u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Weight should be at least 10 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				w.ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				w.ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/test-runtime/constants/src/weights/paritydb_weights.rs b/polkadot/runtime/test-runtime/constants/src/weights/paritydb_weights.rs
index dca7d348310cc412a328b58c6f08a468e728b5d7..4338d928d807a41cc60ec91d86e91c81bb253631 100644
--- a/polkadot/runtime/test-runtime/constants/src/weights/paritydb_weights.rs
+++ b/polkadot/runtime/test-runtime/constants/src/weights/paritydb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// `ParityDB` can be enabled with a feature flag, but is still experimental. These weights
 		/// are available for brave runtime engineers who may want to try this out as default.
 		pub const ParityDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 8_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 50_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 8_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 50_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/test-runtime/constants/src/weights/rocksdb_weights.rs b/polkadot/runtime/test-runtime/constants/src/weights/rocksdb_weights.rs
index 87867ebfe177fab40bbcd25f7f64bc6c60e86793..1d115d963facb39fe29d6258918fda3bc8d94900 100644
--- a/polkadot/runtime/test-runtime/constants/src/weights/rocksdb_weights.rs
+++ b/polkadot/runtime/test-runtime/constants/src/weights/rocksdb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// By default, Substrate uses `RocksDB`, so this will be the weight used throughout
 		/// the runtime.
 		pub const RocksDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 25_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 100_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 25_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 100_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/westend/constants/src/weights/block_weights.rs b/polkadot/runtime/westend/constants/src/weights/block_weights.rs
index ccd238cbd15320bd972c56627b3c8dafdbc5bd12..dd2e447a409a88fa5f771da316d17fc62bdb50e4 100644
--- a/polkadot/runtime/westend/constants/src/weights/block_weights.rs
+++ b/polkadot/runtime/westend/constants/src/weights/block_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute an empty block.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 5_381_058
 	///   95th: 5_313_959
 	///   75th: 5_227_090
-	pub const BlockExecutionWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(5_208_926);
+	pub const BlockExecutionWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(5_208_926));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 100 µs.
 		assert!(
-			w.ref_time() >= 100u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 100u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 100 µs."
 		);
 		// At most 50 ms.
 		assert!(
-			w.ref_time() <= 50u64 * constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= 50u64 * constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 50 ms."
 		);
 	}
diff --git a/polkadot/runtime/westend/constants/src/weights/extrinsic_weights.rs b/polkadot/runtime/westend/constants/src/weights/extrinsic_weights.rs
index 742bc677bc3a8d014d768aa5b9daa0042645fc79..c077d17a73c91de3b2ec5c998b104b5fb88e8565 100644
--- a/polkadot/runtime/westend/constants/src/weights/extrinsic_weights.rs
+++ b/polkadot/runtime/westend/constants/src/weights/extrinsic_weights.rs
@@ -35,7 +35,7 @@
 //   --header=./file_header.txt
 
 use sp_core::parameter_types;
-use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};
+use sp_weights::{constants::WEIGHT_REF_TIME_PER_NANOS, Weight};
 
 parameter_types! {
 	/// Time to execute a NO-OP extrinsic, for example `System::remark`.
@@ -51,7 +51,8 @@ parameter_types! {
 	///   99th: 87_990
 	///   95th: 87_768
 	///   75th: 87_312
-	pub const ExtrinsicBaseWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(87_248);
+	pub const ExtrinsicBaseWeight: Weight =
+		Weight::from_ref_time(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(87_248));
 }
 
 #[cfg(test)]
@@ -67,12 +68,12 @@ mod test_weights {
 
 		// At least 10 µs.
 		assert!(
-			w.ref_time() >= 10u64 * constants::WEIGHT_PER_MICROS.ref_time(),
+			w.ref_time() >= 10u64 * constants::WEIGHT_REF_TIME_PER_MICROS,
 			"Weight should be at least 10 µs."
 		);
 		// At most 1 ms.
 		assert!(
-			w.ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+			w.ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 			"Weight should be at most 1 ms."
 		);
 	}
diff --git a/polkadot/runtime/westend/constants/src/weights/paritydb_weights.rs b/polkadot/runtime/westend/constants/src/weights/paritydb_weights.rs
index dca7d348310cc412a328b58c6f08a468e728b5d7..4338d928d807a41cc60ec91d86e91c81bb253631 100644
--- a/polkadot/runtime/westend/constants/src/weights/paritydb_weights.rs
+++ b/polkadot/runtime/westend/constants/src/weights/paritydb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// `ParityDB` can be enabled with a feature flag, but is still experimental. These weights
 		/// are available for brave runtime engineers who may want to try this out as default.
 		pub const ParityDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 8_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 50_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 8_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 50_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/runtime/westend/constants/src/weights/rocksdb_weights.rs b/polkadot/runtime/westend/constants/src/weights/rocksdb_weights.rs
index 87867ebfe177fab40bbcd25f7f64bc6c60e86793..1d115d963facb39fe29d6258918fda3bc8d94900 100644
--- a/polkadot/runtime/westend/constants/src/weights/rocksdb_weights.rs
+++ b/polkadot/runtime/westend/constants/src/weights/rocksdb_weights.rs
@@ -25,8 +25,8 @@ pub mod constants {
 		/// By default, Substrate uses `RocksDB`, so this will be the weight used throughout
 		/// the runtime.
 		pub const RocksDbWeight: RuntimeDbWeight = RuntimeDbWeight {
-			read: 25_000 * constants::WEIGHT_PER_NANOS.ref_time(),
-			write: 100_000 * constants::WEIGHT_PER_NANOS.ref_time(),
+			read: 25_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
+			write: 100_000 * constants::WEIGHT_REF_TIME_PER_NANOS,
 		};
 	}
 
@@ -42,20 +42,20 @@ pub mod constants {
 		fn sane() {
 			// At least 1 µs.
 			assert!(
-				W::get().reads(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Read weight should be at least 1 µs."
 			);
 			assert!(
-				W::get().writes(1).ref_time() >= constants::WEIGHT_PER_MICROS.ref_time(),
+				W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS,
 				"Write weight should be at least 1 µs."
 			);
 			// At most 1 ms.
 			assert!(
-				W::get().reads(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Read weight should be at most 1 ms."
 			);
 			assert!(
-				W::get().writes(1).ref_time() <= constants::WEIGHT_PER_MILLIS.ref_time(),
+				W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS,
 				"Write weight should be at most 1 ms."
 			);
 		}
diff --git a/polkadot/xcm/xcm-builder/src/tests.rs b/polkadot/xcm/xcm-builder/src/tests.rs
index fe3f144e95c9cbca1048d75ac55e211a7c83139a..d26a2f008884ca4baa2a0a6e088e334de22e1e6d 100644
--- a/polkadot/xcm/xcm-builder/src/tests.rs
+++ b/polkadot/xcm/xcm-builder/src/tests.rs
@@ -15,7 +15,7 @@
 // along with Polkadot.  If not, see <http://www.gnu.org/licenses/>.
 
 use super::{mock::*, test_utils::*, *};
-use frame_support::{assert_err, weights::constants::WEIGHT_PER_SECOND};
+use frame_support::{assert_err, weights::constants::WEIGHT_REF_TIME_PER_SECOND};
 use xcm::latest::prelude::*;
 use xcm_executor::{traits::*, Config, XcmExecutor};
 
@@ -676,8 +676,8 @@ fn weight_trader_tuple_should_work() {
 	pub const PARA_2: MultiLocation = X1(Parachain(2)).into();
 
 	parameter_types! {
-		pub static HereWeightPrice: (AssetId, u128) = (Here.into().into(), WEIGHT_PER_SECOND.ref_time().into());
-		pub static PARA1WeightPrice: (AssetId, u128) = (PARA_1.into(), WEIGHT_PER_SECOND.ref_time().into());
+		pub static HereWeightPrice: (AssetId, u128) = (Here.into().into(), WEIGHT_REF_TIME_PER_SECOND.into());
+		pub static PARA1WeightPrice: (AssetId, u128) = (PARA_1.into(), WEIGHT_REF_TIME_PER_SECOND.into());
 	}
 
 	type Traders = (
diff --git a/polkadot/xcm/xcm-builder/src/weight.rs b/polkadot/xcm/xcm-builder/src/weight.rs
index 2a86f30d632ba8e55d83475daf992d07f80606fc..2ab8afde2da5d6ad19ec62d835d957837eaaaecc 100644
--- a/polkadot/xcm/xcm-builder/src/weight.rs
+++ b/polkadot/xcm/xcm-builder/src/weight.rs
@@ -17,7 +17,7 @@
 use frame_support::{
 	dispatch::GetDispatchInfo,
 	traits::{tokens::currency::Currency as CurrencyT, Get, OnUnbalanced as OnUnbalancedT},
-	weights::{constants::WEIGHT_PER_SECOND, WeightToFee as WeightToFeeT},
+	weights::{constants::WEIGHT_REF_TIME_PER_SECOND, WeightToFee as WeightToFeeT},
 };
 use parity_scale_codec::Decode;
 use sp_runtime::traits::{SaturatedConversion, Saturating, Zero};
@@ -153,7 +153,7 @@ impl<T: Get<(MultiLocation, u128)>, R: TakeRevenue> WeightTrader
 			weight, payment,
 		);
 		let (id, units_per_second) = T::get();
-		let amount = units_per_second * (weight as u128) / (WEIGHT_PER_SECOND.ref_time() as u128);
+		let amount = units_per_second * (weight as u128) / (WEIGHT_REF_TIME_PER_SECOND as u128);
 		let unused =
 			payment.checked_sub((id, amount).into()).map_err(|_| XcmError::TooExpensive)?;
 		self.0 = self.0.saturating_add(weight);
@@ -165,7 +165,7 @@ impl<T: Get<(MultiLocation, u128)>, R: TakeRevenue> WeightTrader
 		log::trace!(target: "xcm::weight", "FixedRateOfConcreteFungible::refund_weight weight: {:?}", weight);
 		let (id, units_per_second) = T::get();
 		let weight = weight.min(self.0);
-		let amount = units_per_second * (weight as u128) / (WEIGHT_PER_SECOND.ref_time() as u128);
+		let amount = units_per_second * (weight as u128) / (WEIGHT_REF_TIME_PER_SECOND as u128);
 		self.0 -= weight;
 		self.1 = self.1.saturating_sub(amount);
 		if amount > 0 {
@@ -205,7 +205,7 @@ impl<T: Get<(AssetId, u128)>, R: TakeRevenue> WeightTrader for FixedRateOfFungib
 			weight, payment,
 		);
 		let (id, units_per_second) = T::get();
-		let amount = units_per_second * (weight as u128) / (WEIGHT_PER_SECOND.ref_time() as u128);
+		let amount = units_per_second * (weight as u128) / (WEIGHT_REF_TIME_PER_SECOND as u128);
 		if amount == 0 {
 			return Ok(payment)
 		}
@@ -220,7 +220,7 @@ impl<T: Get<(AssetId, u128)>, R: TakeRevenue> WeightTrader for FixedRateOfFungib
 		log::trace!(target: "xcm::weight", "FixedRateOfFungible::refund_weight weight: {:?}", weight);
 		let (id, units_per_second) = T::get();
 		let weight = weight.min(self.0);
-		let amount = units_per_second * (weight as u128) / (WEIGHT_PER_SECOND.ref_time() as u128);
+		let amount = units_per_second * (weight as u128) / (WEIGHT_REF_TIME_PER_SECOND as u128);
 		self.0 -= weight;
 		self.1 = self.1.saturating_sub(amount);
 		if amount > 0 {
diff --git a/polkadot/xcm/xcm-simulator/example/src/parachain.rs b/polkadot/xcm/xcm-simulator/example/src/parachain.rs
index ff435a9238fdacbc57b3afb63c55373ea735a18b..d638867c281f7f37a64c2c6a39be989f189f3346 100644
--- a/polkadot/xcm/xcm-simulator/example/src/parachain.rs
+++ b/polkadot/xcm/xcm-simulator/example/src/parachain.rs
@@ -20,7 +20,7 @@ use codec::{Decode, Encode};
 use frame_support::{
 	construct_runtime, parameter_types,
 	traits::{Everything, Nothing},
-	weights::{constants::WEIGHT_PER_SECOND, Weight},
+	weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight},
 };
 use sp_core::H256;
 use sp_runtime::{
@@ -97,8 +97,8 @@ impl pallet_balances::Config for Runtime {
 }
 
 parameter_types! {
-	pub const ReservedXcmpWeight: Weight = WEIGHT_PER_SECOND.saturating_div(4);
-	pub const ReservedDmpWeight: Weight = WEIGHT_PER_SECOND.saturating_div(4);
+	pub const ReservedXcmpWeight: Weight = Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND.saturating_div(4));
+	pub const ReservedDmpWeight: Weight = Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND.saturating_div(4));
 }
 
 parameter_types! {
diff --git a/polkadot/xcm/xcm-simulator/fuzzer/src/parachain.rs b/polkadot/xcm/xcm-simulator/fuzzer/src/parachain.rs
index b8b51e57e853d5d80510c7a1da898f99f82e6be1..ce2a2698d00cc641d444561178fb892f5c7b546d 100644
--- a/polkadot/xcm/xcm-simulator/fuzzer/src/parachain.rs
+++ b/polkadot/xcm/xcm-simulator/fuzzer/src/parachain.rs
@@ -20,7 +20,7 @@ use codec::{Decode, Encode};
 use frame_support::{
 	construct_runtime, parameter_types,
 	traits::{Everything, Nothing},
-	weights::{constants::WEIGHT_PER_SECOND, Weight},
+	weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight},
 };
 use sp_core::H256;
 use sp_runtime::{
@@ -97,8 +97,8 @@ impl pallet_balances::Config for Runtime {
 }
 
 parameter_types! {
-	pub const ReservedXcmpWeight: Weight = WEIGHT_PER_SECOND.saturating_div(4);
-	pub const ReservedDmpWeight: Weight = WEIGHT_PER_SECOND.saturating_div(4);
+	pub const ReservedXcmpWeight: Weight = Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND.saturating_div(4));
+	pub const ReservedDmpWeight: Weight = Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND.saturating_div(4));
 }
 
 parameter_types! {