From e802dcad1d9b1c1b426db90da82f20a291e29c64 Mon Sep 17 00:00:00 2001
From: Qinxuan Chen <koushiro.cqx@gmail.com>
Date: Tue, 25 Jan 2022 19:42:59 +0800
Subject: [PATCH] Companion for substrate#10632 (#895)

* Companion for substrate#10632

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* cargo update -p clap

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Update substrate

* update lockfile for {"polkadot"}

Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
Co-authored-by: parity-processbot <>
---
 cumulus/Cargo.lock                         | 603 +++++++++++----------
 cumulus/client/cli/Cargo.toml              |   2 +-
 cumulus/client/cli/src/lib.rs              |  16 +-
 cumulus/parachain-template/node/Cargo.toml |   7 +-
 cumulus/parachain-template/node/src/cli.rs |  46 +-
 cumulus/polkadot-parachains/Cargo.toml     |   2 +-
 cumulus/polkadot-parachains/src/cli.rs     |  49 +-
 7 files changed, 371 insertions(+), 354 deletions(-)

diff --git a/cumulus/Cargo.lock b/cumulus/Cargo.lock
index f53c5704e4e..01a0ad13299 100644
--- a/cumulus/Cargo.lock
+++ b/cumulus/Cargo.lock
@@ -433,7 +433,7 @@ dependencies = [
 [[package]]
 name = "beefy-gadget"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "beefy-primitives",
  "fnv",
@@ -462,7 +462,7 @@ dependencies = [
 [[package]]
 name = "beefy-gadget-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "beefy-gadget",
  "beefy-primitives",
@@ -486,12 +486,12 @@ dependencies = [
 [[package]]
 name = "beefy-merkle-tree"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 
 [[package]]
 name = "beefy-primitives"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -684,7 +684,7 @@ dependencies = [
 [[package]]
 name = "bp-header-chain"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "finality-grandpa",
  "frame-support",
@@ -700,7 +700,7 @@ dependencies = [
 [[package]]
 name = "bp-message-dispatch"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-runtime",
  "frame-support",
@@ -712,7 +712,7 @@ dependencies = [
 [[package]]
 name = "bp-messages"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitvec",
  "bp-runtime",
@@ -728,7 +728,7 @@ dependencies = [
 [[package]]
 name = "bp-polkadot-core"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-messages",
  "bp-runtime",
@@ -746,7 +746,7 @@ dependencies = [
 [[package]]
 name = "bp-rococo"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-messages",
  "bp-polkadot-core",
@@ -763,7 +763,7 @@ dependencies = [
 [[package]]
 name = "bp-runtime"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "hash-db",
@@ -781,7 +781,7 @@ dependencies = [
 [[package]]
 name = "bp-test-utils"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-header-chain",
  "ed25519-dalek",
@@ -796,7 +796,7 @@ dependencies = [
 [[package]]
 name = "bp-wococo"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-messages",
  "bp-polkadot-core",
@@ -811,7 +811,7 @@ dependencies = [
 [[package]]
 name = "bridge-runtime-common"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-message-dispatch",
  "bp-messages",
@@ -1064,13 +1064,39 @@ version = "2.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
 dependencies = [
- "ansi_term",
+ "bitflags",
+ "textwrap 0.11.0",
+ "unicode-width",
+]
+
+[[package]]
+name = "clap"
+version = "3.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12e8611f9ae4e068fa3e56931fded356ff745e70987ff76924a6e0ab1c8ef2e3"
+dependencies = [
  "atty",
  "bitflags",
+ "clap_derive",
+ "indexmap",
+ "lazy_static",
+ "os_str_bytes",
  "strsim",
- "textwrap",
- "unicode-width",
- "vec_map",
+ "termcolor",
+ "textwrap 0.14.2",
+]
+
+[[package]]
+name = "clap_derive"
+version = "3.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "517358c28fcef6607bf6f76108e02afad7e82297d132a6b846dcc1fc3efcd153"
+dependencies = [
+ "heck 0.4.0",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn",
 ]
 
 [[package]]
@@ -1252,7 +1278,7 @@ checksum = "1604dafd25fba2fe2d5895a9da139f8dc9b319a5fe5354ca137cbbce4e178d10"
 dependencies = [
  "atty",
  "cast",
- "clap",
+ "clap 2.34.0",
  "criterion-plot",
  "csv",
  "futures 0.3.19",
@@ -1426,9 +1452,9 @@ dependencies = [
 name = "cumulus-client-cli"
 version = "0.1.0"
 dependencies = [
+ "clap 3.0.7",
  "sc-cli",
  "sc-service",
- "structopt",
 ]
 
 [[package]]
@@ -2288,7 +2314,7 @@ version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7c5f0096a91d210159eceb2ff5e1c4da18388a170e1e3ce948aac9c8fdbbf595"
 dependencies = [
- "heck",
+ "heck 0.3.3",
  "proc-macro2",
  "quote",
  "syn",
@@ -2528,7 +2554,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 [[package]]
 name = "fork-tree"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
 ]
@@ -2546,7 +2572,7 @@ dependencies = [
 [[package]]
 name = "frame-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2567,10 +2593,11 @@ dependencies = [
 [[package]]
 name = "frame-benchmarking-cli"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "Inflector",
  "chrono",
+ "clap 3.0.7",
  "frame-benchmarking",
  "frame-support",
  "handlebars",
@@ -2587,13 +2614,12 @@ dependencies = [
  "sp-keystore",
  "sp-runtime",
  "sp-state-machine",
- "structopt",
 ]
 
 [[package]]
 name = "frame-election-provider-support"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2607,7 +2633,7 @@ dependencies = [
 [[package]]
 name = "frame-executive"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -2635,7 +2661,7 @@ dependencies = [
 [[package]]
 name = "frame-support"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "bitflags",
  "frame-metadata",
@@ -2664,7 +2690,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "Inflector",
  "frame-support-procedural-tools",
@@ -2676,7 +2702,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural-tools"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support-procedural-tools-derive",
  "proc-macro-crate 1.1.0",
@@ -2688,7 +2714,7 @@ dependencies = [
 [[package]]
 name = "frame-support-procedural-tools-derive"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2698,7 +2724,7 @@ dependencies = [
 [[package]]
 name = "frame-system"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "log",
@@ -2715,7 +2741,7 @@ dependencies = [
 [[package]]
 name = "frame-system-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -2730,7 +2756,7 @@ dependencies = [
 [[package]]
 name = "frame-system-rpc-runtime-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -2739,7 +2765,7 @@ dependencies = [
 [[package]]
 name = "frame-try-runtime"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "sp-api",
@@ -3094,6 +3120,12 @@ dependencies = [
  "unicode-segmentation",
 ]
 
+[[package]]
+name = "heck"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+
 [[package]]
 name = "hermit-abi"
 version = "0.1.19"
@@ -3715,7 +3747,7 @@ dependencies = [
 [[package]]
 name = "kusama-runtime"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-primitives",
  "bitvec",
@@ -3803,7 +3835,7 @@ dependencies = [
 [[package]]
 name = "kusama-runtime-constants"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -4672,7 +4704,7 @@ dependencies = [
 [[package]]
 name = "metered-channel"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "derive_more",
  "futures 0.3.19",
@@ -4937,7 +4969,7 @@ dependencies = [
 [[package]]
 name = "node-primitives"
 version = "2.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "frame-system",
  "parity-scale-codec",
@@ -5125,6 +5157,15 @@ dependencies = [
  "num-traits",
 ]
 
+[[package]]
+name = "os_str_bytes"
+version = "6.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64"
+dependencies = [
+ "memchr",
+]
+
 [[package]]
 name = "owning_ref"
 version = "0.4.1"
@@ -5137,7 +5178,7 @@ dependencies = [
 [[package]]
 name = "pallet-asset-tx-payment"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5154,7 +5195,7 @@ dependencies = [
 [[package]]
 name = "pallet-assets"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5168,7 +5209,7 @@ dependencies = [
 [[package]]
 name = "pallet-aura"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5184,7 +5225,7 @@ dependencies = [
 [[package]]
 name = "pallet-authority-discovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5200,7 +5241,7 @@ dependencies = [
 [[package]]
 name = "pallet-authorship"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5215,7 +5256,7 @@ dependencies = [
 [[package]]
 name = "pallet-babe"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5239,7 +5280,7 @@ dependencies = [
 [[package]]
 name = "pallet-bags-list"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5259,7 +5300,7 @@ dependencies = [
 [[package]]
 name = "pallet-balances"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5274,7 +5315,7 @@ dependencies = [
 [[package]]
 name = "pallet-beefy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "beefy-primitives",
  "frame-support",
@@ -5290,7 +5331,7 @@ dependencies = [
 [[package]]
 name = "pallet-beefy-mmr"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "beefy-merkle-tree",
  "beefy-primitives",
@@ -5315,7 +5356,7 @@ dependencies = [
 [[package]]
 name = "pallet-bounties"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5333,7 +5374,7 @@ dependencies = [
 [[package]]
 name = "pallet-bridge-dispatch"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-message-dispatch",
  "bp-runtime",
@@ -5350,7 +5391,7 @@ dependencies = [
 [[package]]
 name = "pallet-bridge-grandpa"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bp-header-chain",
  "bp-runtime",
@@ -5372,7 +5413,7 @@ dependencies = [
 [[package]]
 name = "pallet-bridge-messages"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitvec",
  "bp-message-dispatch",
@@ -5419,7 +5460,7 @@ dependencies = [
 [[package]]
 name = "pallet-collective"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5436,7 +5477,7 @@ dependencies = [
 [[package]]
 name = "pallet-democracy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5452,7 +5493,7 @@ dependencies = [
 [[package]]
 name = "pallet-election-provider-multi-phase"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5476,7 +5517,7 @@ dependencies = [
 [[package]]
 name = "pallet-elections-phragmen"
 version = "5.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5494,7 +5535,7 @@ dependencies = [
 [[package]]
 name = "pallet-gilt"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5509,7 +5550,7 @@ dependencies = [
 [[package]]
 name = "pallet-grandpa"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5532,7 +5573,7 @@ dependencies = [
 [[package]]
 name = "pallet-identity"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "enumflags2",
  "frame-benchmarking",
@@ -5548,7 +5589,7 @@ dependencies = [
 [[package]]
 name = "pallet-im-online"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5568,7 +5609,7 @@ dependencies = [
 [[package]]
 name = "pallet-indices"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5585,7 +5626,7 @@ dependencies = [
 [[package]]
 name = "pallet-membership"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5602,7 +5643,7 @@ dependencies = [
 [[package]]
 name = "pallet-mmr"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "ckb-merkle-mountain-range",
  "frame-benchmarking",
@@ -5620,7 +5661,7 @@ dependencies = [
 [[package]]
 name = "pallet-mmr-primitives"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5636,7 +5677,7 @@ dependencies = [
 [[package]]
 name = "pallet-mmr-rpc"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "jsonrpc-core",
  "jsonrpc-core-client",
@@ -5653,7 +5694,7 @@ dependencies = [
 [[package]]
 name = "pallet-multisig"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5668,7 +5709,7 @@ dependencies = [
 [[package]]
 name = "pallet-nicks"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5682,7 +5723,7 @@ dependencies = [
 [[package]]
 name = "pallet-offences"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5699,7 +5740,7 @@ dependencies = [
 [[package]]
 name = "pallet-offences-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5722,7 +5763,7 @@ dependencies = [
 [[package]]
 name = "pallet-preimage"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5738,7 +5779,7 @@ dependencies = [
 [[package]]
 name = "pallet-proxy"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5753,7 +5794,7 @@ dependencies = [
 [[package]]
 name = "pallet-recovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5767,7 +5808,7 @@ dependencies = [
 [[package]]
 name = "pallet-scheduler"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5783,7 +5824,7 @@ dependencies = [
 [[package]]
 name = "pallet-session"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5804,7 +5845,7 @@ dependencies = [
 [[package]]
 name = "pallet-session-benchmarking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5820,7 +5861,7 @@ dependencies = [
 [[package]]
 name = "pallet-society"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5834,7 +5875,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -5857,7 +5898,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking-reward-curve"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "proc-macro-crate 1.1.0",
  "proc-macro2",
@@ -5868,7 +5909,7 @@ dependencies = [
 [[package]]
 name = "pallet-staking-reward-fn"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "log",
  "sp-arithmetic",
@@ -5877,7 +5918,7 @@ dependencies = [
 [[package]]
 name = "pallet-sudo"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5906,7 +5947,7 @@ dependencies = [
 [[package]]
 name = "pallet-timestamp"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5924,7 +5965,7 @@ dependencies = [
 [[package]]
 name = "pallet-tips"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -5943,7 +5984,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5960,7 +6001,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "jsonrpc-core",
  "jsonrpc-core-client",
@@ -5977,7 +6018,7 @@ dependencies = [
 [[package]]
 name = "pallet-transaction-payment-rpc-runtime-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "pallet-transaction-payment",
  "parity-scale-codec",
@@ -5988,7 +6029,7 @@ dependencies = [
 [[package]]
 name = "pallet-treasury"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6005,7 +6046,7 @@ dependencies = [
 [[package]]
 name = "pallet-uniques"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6020,7 +6061,7 @@ dependencies = [
 [[package]]
 name = "pallet-utility"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6036,7 +6077,7 @@ dependencies = [
 [[package]]
 name = "pallet-vesting"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6051,7 +6092,7 @@ dependencies = [
 [[package]]
 name = "pallet-xcm"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -6069,7 +6110,7 @@ dependencies = [
 [[package]]
 name = "pallet-xcm-benchmarks"
 version = "0.9.8"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6099,6 +6140,7 @@ dependencies = [
 name = "parachain-template-node"
 version = "0.1.0"
 dependencies = [
+ "clap 3.0.7",
  "cumulus-client-cli",
  "cumulus-client-collator",
  "cumulus-client-consensus-aura",
@@ -6151,7 +6193,6 @@ dependencies = [
  "sp-session",
  "sp-timestamp",
  "sp-transaction-pool",
- "structopt",
  "substrate-build-script-utils",
  "substrate-frame-rpc-system",
  "substrate-prometheus-endpoint",
@@ -6620,7 +6661,7 @@ dependencies = [
 [[package]]
 name = "polkadot-approval-distribution"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "polkadot-node-network-protocol",
@@ -6634,7 +6675,7 @@ dependencies = [
 [[package]]
 name = "polkadot-availability-bitfield-distribution"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "polkadot-node-network-protocol",
@@ -6647,7 +6688,7 @@ dependencies = [
 [[package]]
 name = "polkadot-availability-distribution"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "derive_more",
  "futures 0.3.19",
@@ -6669,7 +6710,7 @@ dependencies = [
 [[package]]
 name = "polkadot-availability-recovery"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "lru 0.7.2",
@@ -6689,8 +6730,9 @@ dependencies = [
 [[package]]
 name = "polkadot-cli"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
+ "clap 3.0.7",
  "frame-benchmarking-cli",
  "futures 0.3.19",
  "log",
@@ -6703,7 +6745,6 @@ dependencies = [
  "sc-tracing",
  "sp-core",
  "sp-trie",
- "structopt",
  "substrate-build-script-utils",
  "thiserror",
  "try-runtime-cli",
@@ -6712,7 +6753,7 @@ dependencies = [
 [[package]]
 name = "polkadot-client"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-primitives",
  "frame-benchmarking",
@@ -6745,6 +6786,7 @@ version = "5.1.0"
 dependencies = [
  "assert_cmd",
  "async-trait",
+ "clap 3.0.7",
  "cumulus-client-cli",
  "cumulus-client-consensus-aura",
  "cumulus-client-consensus-common",
@@ -6802,7 +6844,6 @@ dependencies = [
  "sp-transaction-pool",
  "statemine-runtime",
  "statemint-runtime",
- "structopt",
  "substrate-build-script-utils",
  "substrate-frame-rpc-system",
  "substrate-prometheus-endpoint",
@@ -6814,7 +6855,7 @@ dependencies = [
 [[package]]
 name = "polkadot-collator-protocol"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "always-assert",
  "derive_more",
@@ -6835,7 +6876,7 @@ dependencies = [
 [[package]]
 name = "polkadot-core-primitives"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "parity-scale-codec",
  "parity-util-mem",
@@ -6848,7 +6889,7 @@ dependencies = [
 [[package]]
 name = "polkadot-dispute-distribution"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "derive_more",
  "futures 0.3.19",
@@ -6870,7 +6911,7 @@ dependencies = [
 [[package]]
 name = "polkadot-erasure-coding"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "parity-scale-codec",
  "polkadot-node-primitives",
@@ -6884,7 +6925,7 @@ dependencies = [
 [[package]]
 name = "polkadot-gossip-support"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "futures-timer",
@@ -6904,7 +6945,7 @@ dependencies = [
 [[package]]
 name = "polkadot-network-bridge"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -6923,7 +6964,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-collation-generation"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "parity-scale-codec",
@@ -6941,7 +6982,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-approval-voting"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitvec",
  "derive_more",
@@ -6969,7 +7010,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-av-store"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitvec",
  "futures 0.3.19",
@@ -6989,7 +7030,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-backing"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitvec",
  "futures 0.3.19",
@@ -7007,7 +7048,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-bitfield-signing"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "polkadot-node-subsystem",
@@ -7022,7 +7063,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-candidate-validation"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -7040,7 +7081,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-chain-api"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "polkadot-node-subsystem",
@@ -7055,7 +7096,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-chain-selection"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "futures-timer",
@@ -7072,7 +7113,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-dispute-coordinator"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "kvdb",
@@ -7090,7 +7131,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-parachains-inherent"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -7107,7 +7148,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-provisioner"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitvec",
  "futures 0.3.19",
@@ -7124,7 +7165,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-pvf"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "always-assert",
  "assert_matches",
@@ -7154,7 +7195,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-pvf-checker"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "polkadot-node-primitives",
@@ -7170,7 +7211,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-core-runtime-api"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "memory-lru",
@@ -7188,7 +7229,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-jaeger"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-std",
  "lazy_static",
@@ -7206,7 +7247,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-metrics"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bs58",
  "futures 0.3.19",
@@ -7225,7 +7266,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-network-protocol"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -7243,7 +7284,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-primitives"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bounded-vec",
  "futures 0.3.19",
@@ -7265,7 +7306,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-subsystem"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "polkadot-node-jaeger",
  "polkadot-node-subsystem-types",
@@ -7275,7 +7316,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-subsystem-test-helpers"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -7293,7 +7334,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-subsystem-types"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "derive_more",
  "futures 0.3.19",
@@ -7312,7 +7353,7 @@ dependencies = [
 [[package]]
 name = "polkadot-node-subsystem-util"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -7340,7 +7381,7 @@ dependencies = [
 [[package]]
 name = "polkadot-overseer"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "futures 0.3.19",
  "futures-timer",
@@ -7361,7 +7402,7 @@ dependencies = [
 [[package]]
 name = "polkadot-overseer-gen"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -7378,7 +7419,7 @@ dependencies = [
 [[package]]
 name = "polkadot-overseer-gen-proc-macro"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "proc-macro-crate 1.1.0",
  "proc-macro2",
@@ -7389,7 +7430,7 @@ dependencies = [
 [[package]]
 name = "polkadot-parachain"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "derive_more",
  "frame-support",
@@ -7406,7 +7447,7 @@ dependencies = [
 [[package]]
 name = "polkadot-performance-test"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "env_logger 0.9.0",
  "kusama-runtime",
@@ -7421,7 +7462,7 @@ dependencies = [
 [[package]]
 name = "polkadot-primitives"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitvec",
  "frame-system",
@@ -7451,7 +7492,7 @@ dependencies = [
 [[package]]
 name = "polkadot-rpc"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-gadget",
  "beefy-gadget-rpc",
@@ -7482,7 +7523,7 @@ dependencies = [
 [[package]]
 name = "polkadot-runtime"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-primitives",
  "bitvec",
@@ -7566,7 +7607,7 @@ dependencies = [
 [[package]]
 name = "polkadot-runtime-common"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-primitives",
  "bitvec",
@@ -7613,7 +7654,7 @@ dependencies = [
 [[package]]
 name = "polkadot-runtime-constants"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -7625,7 +7666,7 @@ dependencies = [
 [[package]]
 name = "polkadot-runtime-metrics"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bs58",
  "parity-scale-codec",
@@ -7637,7 +7678,7 @@ dependencies = [
 [[package]]
 name = "polkadot-runtime-parachains"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "bitflags",
  "bitvec",
@@ -7679,7 +7720,7 @@ dependencies = [
 [[package]]
 name = "polkadot-service"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "async-trait",
  "beefy-gadget",
@@ -7779,7 +7820,7 @@ dependencies = [
 [[package]]
 name = "polkadot-statement-distribution"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "arrayvec 0.5.2",
  "derive_more",
@@ -7800,7 +7841,7 @@ dependencies = [
 [[package]]
 name = "polkadot-statement-table"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "parity-scale-codec",
  "polkadot-primitives",
@@ -7810,7 +7851,7 @@ dependencies = [
 [[package]]
 name = "polkadot-test-client"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "parity-scale-codec",
  "polkadot-node-subsystem",
@@ -7835,7 +7876,7 @@ dependencies = [
 [[package]]
 name = "polkadot-test-runtime"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-primitives",
  "bitvec",
@@ -7897,7 +7938,7 @@ dependencies = [
 [[package]]
 name = "polkadot-test-service"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-benchmarking",
  "frame-system",
@@ -8119,7 +8160,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "62941722fb675d463659e49c4f3fe1fe792ff24fe5bbaa9c08cd3b98a1c354f5"
 dependencies = [
  "bytes 1.1.0",
- "heck",
+ "heck 0.3.3",
  "itertools",
  "lazy_static",
  "log",
@@ -8444,7 +8485,7 @@ dependencies = [
 [[package]]
 name = "remote-externalities"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "env_logger 0.9.0",
  "jsonrpsee",
@@ -8571,7 +8612,7 @@ dependencies = [
 [[package]]
 name = "rococo-runtime"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-primitives",
  "bp-messages",
@@ -8646,7 +8687,7 @@ dependencies = [
 [[package]]
 name = "rococo-runtime-constants"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -8784,7 +8825,7 @@ dependencies = [
 [[package]]
 name = "sc-allocator"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "log",
  "sp-core",
@@ -8795,7 +8836,7 @@ dependencies = [
 [[package]]
 name = "sc-authority-discovery"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -8822,7 +8863,7 @@ dependencies = [
 [[package]]
 name = "sc-basic-authorship"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "futures-timer",
@@ -8845,7 +8886,7 @@ dependencies = [
 [[package]]
 name = "sc-block-builder"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "sc-client-api",
@@ -8861,7 +8902,7 @@ dependencies = [
 [[package]]
 name = "sc-chain-spec"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "impl-trait-for-tuples",
  "memmap2 0.5.0",
@@ -8878,7 +8919,7 @@ dependencies = [
 [[package]]
 name = "sc-chain-spec-derive"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "proc-macro-crate 1.1.0",
  "proc-macro2",
@@ -8889,9 +8930,10 @@ dependencies = [
 [[package]]
 name = "sc-cli"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "chrono",
+ "clap 3.0.7",
  "fdlimit",
  "futures 0.3.19",
  "hex",
@@ -8918,7 +8960,6 @@ dependencies = [
  "sp-panic-handler",
  "sp-runtime",
  "sp-version",
- "structopt",
  "thiserror",
  "tiny-bip39",
  "tokio",
@@ -8927,7 +8968,7 @@ dependencies = [
 [[package]]
 name = "sc-client-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "fnv",
  "futures 0.3.19",
@@ -8955,7 +8996,7 @@ dependencies = [
 [[package]]
 name = "sc-client-db"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "hash-db",
  "kvdb",
@@ -8980,7 +9021,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -9004,7 +9045,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-aura"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -9033,7 +9074,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-babe"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -9076,7 +9117,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-babe-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "derive_more",
  "futures 0.3.19",
@@ -9100,7 +9141,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-epochs"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "fork-tree",
  "parity-scale-codec",
@@ -9113,7 +9154,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-slots"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -9138,7 +9179,7 @@ dependencies = [
 [[package]]
 name = "sc-consensus-uncles"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "sc-client-api",
  "sp-authorship",
@@ -9149,7 +9190,7 @@ dependencies = [
 [[package]]
 name = "sc-executor"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "lazy_static",
  "libsecp256k1",
@@ -9177,7 +9218,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-common"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "derive_more",
  "environmental",
@@ -9195,7 +9236,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-wasmi"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "log",
  "parity-scale-codec",
@@ -9211,7 +9252,7 @@ dependencies = [
 [[package]]
 name = "sc-executor-wasmtime"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -9229,7 +9270,7 @@ dependencies = [
 [[package]]
 name = "sc-finality-grandpa"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -9267,7 +9308,7 @@ dependencies = [
 [[package]]
 name = "sc-finality-grandpa-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "derive_more",
  "finality-grandpa",
@@ -9291,7 +9332,7 @@ dependencies = [
 [[package]]
 name = "sc-informant"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "ansi_term",
  "futures 0.3.19",
@@ -9308,7 +9349,7 @@ dependencies = [
 [[package]]
 name = "sc-keystore"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -9323,7 +9364,7 @@ dependencies = [
 [[package]]
 name = "sc-network"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-std",
  "async-trait",
@@ -9374,7 +9415,7 @@ dependencies = [
 [[package]]
 name = "sc-network-gossip"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "futures-timer",
@@ -9390,7 +9431,7 @@ dependencies = [
 [[package]]
 name = "sc-offchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "bytes 1.1.0",
  "fnv",
@@ -9418,7 +9459,7 @@ dependencies = [
 [[package]]
 name = "sc-peerset"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "libp2p",
@@ -9431,7 +9472,7 @@ dependencies = [
 [[package]]
 name = "sc-proposer-metrics"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "log",
  "substrate-prometheus-endpoint",
@@ -9440,7 +9481,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "hash-db",
@@ -9471,7 +9512,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-api"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "jsonrpc-core",
@@ -9496,7 +9537,7 @@ dependencies = [
 [[package]]
 name = "sc-rpc-server"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "jsonrpc-core",
@@ -9513,7 +9554,7 @@ dependencies = [
 [[package]]
 name = "sc-service"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "directories",
@@ -9577,7 +9618,7 @@ dependencies = [
 [[package]]
 name = "sc-state-db"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "log",
  "parity-scale-codec",
@@ -9591,7 +9632,7 @@ dependencies = [
 [[package]]
 name = "sc-sync-state-rpc"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "jsonrpc-core",
  "jsonrpc-core-client",
@@ -9613,7 +9654,7 @@ dependencies = [
 [[package]]
 name = "sc-telemetry"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "chrono",
  "futures 0.3.19",
@@ -9631,7 +9672,7 @@ dependencies = [
 [[package]]
 name = "sc-tracing"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "ansi_term",
  "atty",
@@ -9662,7 +9703,7 @@ dependencies = [
 [[package]]
 name = "sc-tracing-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "proc-macro-crate 1.1.0",
  "proc-macro2",
@@ -9673,7 +9714,7 @@ dependencies = [
 [[package]]
 name = "sc-transaction-pool"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "futures-timer",
@@ -9700,7 +9741,7 @@ dependencies = [
 [[package]]
 name = "sc-transaction-pool-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "derive_more",
  "futures 0.3.19",
@@ -9714,7 +9755,7 @@ dependencies = [
 [[package]]
 name = "sc-utils"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "futures-timer",
@@ -10114,7 +10155,7 @@ checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5"
 [[package]]
 name = "slot-range-helper"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "enumn",
  "parity-scale-codec",
@@ -10202,7 +10243,7 @@ dependencies = [
 [[package]]
 name = "sp-api"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "hash-db",
  "log",
@@ -10219,7 +10260,7 @@ dependencies = [
 [[package]]
 name = "sp-api-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "blake2-rfc",
  "proc-macro-crate 1.1.0",
@@ -10231,7 +10272,7 @@ dependencies = [
 [[package]]
 name = "sp-application-crypto"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10244,7 +10285,7 @@ dependencies = [
 [[package]]
 name = "sp-arithmetic"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "integer-sqrt",
  "num-traits",
@@ -10259,7 +10300,7 @@ dependencies = [
 [[package]]
 name = "sp-authority-discovery"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10272,7 +10313,7 @@ dependencies = [
 [[package]]
 name = "sp-authorship"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -10284,7 +10325,7 @@ dependencies = [
 [[package]]
 name = "sp-block-builder"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -10296,7 +10337,7 @@ dependencies = [
 [[package]]
 name = "sp-blockchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "log",
@@ -10314,7 +10355,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -10333,7 +10374,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-aura"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -10351,7 +10392,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-babe"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "merlin",
@@ -10374,7 +10415,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-slots"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10386,7 +10427,7 @@ dependencies = [
 [[package]]
 name = "sp-consensus-vrf"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "schnorrkel",
@@ -10398,7 +10439,7 @@ dependencies = [
 [[package]]
 name = "sp-core"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "base58",
  "bitflags",
@@ -10446,7 +10487,7 @@ dependencies = [
 [[package]]
 name = "sp-core-hashing"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "blake2-rfc",
  "byteorder",
@@ -10459,7 +10500,7 @@ dependencies = [
 [[package]]
 name = "sp-core-hashing-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -10470,7 +10511,7 @@ dependencies = [
 [[package]]
 name = "sp-database"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "kvdb",
  "parking_lot 0.11.2",
@@ -10479,7 +10520,7 @@ dependencies = [
 [[package]]
 name = "sp-debug-derive"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -10489,7 +10530,7 @@ dependencies = [
 [[package]]
 name = "sp-externalities"
 version = "0.10.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "environmental",
  "parity-scale-codec",
@@ -10500,7 +10541,7 @@ dependencies = [
 [[package]]
 name = "sp-finality-grandpa"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "finality-grandpa",
  "log",
@@ -10518,7 +10559,7 @@ dependencies = [
 [[package]]
 name = "sp-inherents"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "impl-trait-for-tuples",
@@ -10532,7 +10573,7 @@ dependencies = [
 [[package]]
 name = "sp-io"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "futures 0.3.19",
  "hash-db",
@@ -10556,7 +10597,7 @@ dependencies = [
 [[package]]
 name = "sp-keyring"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "lazy_static",
  "sp-core",
@@ -10567,7 +10608,7 @@ dependencies = [
 [[package]]
 name = "sp-keystore"
 version = "0.10.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -10584,7 +10625,7 @@ dependencies = [
 [[package]]
 name = "sp-maybe-compressed-blob"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "zstd",
 ]
@@ -10592,7 +10633,7 @@ dependencies = [
 [[package]]
 name = "sp-npos-elections"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10607,7 +10648,7 @@ dependencies = [
 [[package]]
 name = "sp-npos-elections-solution-type"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "proc-macro-crate 1.1.0",
  "proc-macro2",
@@ -10618,7 +10659,7 @@ dependencies = [
 [[package]]
 name = "sp-offchain"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "sp-api",
  "sp-core",
@@ -10628,7 +10669,7 @@ dependencies = [
 [[package]]
 name = "sp-panic-handler"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "backtrace",
  "lazy_static",
@@ -10638,7 +10679,7 @@ dependencies = [
 [[package]]
 name = "sp-rpc"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "rustc-hash",
  "serde",
@@ -10648,7 +10689,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "either",
  "hash256-std-hasher",
@@ -10670,7 +10711,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime-interface"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "impl-trait-for-tuples",
  "parity-scale-codec",
@@ -10687,7 +10728,7 @@ dependencies = [
 [[package]]
 name = "sp-runtime-interface-proc-macro"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "Inflector",
  "proc-macro-crate 1.1.0",
@@ -10699,7 +10740,7 @@ dependencies = [
 [[package]]
 name = "sp-serializer"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "serde",
  "serde_json",
@@ -10708,7 +10749,7 @@ dependencies = [
 [[package]]
 name = "sp-session"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10722,7 +10763,7 @@ dependencies = [
 [[package]]
 name = "sp-staking"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10733,7 +10774,7 @@ dependencies = [
 [[package]]
 name = "sp-state-machine"
 version = "0.10.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "hash-db",
  "log",
@@ -10756,12 +10797,12 @@ dependencies = [
 [[package]]
 name = "sp-std"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 
 [[package]]
 name = "sp-storage"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "impl-serde",
  "parity-scale-codec",
@@ -10774,7 +10815,7 @@ dependencies = [
 [[package]]
 name = "sp-tasks"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "log",
  "sp-core",
@@ -10787,7 +10828,7 @@ dependencies = [
 [[package]]
 name = "sp-timestamp"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "futures-timer",
@@ -10803,7 +10844,7 @@ dependencies = [
 [[package]]
 name = "sp-tracing"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "sp-std",
@@ -10815,7 +10856,7 @@ dependencies = [
 [[package]]
 name = "sp-transaction-pool"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "sp-api",
  "sp-runtime",
@@ -10824,7 +10865,7 @@ dependencies = [
 [[package]]
 name = "sp-transaction-storage-proof"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "log",
@@ -10840,7 +10881,7 @@ dependencies = [
 [[package]]
 name = "sp-trie"
 version = "4.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "hash-db",
  "memory-db",
@@ -10855,7 +10896,7 @@ dependencies = [
 [[package]]
 name = "sp-version"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "impl-serde",
  "parity-scale-codec",
@@ -10872,7 +10913,7 @@ dependencies = [
 [[package]]
 name = "sp-version-proc-macro"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "parity-scale-codec",
  "proc-macro2",
@@ -10883,7 +10924,7 @@ dependencies = [
 [[package]]
 name = "sp-wasm-interface"
 version = "4.1.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "impl-trait-for-tuples",
  "log",
@@ -10901,9 +10942,9 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
 
 [[package]]
 name = "ss58-registry"
-version = "1.10.0"
+version = "1.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c83f0afe7e571565ef9aae7b0e4fb30fcaec4ebb9aea2f00489b772782aa03a4"
+checksum = "8319f44e20b42e5c11b88b1ad4130c35fe2974665a007b08b02322070177136a"
 dependencies = [
  "Inflector",
  "proc-macro2",
@@ -11099,33 +11140,9 @@ dependencies = [
 
 [[package]]
 name = "strsim"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-
-[[package]]
-name = "structopt"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40b9788f4202aa75c240ecc9c15c65185e6a39ccdeb0fd5d008b98825464c87c"
-dependencies = [
- "clap",
- "lazy_static",
- "structopt-derive",
-]
-
-[[package]]
-name = "structopt-derive"
-version = "0.4.18"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
-dependencies = [
- "heck",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn",
-]
+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "strum"
@@ -11151,7 +11168,7 @@ version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "339f799d8b549e3744c7ac7feb216383e4005d94bdb22561b3ab8f3b808ae9fb"
 dependencies = [
- "heck",
+ "heck 0.3.3",
  "proc-macro2",
  "quote",
  "syn",
@@ -11163,7 +11180,7 @@ version = "0.23.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5bb0dc7ee9c15cea6199cde9a127fa16a4c5819af85395457ad72d68edc85a38"
 dependencies = [
- "heck",
+ "heck 0.3.3",
  "proc-macro2",
  "quote",
  "rustversion",
@@ -11186,7 +11203,7 @@ dependencies = [
 [[package]]
 name = "substrate-build-script-utils"
 version = "3.0.0"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "platforms",
 ]
@@ -11194,7 +11211,7 @@ dependencies = [
 [[package]]
 name = "substrate-frame-rpc-system"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "frame-system-rpc-runtime-api",
  "futures 0.3.19",
@@ -11216,7 +11233,7 @@ dependencies = [
 [[package]]
 name = "substrate-prometheus-endpoint"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-std",
  "derive_more",
@@ -11230,7 +11247,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-client"
 version = "2.0.1"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "async-trait",
  "futures 0.3.19",
@@ -11256,7 +11273,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-utils"
 version = "4.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "futures 0.3.19",
  "substrate-test-utils-derive",
@@ -11266,7 +11283,7 @@ dependencies = [
 [[package]]
 name = "substrate-test-utils-derive"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#511e8c860aa448c6899f884eebe64131a65300b8"
 dependencies = [
  "proc-macro-crate 1.1.0",
  "proc-macro2",
@@ -11277,7 +11294,7 @@ dependencies = [
 [[package]]
 name = "substrate-wasm-builder"
 version = "5.0.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
  "ansi_term",
  "build-helper",
@@ -11362,7 +11379,7 @@ checksum = "13a4ec180a2de59b57434704ccfad967f789b12737738798fa08798cd5824c16"
 [[package]]
 name = "test-runtime-constants"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -11380,6 +11397,12 @@ dependencies = [
  "unicode-width",
 ]
 
+[[package]]
+name = "textwrap"
+version = "0.14.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0066c8d12af8b5acd21e00547c3797fde4e8677254a7ee429176ccebbe93dd80"
+
 [[package]]
 name = "thiserror"
 version = "1.0.30"
@@ -11736,8 +11759,9 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
 [[package]]
 name = "try-runtime-cli"
 version = "0.10.0-dev"
-source = "git+https://github.com/paritytech/substrate?branch=master#32b71896df8a832e7c139a842e46710e4d3f70cd"
+source = "git+https://github.com/paritytech/substrate?branch=master#31d90c202d6df9ce3837ee55587b604619a912ba"
 dependencies = [
+ "clap 3.0.7",
  "jsonrpsee",
  "log",
  "parity-scale-codec",
@@ -11754,7 +11778,6 @@ dependencies = [
  "sp-runtime",
  "sp-state-machine",
  "sp-version",
- "structopt",
  "zstd",
 ]
 
@@ -11926,12 +11949,6 @@ version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
-[[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-
 [[package]]
 name = "version_check"
 version = "0.9.3"
@@ -12317,7 +12334,7 @@ dependencies = [
 [[package]]
 name = "westend-runtime"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "beefy-primitives",
  "bitvec",
@@ -12403,7 +12420,7 @@ dependencies = [
 [[package]]
 name = "westend-runtime-constants"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -12577,7 +12594,7 @@ dependencies = [
 [[package]]
 name = "xcm"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "derivative",
  "impl-trait-for-tuples",
@@ -12590,7 +12607,7 @@ dependencies = [
 [[package]]
 name = "xcm-builder"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -12610,7 +12627,7 @@ dependencies = [
 [[package]]
 name = "xcm-executor"
 version = "0.9.13"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -12628,7 +12645,7 @@ dependencies = [
 [[package]]
 name = "xcm-procedural"
 version = "0.1.0"
-source = "git+https://github.com/paritytech/polkadot?branch=master#e920b2f907629764b542cd8ebe78a7f550821f0f"
+source = "git+https://github.com/paritytech/polkadot?branch=master#60df3c55c711c2872872d6220f98b2611340e051"
 dependencies = [
  "Inflector",
  "proc-macro2",
diff --git a/cumulus/client/cli/Cargo.toml b/cumulus/client/cli/Cargo.toml
index 513a7db392c..705460188ca 100644
--- a/cumulus/client/cli/Cargo.toml
+++ b/cumulus/client/cli/Cargo.toml
@@ -5,7 +5,7 @@ authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 
 [dependencies]
-structopt = "0.3.3"
+clap = { version = "3.0", features = ["derive"] }
 
 # Substrate dependencies
 sc-cli = { git = "https://github.com/paritytech/substrate", branch = "master" }
diff --git a/cumulus/client/cli/src/lib.rs b/cumulus/client/cli/src/lib.rs
index 9e3ab0fc4b4..65322089a3f 100644
--- a/cumulus/client/cli/src/lib.rs
+++ b/cumulus/client/cli/src/lib.rs
@@ -18,6 +18,7 @@
 
 #![warn(missing_docs)]
 
+use clap::Parser;
 use sc_cli;
 use sc_service::{
 	config::{PrometheusConfig, TelemetryEndpoints},
@@ -28,21 +29,20 @@ use std::{
 	io::{self, Write},
 	net::SocketAddr,
 };
-use structopt::StructOpt;
 
 /// The `purge-chain` command used to remove the whole chain: the parachain and the relay chain.
-#[derive(Debug, StructOpt)]
+#[derive(Debug, Parser)]
 pub struct PurgeChainCmd {
 	/// The base struct of the purge-chain command.
-	#[structopt(flatten)]
+	#[clap(flatten)]
 	pub base: sc_cli::PurgeChainCmd,
 
 	/// Only delete the para chain database
-	#[structopt(long, aliases = &["para"])]
+	#[clap(long, aliases = &["para"])]
 	pub parachain: bool,
 
 	/// Only delete the relay chain database
-	#[structopt(long, aliases = &["relay"])]
+	#[clap(long, aliases = &["relay"])]
 	pub relaychain: bool,
 }
 
@@ -120,16 +120,16 @@ impl sc_cli::CliConfiguration for PurgeChainCmd {
 }
 
 /// The `run` command used to run a node.
-#[derive(Debug, StructOpt)]
+#[derive(Debug, Parser)]
 pub struct RunCmd {
 	/// The cumulus RunCmd inherents from sc_cli's
-	#[structopt(flatten)]
+	#[clap(flatten)]
 	pub base: sc_cli::RunCmd,
 
 	/// Run node as collator.
 	///
 	/// Note that this is the same as running with `--validator`.
-	#[structopt(long, conflicts_with = "validator")]
+	#[clap(long, conflicts_with = "validator")]
 	pub collator: bool,
 }
 
diff --git a/cumulus/parachain-template/node/Cargo.toml b/cumulus/parachain-template/node/Cargo.toml
index fd3c510d0f9..12c10a7a629 100644
--- a/cumulus/parachain-template/node/Cargo.toml
+++ b/cumulus/parachain-template/node/Cargo.toml
@@ -21,13 +21,13 @@ path = "src/main.rs"
 
 [features]
 runtime-benchmarks = ["parachain-template-runtime/runtime-benchmarks"]
-try-runtime = [ "parachain-template-runtime/try-runtime" ]
+try-runtime = ["parachain-template-runtime/try-runtime"]
 
 [dependencies]
+clap = { version = "3.0", features = ["derive"] }
 derive_more = "0.99.2"
 log = "0.4.14"
 codec = { package = "parity-scale-codec", version = "2.0.0" }
-structopt = "0.3.8"
 serde = { version = "1.0.132", features = ["derive"] }
 hex-literal = "0.3.1"
 
@@ -58,7 +58,7 @@ sc-network = { git = "https://github.com/paritytech/substrate", branch = "master
 sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "master" }
 sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" }
 sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "master" }
-sc-service = { git = "https://github.com/paritytech/substrate", features = ["wasmtime"] , branch = "master" }
+sc-service = { git = "https://github.com/paritytech/substrate", features = ["wasmtime"], branch = "master" }
 sc-telemetry = { git = "https://github.com/paritytech/substrate", branch = "master" }
 sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "master" }
 sc-transaction-pool-api = { git = "https://github.com/paritytech/substrate", branch = "master" }
@@ -96,4 +96,3 @@ polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "maste
 polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "master" }
 polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "master" }
 polkadot-service = { git = "https://github.com/paritytech/polkadot", branch = "master" }
-
diff --git a/cumulus/parachain-template/node/src/cli.rs b/cumulus/parachain-template/node/src/cli.rs
index 53040d7c581..a7e8934b78c 100644
--- a/cumulus/parachain-template/node/src/cli.rs
+++ b/cumulus/parachain-template/node/src/cli.rs
@@ -1,16 +1,16 @@
 use crate::chain_spec;
+use clap::{AppSettings, Parser};
 use std::path::PathBuf;
-use structopt::StructOpt;
 
 /// Sub-commands supported by the collator.
-#[derive(Debug, StructOpt)]
+#[derive(Debug, clap::Subcommand)]
 pub enum Subcommand {
 	/// Export the genesis state of the parachain.
-	#[structopt(name = "export-genesis-state")]
+	#[clap(name = "export-genesis-state")]
 	ExportGenesisState(ExportGenesisStateCommand),
 
 	/// Export the genesis wasm of the parachain.
-	#[structopt(name = "export-genesis-wasm")]
+	#[clap(name = "export-genesis-wasm")]
 	ExportGenesisWasm(ExportGenesisWasmCommand),
 
 	/// Build a chain specification.
@@ -35,7 +35,7 @@ pub enum Subcommand {
 	Revert(sc_cli::RevertCmd),
 
 	/// The custom benchmark subcommmand benchmarking runtime pallets.
-	#[structopt(name = "benchmark", about = "Benchmark runtime pallets.")]
+	#[clap(name = "benchmark", about = "Benchmark runtime pallets.")]
 	Benchmark(frame_benchmarking_cli::BenchmarkCmd),
 
 	/// Try some testing command against a specified runtime state.
@@ -43,52 +43,52 @@ pub enum Subcommand {
 }
 
 /// Command for exporting the genesis state of the parachain
-#[derive(Debug, StructOpt)]
+#[derive(Debug, Parser)]
 pub struct ExportGenesisStateCommand {
 	/// Output file name or stdout if unspecified.
-	#[structopt(parse(from_os_str))]
+	#[clap(parse(from_os_str))]
 	pub output: Option<PathBuf>,
 
 	/// Write output in binary. Default is to write in hex.
-	#[structopt(short, long)]
+	#[clap(short, long)]
 	pub raw: bool,
 
 	/// The name of the chain for that the genesis state should be exported.
-	#[structopt(long)]
+	#[clap(long)]
 	pub chain: Option<String>,
 }
 
 /// Command for exporting the genesis wasm file.
-#[derive(Debug, StructOpt)]
+#[derive(Debug, Parser)]
 pub struct ExportGenesisWasmCommand {
 	/// Output file name or stdout if unspecified.
-	#[structopt(parse(from_os_str))]
+	#[clap(parse(from_os_str))]
 	pub output: Option<PathBuf>,
 
 	/// Write output in binary. Default is to write in hex.
-	#[structopt(short, long)]
+	#[clap(short, long)]
 	pub raw: bool,
 
 	/// The name of the chain for that the genesis wasm file should be exported.
-	#[structopt(long)]
+	#[clap(long)]
 	pub chain: Option<String>,
 }
 
-#[derive(Debug, StructOpt)]
-#[structopt(settings = &[
-	structopt::clap::AppSettings::GlobalVersion,
-	structopt::clap::AppSettings::ArgsNegateSubcommands,
-	structopt::clap::AppSettings::SubcommandsNegateReqs,
-])]
+#[derive(Debug, Parser)]
+#[clap(setting(
+	AppSettings::PropagateVersion |
+	AppSettings::ArgsNegateSubcommands |
+	AppSettings::SubcommandsNegateReqs,
+))]
 pub struct Cli {
-	#[structopt(subcommand)]
+	#[clap(subcommand)]
 	pub subcommand: Option<Subcommand>,
 
-	#[structopt(flatten)]
+	#[clap(flatten)]
 	pub run: cumulus_client_cli::RunCmd,
 
 	/// Relay chain arguments
-	#[structopt(raw = true)]
+	#[clap(raw = true)]
 	pub relay_chain_args: Vec<String>,
 }
 
@@ -113,6 +113,6 @@ impl RelayChainCli {
 		let extension = chain_spec::Extensions::try_get(&*para_config.chain_spec);
 		let chain_id = extension.map(|e| e.relay_chain.clone());
 		let base_path = para_config.base_path.as_ref().map(|x| x.path().join("polkadot"));
-		Self { base_path, chain_id, base: polkadot_cli::RunCmd::from_iter(relay_chain_args) }
+		Self { base_path, chain_id, base: polkadot_cli::RunCmd::parse_from(relay_chain_args) }
 	}
 }
diff --git a/cumulus/polkadot-parachains/Cargo.toml b/cumulus/polkadot-parachains/Cargo.toml
index 0912f46a495..6b6294952e8 100644
--- a/cumulus/polkadot-parachains/Cargo.toml
+++ b/cumulus/polkadot-parachains/Cargo.toml
@@ -10,10 +10,10 @@ name = "polkadot-collator"
 path = "src/main.rs"
 
 [dependencies]
+clap = { version = "3.0", features = ["derive"] }
 futures = { version = "0.3.1", features = ["compat"] }
 log = "0.4.8"
 codec = { package = "parity-scale-codec", version = "2.3.0" }
-structopt = "0.3.3"
 serde = { version = "1.0.132", features = ["derive"] }
 hex-literal = "0.2.1"
 async-trait = "0.1.42"
diff --git a/cumulus/polkadot-parachains/src/cli.rs b/cumulus/polkadot-parachains/src/cli.rs
index 900335fb94f..63356ab6547 100644
--- a/cumulus/polkadot-parachains/src/cli.rs
+++ b/cumulus/polkadot-parachains/src/cli.rs
@@ -15,19 +15,19 @@
 // along with Cumulus.  If not, see <http://www.gnu.org/licenses/>.
 
 use crate::chain_spec;
+use clap::{AppSettings, Parser};
 use sc_cli;
 use std::path::PathBuf;
-use structopt::StructOpt;
 
 /// Sub-commands supported by the collator.
-#[derive(Debug, StructOpt)]
+#[derive(Debug, clap::Subcommand)]
 pub enum Subcommand {
 	/// Export the genesis state of the parachain.
-	#[structopt(name = "export-genesis-state")]
+	#[clap(name = "export-genesis-state")]
 	ExportGenesisState(ExportGenesisStateCommand),
 
 	/// Export the genesis wasm of the parachain.
-	#[structopt(name = "export-genesis-wasm")]
+	#[clap(name = "export-genesis-wasm")]
 	ExportGenesisWasm(ExportGenesisWasmCommand),
 
 	/// Build a chain specification.
@@ -52,69 +52,70 @@ pub enum Subcommand {
 	Revert(sc_cli::RevertCmd),
 
 	/// The custom benchmark subcommmand benchmarking runtime pallets.
-	#[structopt(name = "benchmark", about = "Benchmark runtime pallets.")]
+	#[clap(name = "benchmark", about = "Benchmark runtime pallets.")]
 	Benchmark(frame_benchmarking_cli::BenchmarkCmd),
 
 	/// Try some testing command against a specified runtime state.
 	TryRuntime(try_runtime_cli::TryRuntimeCmd),
 
 	/// Key management CLI utilities
+	#[clap(subcommand)]
 	Key(sc_cli::KeySubcommand),
 }
 
 /// Command for exporting the genesis state of the parachain
-#[derive(Debug, StructOpt)]
+#[derive(Debug, Parser)]
 pub struct ExportGenesisStateCommand {
 	/// Output file name or stdout if unspecified.
-	#[structopt(parse(from_os_str))]
+	#[clap(parse(from_os_str))]
 	pub output: Option<PathBuf>,
 
 	/// Id of the parachain this state is for.
 	///
 	/// Default: 100
-	#[structopt(long)]
+	#[clap(long)]
 	pub parachain_id: Option<u32>,
 
 	/// Write output in binary. Default is to write in hex.
-	#[structopt(short, long)]
+	#[clap(short, long)]
 	pub raw: bool,
 
 	/// The name of the chain for that the genesis state should be exported.
-	#[structopt(long)]
+	#[clap(long)]
 	pub chain: Option<String>,
 }
 
 /// Command for exporting the genesis wasm file.
-#[derive(Debug, StructOpt)]
+#[derive(Debug, Parser)]
 pub struct ExportGenesisWasmCommand {
 	/// Output file name or stdout if unspecified.
-	#[structopt(parse(from_os_str))]
+	#[clap(parse(from_os_str))]
 	pub output: Option<PathBuf>,
 
 	/// Write output in binary. Default is to write in hex.
-	#[structopt(short, long)]
+	#[clap(short, long)]
 	pub raw: bool,
 
 	/// The name of the chain for that the genesis wasm file should be exported.
-	#[structopt(long)]
+	#[clap(long)]
 	pub chain: Option<String>,
 }
 
-#[derive(Debug, StructOpt)]
-#[structopt(settings = &[
-	structopt::clap::AppSettings::GlobalVersion,
-	structopt::clap::AppSettings::ArgsNegateSubcommands,
-	structopt::clap::AppSettings::SubcommandsNegateReqs,
-])]
+#[derive(Debug, Parser)]
+#[clap(setting(
+	AppSettings::PropagateVersion |
+	AppSettings::ArgsNegateSubcommands |
+	AppSettings::SubcommandsNegateReqs
+))]
 pub struct Cli {
-	#[structopt(subcommand)]
+	#[clap(subcommand)]
 	pub subcommand: Option<Subcommand>,
 
-	#[structopt(flatten)]
+	#[clap(flatten)]
 	pub run: cumulus_client_cli::RunCmd,
 
 	/// Relay chain arguments
-	#[structopt(raw = true)]
+	#[clap(raw = true)]
 	pub relaychain_args: Vec<String>,
 }
 
@@ -139,6 +140,6 @@ impl RelayChainCli {
 		let extension = chain_spec::Extensions::try_get(&*para_config.chain_spec);
 		let chain_id = extension.map(|e| e.relay_chain.clone());
 		let base_path = para_config.base_path.as_ref().map(|x| x.path().join("polkadot"));
-		Self { base_path, chain_id, base: polkadot_cli::RunCmd::from_iter(relay_chain_args) }
+		Self { base_path, chain_id, base: polkadot_cli::RunCmd::parse_from(relay_chain_args) }
 	}
 }
-- 
GitLab