diff --git a/implementors/clap_builder/derive/trait.Args.js b/implementors/clap_builder/derive/trait.Args.js
index b77cc5c4198..753b60fd4e2 100644
--- a/implementors/clap_builder/derive/trait.Args.js
+++ b/implementors/clap_builder/derive/trait.Args.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"try_runtime_core":[["impl Args for Command"],["impl Args for SharedParams"],["impl Args for Command"],["impl Args for Command"],["impl Args for LiveState"],["impl Args for Command"],["impl Args for TryRuntime"],["impl Args for Command"],["impl Args for Command"]]
+"try_runtime_core":[["impl Args for Command"],["impl Args for SharedParams"],["impl Args for Command"],["impl Args for LiveState"],["impl Args for Command"],["impl Args for Command"],["impl Args for TryRuntime"],["impl Args for Command"],["impl Args for Command"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/clap_builder/derive/trait.FromArgMatches.js b/implementors/clap_builder/derive/trait.FromArgMatches.js
index cdf4ebbbad5..fd5d3f1be5f 100644
--- a/implementors/clap_builder/derive/trait.FromArgMatches.js
+++ b/implementors/clap_builder/derive/trait.FromArgMatches.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"try_runtime_core":[["impl FromArgMatches for Command"],["impl FromArgMatches for Command"],["impl FromArgMatches for State"],["impl FromArgMatches for Command"],["impl FromArgMatches for Chain"],["impl FromArgMatches for SharedParams"],["impl FromArgMatches for TryRuntime"],["impl FromArgMatches for Command"],["impl FromArgMatches for Command"],["impl FromArgMatches for LiveState"],["impl FromArgMatches for Command"],["impl FromArgMatches for Action"]]
+"try_runtime_core":[["impl FromArgMatches for State"],["impl FromArgMatches for Command"],["impl FromArgMatches for Command"],["impl FromArgMatches for Command"],["impl FromArgMatches for Chain"],["impl FromArgMatches for LiveState"],["impl FromArgMatches for SharedParams"],["impl FromArgMatches for TryRuntime"],["impl FromArgMatches for Command"],["impl FromArgMatches for Command"],["impl FromArgMatches for Command"],["impl FromArgMatches for Action"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/clone/trait.Clone.js b/implementors/core/clone/trait.Clone.js
index 0c78d9983d8..066b916947b 100644
--- a/implementors/core/clone/trait.Clone.js
+++ b/implementors/core/clone/trait.Clone.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"try_runtime_core":[["impl Clone for ChainIter"],["impl Clone for Action"],["impl Clone for Chain"],["impl Clone for Command"],["impl Clone for TryRuntime"],["impl Clone for Command"],["impl Clone for Runtime"],["impl Clone for Command"],["impl Clone for LiveState"],["impl Clone for Command"],["impl Clone for Command"],["impl Clone for State"],["impl Clone for Command"],["impl Clone for SharedParams"]]
+"try_runtime_core":[["impl Clone for ChainIter"],["impl Clone for Action"],["impl Clone for Chain"],["impl Clone for Command"],["impl Clone for TryRuntime"],["impl Clone for State"],["impl Clone for Command"],["impl Clone for Runtime"],["impl Clone for Command"],["impl Clone for Command"],["impl Clone for Command"],["impl Clone for Command"],["impl Clone for LiveState"],["impl Clone for SharedParams"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/fmt/trait.Debug.js b/implementors/core/fmt/trait.Debug.js
index ef127825d3c..823f3d610fa 100644
--- a/implementors/core/fmt/trait.Debug.js
+++ b/implementors/core/fmt/trait.Debug.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"try_runtime_core":[["impl Debug for Command"],["impl Debug for Command"],["impl Debug for Command"],["impl Debug for LiveState"],["impl Debug for State"],["impl Debug for Runtime"],["impl Debug for Command"],["impl Debug for Action"],["impl Debug for Chain"],["impl Debug for SharedParams"],["impl Debug for ChainIter"],["impl Debug for Command"],["impl Debug for TryRuntime"],["impl Debug for Command"]]
+"try_runtime_core":[["impl Debug for Command"],["impl Debug for Command"],["impl Debug for Command"],["impl Debug for Runtime"],["impl Debug for Command"],["impl Debug for Action"],["impl Debug for Chain"],["impl Debug for SharedParams"],["impl Debug for ChainIter"],["impl Debug for LiveState"],["impl Debug for Command"],["impl Debug for TryRuntime"],["impl Debug for State"],["impl Debug for Command"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/marker/trait.StructuralPartialEq.js b/implementors/core/marker/trait.StructuralPartialEq.js
index 24f843eca6c..e07c046f4eb 100644
--- a/implementors/core/marker/trait.StructuralPartialEq.js
+++ b/implementors/core/marker/trait.StructuralPartialEq.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"try_runtime_core":[["impl StructuralPartialEq for SpecVersionCheck"],["impl StructuralPartialEq for TryRuntimeFeatureCheck"]]
+"try_runtime_core":[["impl StructuralPartialEq for TryRuntimeFeatureCheck"],["impl StructuralPartialEq for SpecVersionCheck"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/search-index.js b/search-index.js
index da05024b1df..14581dc4b11 100644
--- a/search-index.js
+++ b/search-index.js
@@ -1,6 +1,6 @@
var searchIndex = JSON.parse('{\
"try_runtime":{"doc":"Try-runtime","t":"FF","n":["init_env","main"],"q":[[0,"try_runtime"]],"d":["",""],"i":[0,0],"f":[[[]],[[]]],"c":[],"p":[]},\
-"try_runtime_core":{"doc":"","t":"DLLALLLLLLLLALLLLLLLMAALLLLLLLMLENNNNNNDLLMLLLLLLLLLLLLLLALLLLLLAALLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAALLMLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLMLLLLLLLLLLLLLLFMLLLLLLLLLLDLLLMLLLLLLLLLLLLLLLLLLLLLLLLLFMLLLMLLLLLLLDLLLMLLMLLLLLLLLLLLLLLLLLLLLLLLMFMMLLLMLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFMLLLMLLLLLLMLDLLLLLLLLLLLLLLLLLLLLLMLLLLLLLFMLLLLLLLLLLDLLLLLMLLLLLLLLLLLLLLLLLLLLLLLMMFMLLLLLLLLLLNEDQINNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNNEDLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLMMNNNDNNNEEELLMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLMM","n":["RefTimeInfo","borrow","borrow_mut","commands","deref","deref_mut","drop","from","from_mut","from_mut","from_ref","from_ref","inherent_provider","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","max","shared_parameters","state","try_from","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","used","vzip","Action","CreateSnapshot","ExecuteBlock","FastForward","FollowChain","OffchainWorker","OnRuntimeUpgrade","TryRuntime","__clone_box","__clone_box","action","augment_args","augment_args_for_update","augment_subcommands","augment_subcommands_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","create_snapshot","deref","deref","deref_mut","deref_mut","drop","drop","execute_block","fast_forward","fmt","fmt","follow_chain","from","from","from_arg_matches","from_arg_matches","from_arg_matches_mut","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","group_id","has_subcommand","init","init","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","offchain_worker","on_runtime_upgrade","run","run","shared","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches","update_from_arg_matches_mut","update_from_arg_matches_mut","vzip","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","run","snapshot_path","to_owned","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","block_ws_uri","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","run","state","to_owned","try_from","try_into","try_state","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","block_ws_uri","borrow","borrow_mut","chain","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","n_blocks","run","run_migrations","state","to_owned","try_from","try_into","try_state","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","keep_connection","run","state_root_check","to_owned","try_from","try_into","try_state","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","uri","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","header_ws_uri","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","run","state","to_owned","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","checks","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","no_idempotency_checks","no_weight_warnings","run","state","to_owned","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","AlephZero","Chain","ChainIter","Err","InherentProvider","Kusama","Polkadot","Rococo","SubstrateKitchenSink","SubstrateNodeTemplate","Westend","__clone_box","__clone_box","augment_subcommands","augment_subcommands_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","deref","deref","deref_mut","deref_mut","drop","drop","fmt","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_str","get_inherent_providers_and_pre_digest","get_inherent_providers_and_pre_digest","has_subcommand","init","init","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_iter","into_mut","into_mut","into_ref","into_ref","iter","len","len","next","next_back","nth","par_bridge","progress_with","size_hint","to_owned","to_owned","to_string","try_collect","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","Existing","Path","Runtime","SharedParams","__clone_box","__clone_box","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","deref","deref","deref_mut","deref_mut","drop","drop","export_proof","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_str","group_id","heap_pages","init","init","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","overwrite_state_version","runtime","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","wasm_method","wasmtime_instantiation_strategy","Check","Check","Live","LiveState","Skip","Skip","Snap","SpecVersionCheck","State","TryRuntimeFeatureCheck","__clone_box","__clone_box","at","augment_args","augment_args_for_update","augment_subcommands","augment_subcommands_for_update","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","child_tree","clone","clone","clone_into","clone_into","defensive_max","defensive_max","defensive_min","defensive_min","defensive_strict_max","defensive_strict_max","defensive_strict_min","defensive_strict_min","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","eq","eq","fmt","fmt","from","from","from","from","from_arg_matches","from_arg_matches","from_arg_matches_mut","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","group_id","has_subcommand","hashed_prefixes","init","init","init","init","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","pallet","partial_cmp","partial_cmp","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches","update_from_arg_matches_mut","update_from_arg_matches_mut","uri","vzip","vzip","vzip","vzip","path","snapshot_path"],"q":[[0,"try_runtime_core"],[32,"try_runtime_core::commands"],[124,"try_runtime_core::commands::create_snapshot"],[166,"try_runtime_core::commands::execute_block"],[209,"try_runtime_core::commands::fast_forward"],[255,"try_runtime_core::commands::follow_chain"],[299,"try_runtime_core::commands::offchain_worker"],[341,"try_runtime_core::commands::on_runtime_upgrade"],[385,"try_runtime_core::inherent_provider"],[479,"try_runtime_core::shared_parameters"],[557,"try_runtime_core::state"],[704,"try_runtime_core::state::State"]],"d":["","","","","","","","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","TODO: Docs","","Calls U::from(self)
.","","","","","","","","","","try_from Vec encoded as (Weight, Weight) tuple","","","","","","","","Possible actions of try-runtime
.","Create snapshot files.","Executes the given block against some state.","Executes a runtime upgrade (optional), then mines a number …","Follow the given chain’s finalized blocks and apply all …","Executes the offchain worker hooks of a given block …","Execute the migrations of the given runtime","Ready to use, vanilla command combining common actions.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Configurations for run
.","","","","","","","","","","","","","","Returns the argument unchanged.","The source of the snapshot. Must be a remote node.","","","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","","Calls U::from(self)
.","","","","","","Runs the create_snapshot
command.","The snapshot path to write to.","","","","","","","","","","","Configurations for run
.","","","","The ws uri from which to fetch the block.","","","","","","","","","","","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self)
.","","","","","","","The state type to use.","","","","Which try-state targets to execute when running this …","","","","","","","","Configuration for run
.","","","","The ws uri from which to fetch the block.","","","Chain","","","","","","","","","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self)
.","","","","","","How many empty blocks should be processed.","","Whether to run pending migrations before fast-forwarding.","The state type to use.","","","","Which try-state targets to execute when running this …","","","","","","","","Configurations for run
.","","","","","","","","","","","","","","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self)
.","","","","","","If present, a single connection to a node will be kept and …","","If set, then the state root check is enabled.","","","","Which try-state targets to execute when running this …","","","","","","","The url to connect to.","","Configuration for run
.","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","The ws uri from which to fetch the header.","","Calls U::from(self)
.","","","","","","","The state type to use.","","","","","","","","","","","Configuration for run
.","","","","","","Select which optional checks to perform. Selects all when …","","","","","","","","","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self)
.","","","","","","Whether to disable migration idempotency checks","Whether to disable weight warnings, useful if the runtime …","","The state type to use.","","","","","","","","","","","","Chains that have InherentProvider
implemented.","An iterator over the variants of Chain","","Trait for providing the inherent data and digest items for …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Get a mutable reference to the inner from the outer.","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Use the code of the remote node, or the snapshot.","Use the given path to the wasm binary file.","","Shared parameters of the try-runtime
commands","","","","","","","","","","","","","","","","","","","","","Path to a file to export the storage proof into (as a …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","","The number of 64KB pages to allocate for Wasm execution. …","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","Overwrite the state_version
.","The runtime to use.","","","","","","","","","","","","","","","","","","","Type of wasm execution used.","The WASM instantiation method to use.","Check the runtime was compiled with try-runtime feature","Check that the new runtime spec_version
is greater than …","Use a live chain as the source of runtime state.","A Live
variant for State
","Don’t check if the runtime was compiled with try-runtime …","Don’t check that the new runtime spec_version
is greater …","Use a state snapshot as the source of runtime state.","Options for [to_ext
]","The source of runtime state to use.","Options for [to_ext
]","","","The block hash at which to fetch the state.","","","","","","","","","","","","","Fetch the child-keys as well.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","","Storage entry key prefixes to scrape and inject into the …","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","A pallet to scrape. Can be provided multiple times. If …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The url to connect to.","","","","","","DEPRECATED: use --path
instead."],"i":[0,10,10,0,10,10,10,10,10,10,10,10,0,10,10,10,10,10,10,10,10,0,0,10,10,10,10,10,10,10,10,10,0,16,16,16,16,16,16,0,15,16,15,15,15,16,16,15,16,15,16,15,16,15,16,15,15,0,15,16,15,16,15,16,0,0,15,16,0,15,16,15,16,15,16,15,15,16,16,15,15,16,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,0,0,15,16,15,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,0,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,0,26,26,26,26,26,26,26,26,26,26,26,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,27,27,27,27,27,27,27,27,27,27,27,27,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,28,28,28,28,28,28,28,28,28,28,28,28,28,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,29,29,29,29,29,29,29,29,29,29,29,29,29,0,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,0,30,30,30,30,30,30,30,30,30,30,30,0,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,0,31,31,31,31,31,31,31,31,31,31,31,32,0,0,46,0,32,32,32,32,32,32,32,33,32,32,32,33,32,33,32,33,32,33,32,32,32,33,32,33,32,33,32,32,33,32,33,32,32,32,32,33,33,32,32,33,33,32,46,32,32,32,33,32,33,32,33,32,33,32,33,33,32,33,32,33,32,33,33,33,33,33,33,33,33,32,33,32,33,32,33,32,33,32,33,32,33,32,33,32,33,32,32,32,33,40,40,0,0,25,40,25,25,25,40,25,40,25,40,25,40,25,25,25,40,25,40,25,40,25,25,40,25,40,25,25,25,25,40,40,25,25,40,40,40,25,25,25,40,25,40,25,40,25,40,25,40,25,40,25,40,25,25,25,40,25,40,25,40,25,40,25,40,25,40,25,40,25,25,25,40,25,25,43,44,42,0,43,44,42,0,0,0,41,42,41,41,41,42,42,41,42,43,44,41,42,43,44,41,41,42,41,42,43,44,43,44,43,44,43,44,41,42,43,44,41,42,43,44,41,42,43,44,43,44,41,42,41,42,43,44,41,42,41,42,41,41,42,42,43,43,44,44,41,41,42,42,43,43,44,44,41,42,41,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,43,44,41,42,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,41,42,41,41,42,43,44,47,47],"f":[0,[[]],[[]],0,[1],[1],[1],[[]],[[]],[[]],[[]],[[]],0,[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,0,0,[[],7],[[[9,[8]]],[[7,[10]]]],[[],7],[[],11],[[],12],[[]],[[]],0,[[]],0,0,0,0,0,0,0,0,[13],[13],0,[14,14],[14,14],[14,14],[14,14],[[]],[[]],[[]],[[]],[15,15],[16,16],[[]],[[]],[[],14],[[],14],0,[1],[1],[1],[1],[1],[1],0,0,[[15,17],18],[[16,17],18],0,[[]],[[]],[19,[[7,[15,20]]]],[19,[[7,[16,20]]]],[19,[[7,[15,20]]]],[19,[[7,[16,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[12,23],[[],1],[[],1],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],0,0,[15,24],[[16,25],24],0,[[]],[[]],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],12],[[],12],[[]],[[]],[[]],[[]],[[15,19],[[7,[20]]]],[[16,19],[[7,[20]]]],[[15,19],[[7,[20]]]],[[16,19],[[7,[20]]]],[[]],[[]],0,[13],[14,14],[14,14],[[]],[[]],[26,26],[[]],[[],14],[[],14],[1],[1],[1],[[26,17],18],[[]],0,[19,[[7,[26,20]]]],[19,[[7,[26,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[25,26],24],0,[[]],[[],7],[[],7],[[],11],[[],12],[[]],[[]],[[26,19],[[7,[20]]]],[[26,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],0,[[]],[[]],[27,27],[[]],[[],14],[[],14],[1],[1],[1],[[27,17],18],[[]],[19,[[7,[27,20]]]],[19,[[7,[27,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[25,27],24],0,[[]],[[],7],[[],7],0,[[],11],[[],12],[[]],[[]],[[27,19],[[7,[20]]]],[[27,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],0,[[]],[[]],0,[28,28],[[]],[[],14],[[],14],[1],[1],[1],[[28,17],18],[[]],[19,[[7,[28,20]]]],[19,[[7,[28,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,[[25,28],24],0,0,[[]],[[],7],[[],7],0,[[],11],[[],12],[[]],[[]],[[28,19],[[7,[20]]]],[[28,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],[[]],[[]],[29,29],[[]],[[],14],[[],14],[1],[1],[1],[[29,17],18],[[]],[19,[[7,[29,20]]]],[19,[[7,[29,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,[[25,29],24],0,[[]],[[],7],[[],7],0,[[],11],[[],12],[[]],[[]],[[29,19],[[7,[20]]]],[[29,19],[[7,[20]]]],0,[[]],0,[13],[14,14],[14,14],[[]],[[]],[30,30],[[]],[[],14],[[],14],[1],[1],[1],[[30,17],18],[[]],[19,[[7,[30,20]]]],[19,[[7,[30,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],0,[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[25,30],24],0,[[]],[[],7],[[],7],[[],11],[[],12],[[]],[[]],[[30,19],[[7,[20]]]],[[30,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],[[]],[[]],0,[31,31],[[]],[[],14],[[],14],[1],[1],[1],[[31,17],18],[[]],[19,[[7,[31,20]]]],[19,[[7,[31,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,0,[[25,31],24],0,[[]],[[],7],[[],7],[[],11],[[],12],[[]],[[]],[[31,19],[[7,[20]]]],[[31,19],[[7,[20]]]],[[]],0,0,0,0,0,0,0,0,0,0,0,[13],[13],[14,14],[14,14],[[]],[[]],[[]],[[]],[32,32],[33,33],[[]],[[]],[[],14],[[],14],[1],[1],[1],[1],[1],[1],[[32,17],[[7,[34]]]],[[32,17],18],[[33,17],18],[[]],[[]],[19,[[7,[32,20]]]],[19,[[7,[32,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,[[7,[32]]]],[22,7],[[32,22],7],[12,23],[[],1],[[],1],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],[[]],[[],33],[[],1],[33,1],[33,22],[33,22],[[33,1],22],[[],35],[36,37],[33],[[]],[[]],[[],38],[[],[[7,[39]]]],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],12],[[],12],[[]],[[]],[[]],[[]],[[32,19],[[7,[20]]]],[[32,19],[[7,[20]]]],[[]],[[]],0,0,0,0,[13],[13],[14,14],[14,14],[[]],[[]],[[]],[[]],[25,25],[40,40],[[]],[[]],[[],14],[[],14],[1],[1],[1],[1],[1],[1],0,[[25,17],18],[[40,17],18],[[]],[[]],[19,[[7,[25,20]]]],[19,[[7,[25,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,[[7,[40]]]],[[],[[22,[21]]]],0,[[],1],[[],1],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],12],[[],12],[[]],[[]],[[]],[[]],[[25,19],[[7,[20]]]],[[25,19],[[7,[20]]]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[13],[13],0,[14,14],[14,14],[14,14],[14,14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[41,41],[42,42],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[[43,43],23],[[44,44],23],[[41,17],18],[[42,17],18],[[]],[[]],[[]],[[]],[19,[[7,[41,20]]]],[19,[[7,[42,20]]]],[19,[[7,[41,20]]]],[19,[[7,[42,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[12,23],0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[43,43],[[22,[45]]]],[[44,44],[[22,[45]]]],[[]],[[]],[[],7],[[],7],[[],7],[[],7],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],11],[[],11],[[],12],[[],12],[[],12],[[],12],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[41,19],[[7,[20]]]],[[42,19],[[7,[20]]]],[[41,19],[[7,[20]]]],[[42,19],[[7,[20]]]],0,[[]],[[]],[[]],[[]],0,0],"c":[],"p":[[15,"usize"],[3,"Global"],[3,"Box"],[8,"Any"],[3,"Arc"],[3,"Rc"],[4,"Result"],[15,"u8"],[3,"Vec"],[3,"RefTimeInfo"],[3,"TypeId"],[15,"str"],[3,"Private"],[3,"Command"],[3,"TryRuntime"],[4,"Action"],[3,"Formatter"],[6,"Result"],[3,"ArgMatches"],[6,"Error"],[3,"Id"],[4,"Option"],[15,"bool"],[6,"Result"],[3,"SharedParams"],[3,"Command"],[3,"Command"],[3,"Command"],[3,"Command"],[3,"Command"],[3,"Command"],[4,"Chain"],[3,"ChainIter"],[3,"Error"],[3,"IterBridge"],[3,"ProgressBar"],[3,"ProgressBarIter"],[3,"String"],[3,"BoundedVec"],[4,"Runtime"],[3,"LiveState"],[4,"State"],[4,"TryRuntimeFeatureCheck"],[4,"SpecVersionCheck"],[4,"Ordering"],[8,"InherentProvider"],[13,"Snap"]]}\
+"try_runtime_core":{"doc":"","t":"DLLALLLLLLLLALLLLLLLMAALLLLLLLMLENNNNNNDLLMLLLLLLLLLLLLLLALLLLLLAALLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAALLMLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLMLLLLLLLLLLLLLLFMLLLLLLLLLLDLLLMLLLLLLLLLLLLLLLLLLLLLLLLLFMLLLMLLLLLLLDLLLMLLMLLLLLLLLLLLLLLLLLLLLLLLMFMMLLLMLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFMLLLMLLLLLLMLDLLLLLLLLLLLLLLLLLLLLLMLLLLLLLFMLLLLLLLLLLDLLLLLMLLLLLLLLLLLLLLLLLLLLLLLMMFMLLLLLLLLLLNEDQINNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNNEDLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLMMNNNDNNNEEELLLMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLMM","n":["RefTimeInfo","borrow","borrow_mut","commands","deref","deref_mut","drop","from","from_mut","from_mut","from_ref","from_ref","inherent_provider","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","max","shared_parameters","state","try_from","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","used","vzip","Action","CreateSnapshot","ExecuteBlock","FastForward","FollowChain","OffchainWorker","OnRuntimeUpgrade","TryRuntime","__clone_box","__clone_box","action","augment_args","augment_args_for_update","augment_subcommands","augment_subcommands_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","create_snapshot","deref","deref","deref_mut","deref_mut","drop","drop","execute_block","fast_forward","fmt","fmt","follow_chain","from","from","from_arg_matches","from_arg_matches","from_arg_matches_mut","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","group_id","has_subcommand","init","init","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","offchain_worker","on_runtime_upgrade","run","run","shared","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches","update_from_arg_matches_mut","update_from_arg_matches_mut","vzip","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","run","snapshot_path","to_owned","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","block_ws_uri","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","run","state","to_owned","try_from","try_into","try_state","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","block_ws_uri","borrow","borrow_mut","chain","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","n_blocks","run","run_migrations","state","to_owned","try_from","try_into","try_state","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","keep_connection","run","state_root_check","to_owned","try_from","try_into","try_state","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","uri","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","header_ws_uri","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","run","state","to_owned","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","Command","__clone_box","augment_args","augment_args_for_update","borrow","borrow_mut","checks","clone","clone_into","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_ref","from_ref","group_id","init","into","into_any","into_any_arc","into_any_rc","into_mut","into_ref","no_idempotency_checks","no_weight_warnings","run","state","to_owned","try_from","try_into","type_id","type_name","unchecked_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","AlephZero","Chain","ChainIter","Err","InherentProvider","Kusama","Polkadot","Rococo","SubstrateKitchenSink","SubstrateNodeTemplate","Westend","__clone_box","__clone_box","augment_subcommands","augment_subcommands_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","deref","deref","deref_mut","deref_mut","drop","drop","fmt","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_str","get_inherent_providers_and_pre_digest","get_inherent_providers_and_pre_digest","has_subcommand","init","init","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_iter","into_mut","into_mut","into_ref","into_ref","iter","len","len","next","next_back","nth","par_bridge","progress_with","size_hint","to_owned","to_owned","to_string","try_collect","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","Existing","Path","Runtime","SharedParams","__clone_box","__clone_box","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","deref","deref","deref_mut","deref_mut","drop","drop","export_proof","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_str","group_id","heap_pages","init","init","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_mut","into_mut","into_ref","into_ref","overwrite_state_version","runtime","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","type_name","type_name","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","wasm_method","wasmtime_instantiation_strategy","Check","Check","Live","LiveState","Skip","Skip","Snap","SpecVersionCheck","State","TryRuntimeFeatureCheck","__clone_box","__clone_box","at","at","augment_args","augment_args_for_update","augment_subcommands","augment_subcommands_for_update","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","child_tree","clone","clone","clone_into","clone_into","defensive_max","defensive_max","defensive_min","defensive_min","defensive_strict_max","defensive_strict_max","defensive_strict_min","defensive_strict_min","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","eq","eq","fmt","fmt","from","from","from","from","from_arg_matches","from_arg_matches","from_arg_matches_mut","from_arg_matches_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_mut","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","group_id","has_subcommand","hashed_prefixes","init","init","init","init","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_mut","into_mut","into_mut","into_mut","into_ref","into_ref","into_ref","into_ref","pallet","partial_cmp","partial_cmp","to_owned","to_owned","to_prev_block_live_state","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_name","type_name","type_name","type_name","unchecked_into","unchecked_into","unchecked_into","unchecked_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","unique_saturated_into","update_from_arg_matches","update_from_arg_matches","update_from_arg_matches_mut","update_from_arg_matches_mut","uri","vzip","vzip","vzip","vzip","path","snapshot_path"],"q":[[0,"try_runtime_core"],[32,"try_runtime_core::commands"],[124,"try_runtime_core::commands::create_snapshot"],[166,"try_runtime_core::commands::execute_block"],[209,"try_runtime_core::commands::fast_forward"],[255,"try_runtime_core::commands::follow_chain"],[299,"try_runtime_core::commands::offchain_worker"],[341,"try_runtime_core::commands::on_runtime_upgrade"],[385,"try_runtime_core::inherent_provider"],[479,"try_runtime_core::shared_parameters"],[557,"try_runtime_core::state"],[706,"try_runtime_core::state::State"]],"d":["","","","","","","","Returns the argument unchanged.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","TODO: Docs","","Calls U::from(self)
.","","","","","","","","","","try_from Vec encoded as (Weight, Weight) tuple","","","","","","","","Possible actions of try-runtime
.","Create snapshot files.","Executes the given block against some state.","Executes a runtime upgrade (optional), then mines a number …","Follow the given chain’s finalized blocks and apply all …","Executes the offchain worker hooks of a given block …","Execute the migrations of the given runtime","Ready to use, vanilla command combining common actions.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Configurations for run
.","","","","","","","","","","","","","","Returns the argument unchanged.","The source of the snapshot. Must be a remote node.","","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Calls U::from(self)
.","","","","","","Runs the create_snapshot
command.","The snapshot path to write to.","","","","","","","","","","","Configurations for run
.","","","","The ws uri from which to fetch the block.","","","","","","","","","","","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","Calls U::from(self)
.","","","","","","","The state type to use.","","","","Which try-state targets to execute when running this …","","","","","","","","Configuration for run
.","","","","The ws uri from which to fetch the block.","","","Chain","","","","","","","","","Returns the argument unchanged.","","","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Calls U::from(self)
.","","","","","","How many empty blocks should be processed.","","Whether to run pending migrations before fast-forwarding.","The state type to use.","","","","Which try-state targets to execute when running this …","","","","","","","","Configurations for run
.","","","","","","","","","","","","","","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","","Calls U::from(self)
.","","","","","","If present, a single connection to a node will be kept and …","","If set, then the state root check is enabled.","","","","Which try-state targets to execute when running this …","","","","","","","The url to connect to.","","Configuration for run
.","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","","The ws uri from which to fetch the header.","","Calls U::from(self)
.","","","","","","","The state type to use.","","","","","","","","","","","Configuration for run
.","","","","","","Select which optional checks to perform. Selects all when …","","","","","","","","","Returns the argument unchanged.","","","Get a mutable reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","","Calls U::from(self)
.","","","","","","Whether to disable migration idempotency checks","Whether to disable weight warnings, useful if the runtime …","","The state type to use.","","","","","","","","","","","","Chains that have InherentProvider
implemented.","An iterator over the variants of Chain","","Trait for providing the inherent data and digest items for …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a reference to the inner from the outer.","Get a reference to the inner from the outer.","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Use the code of the remote node, or the snapshot.","Use the given path to the wasm binary file.","","Shared parameters of the try-runtime
commands","","","","","","","","","","","","","","","","","","","","","Path to a file to export the storage proof into (as a …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","","The number of 64KB pages to allocate for Wasm execution. …","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","Overwrite the state_version
.","The runtime to use.","","","","","","","","","","","","","","","","","","","Type of wasm execution used.","The WASM instantiation method to use.","Check the runtime was compiled with try-runtime feature","Check that the new runtime spec_version
is greater than …","Use a live chain as the source of runtime state.","A Live
variant for State
","Don’t check if the runtime was compiled with try-runtime …","Don’t check that the new runtime spec_version
is greater …","Use a state snapshot as the source of runtime state.","Options for [to_ext
]","The source of runtime state to use.","Options for [to_ext
]","","","Return the at
block hash as a Hash
, if it exists.","The block hash at which to fetch the state.","","","","","","","","","","","","","Fetch the child-keys as well.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","","Get a mutable reference to the inner from the outer.","Get a reference to the inner from the outer.","","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","Get a reference to the inner from the outer.","","","Storage entry key prefixes to scrape and inject into the …","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","A pallet to scrape. Can be provided multiple times. If …","","","","","Converts this LiveState
into a LiveState
for the previous …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The url to connect to.","","","","","","DEPRECATED: use --path
instead."],"i":[0,10,10,0,10,10,10,10,10,10,10,10,0,10,10,10,10,10,10,10,10,0,0,10,10,10,10,10,10,10,10,10,0,16,16,16,16,16,16,0,15,16,15,15,15,16,16,15,16,15,16,15,16,15,16,15,15,0,15,16,15,16,15,16,0,0,15,16,0,15,16,15,16,15,16,15,15,16,16,15,15,16,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,0,0,15,16,15,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,15,16,0,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,0,26,26,26,26,26,26,26,26,26,26,26,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,27,27,27,27,27,27,27,27,27,27,27,27,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,28,28,28,28,28,28,28,28,28,28,28,28,28,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,29,29,29,29,29,29,29,29,29,29,29,29,29,0,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,0,30,30,30,30,30,30,30,30,30,30,30,0,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,0,31,31,31,31,31,31,31,31,31,31,31,32,0,0,46,0,32,32,32,32,32,32,32,33,32,32,32,33,32,33,32,33,32,33,32,32,32,33,32,33,32,33,32,32,33,32,33,32,32,32,32,33,33,32,32,33,33,32,46,32,32,32,33,32,33,32,33,32,33,32,33,33,32,33,32,33,32,33,33,33,33,33,33,33,33,32,33,32,33,32,33,32,33,32,33,32,33,32,33,32,33,32,32,32,33,40,40,0,0,25,40,25,25,25,40,25,40,25,40,25,40,25,25,25,40,25,40,25,40,25,25,40,25,40,25,25,25,25,40,40,25,25,40,40,40,25,25,25,40,25,40,25,40,25,40,25,40,25,40,25,40,25,25,25,40,25,40,25,40,25,40,25,40,25,40,25,40,25,25,25,40,25,25,43,44,42,0,43,44,42,0,0,0,41,42,41,41,41,41,42,42,41,42,43,44,41,42,43,44,41,41,42,41,42,43,44,43,44,43,44,43,44,41,42,43,44,41,42,43,44,41,42,43,44,43,44,41,42,41,42,43,44,41,42,41,42,41,41,42,42,43,43,44,44,41,41,42,42,43,43,44,44,41,42,41,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,43,44,41,42,41,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,43,44,41,42,41,42,41,41,42,43,44,47,47],"f":[0,[[]],[[]],0,[1],[1],[1],[[]],[[]],[[]],[[]],[[]],0,[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,0,0,[[],7],[[[9,[8]]],[[7,[10]]]],[[],7],[[],11],[[],12],[[]],[[]],0,[[]],0,0,0,0,0,0,0,0,[13],[13],0,[14,14],[14,14],[14,14],[14,14],[[]],[[]],[[]],[[]],[15,15],[16,16],[[]],[[]],[[],14],[[],14],0,[1],[1],[1],[1],[1],[1],0,0,[[15,17],18],[[16,17],18],0,[[]],[[]],[19,[[7,[15,20]]]],[19,[[7,[16,20]]]],[19,[[7,[15,20]]]],[19,[[7,[16,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[12,23],[[],1],[[],1],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],0,0,[15,24],[[16,25],24],0,[[]],[[]],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],12],[[],12],[[]],[[]],[[]],[[]],[[15,19],[[7,[20]]]],[[16,19],[[7,[20]]]],[[15,19],[[7,[20]]]],[[16,19],[[7,[20]]]],[[]],[[]],0,[13],[14,14],[14,14],[[]],[[]],[26,26],[[]],[[],14],[[],14],[1],[1],[1],[[26,17],18],[[]],0,[19,[[7,[26,20]]]],[19,[[7,[26,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[25,26],24],0,[[]],[[],7],[[],7],[[],11],[[],12],[[]],[[]],[[26,19],[[7,[20]]]],[[26,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],0,[[]],[[]],[27,27],[[]],[[],14],[[],14],[1],[1],[1],[[27,17],18],[[]],[19,[[7,[27,20]]]],[19,[[7,[27,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[25,27],24],0,[[]],[[],7],[[],7],0,[[],11],[[],12],[[]],[[]],[[27,19],[[7,[20]]]],[[27,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],0,[[]],[[]],0,[28,28],[[]],[[],14],[[],14],[1],[1],[1],[[28,17],18],[[]],[19,[[7,[28,20]]]],[19,[[7,[28,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,[[25,28],24],0,0,[[]],[[],7],[[],7],0,[[],11],[[],12],[[]],[[]],[[28,19],[[7,[20]]]],[[28,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],[[]],[[]],[29,29],[[]],[[],14],[[],14],[1],[1],[1],[[29,17],18],[[]],[19,[[7,[29,20]]]],[19,[[7,[29,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,[[25,29],24],0,[[]],[[],7],[[],7],0,[[],11],[[],12],[[]],[[]],[[29,19],[[7,[20]]]],[[29,19],[[7,[20]]]],0,[[]],0,[13],[14,14],[14,14],[[]],[[]],[30,30],[[]],[[],14],[[],14],[1],[1],[1],[[30,17],18],[[]],[19,[[7,[30,20]]]],[19,[[7,[30,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],0,[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[25,30],24],0,[[]],[[],7],[[],7],[[],11],[[],12],[[]],[[]],[[30,19],[[7,[20]]]],[[30,19],[[7,[20]]]],[[]],0,[13],[14,14],[14,14],[[]],[[]],0,[31,31],[[]],[[],14],[[],14],[1],[1],[1],[[31,17],18],[[]],[19,[[7,[31,20]]]],[19,[[7,[31,20]]]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[[],1],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],0,0,[[25,31],24],0,[[]],[[],7],[[],7],[[],11],[[],12],[[]],[[]],[[31,19],[[7,[20]]]],[[31,19],[[7,[20]]]],[[]],0,0,0,0,0,0,0,0,0,0,0,[13],[13],[14,14],[14,14],[[]],[[]],[[]],[[]],[32,32],[33,33],[[]],[[]],[[],14],[[],14],[1],[1],[1],[1],[1],[1],[[32,17],18],[[32,17],[[7,[34]]]],[[33,17],18],[[]],[[]],[19,[[7,[32,20]]]],[19,[[7,[32,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,[[7,[32]]]],[22,7],[[32,22],7],[12,23],[[],1],[[],1],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],[[]],[[],33],[[],1],[33,1],[33,22],[33,22],[[33,1],22],[[],35],[36,37],[33],[[]],[[]],[[],38],[[],[[7,[39]]]],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],12],[[],12],[[]],[[]],[[]],[[]],[[32,19],[[7,[20]]]],[[32,19],[[7,[20]]]],[[]],[[]],0,0,0,0,[13],[13],[14,14],[14,14],[[]],[[]],[[]],[[]],[25,25],[40,40],[[]],[[]],[[],14],[[],14],[1],[1],[1],[1],[1],[1],0,[[25,17],18],[[40,17],18],[[]],[[]],[19,[[7,[25,20]]]],[19,[[7,[25,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,[[7,[40]]]],[[],[[22,[21]]]],0,[[],1],[[],1],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],12],[[],12],[[]],[[]],[[]],[[]],[[25,19],[[7,[20]]]],[[25,19],[[7,[20]]]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[13],[13],[41,[[24,[22]]]],0,[14,14],[14,14],[14,14],[14,14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[41,41],[42,42],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[[43,43],23],[[44,44],23],[[41,17],18],[[42,17],18],[[]],[[]],[[]],[[]],[19,[[7,[41,20]]]],[19,[[7,[42,20]]]],[19,[[7,[41,20]]]],[19,[[7,[42,20]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[22,[21]]]],[12,23],0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[3,[2]]],[[3,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[5,[2]]],[[5,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[[6,[2]]],[[6,[4,2]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[43,43],[[22,[45]]]],[[44,44],[[22,[45]]]],[[]],[[]],[41,[[24,[41]]]],[[],7],[[],7],[[],7],[[],7],[[],7],[[],7],[[],7],[[],7],[[],11],[[],11],[[],11],[[],11],[[],12],[[],12],[[],12],[[],12],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[41,19],[[7,[20]]]],[[42,19],[[7,[20]]]],[[41,19],[[7,[20]]]],[[42,19],[[7,[20]]]],0,[[]],[[]],[[]],[[]],0,0],"c":[],"p":[[15,"usize"],[3,"Global"],[3,"Box"],[8,"Any"],[3,"Arc"],[3,"Rc"],[4,"Result"],[15,"u8"],[3,"Vec"],[3,"RefTimeInfo"],[3,"TypeId"],[15,"str"],[3,"Private"],[3,"Command"],[3,"TryRuntime"],[4,"Action"],[3,"Formatter"],[6,"Result"],[3,"ArgMatches"],[6,"Error"],[3,"Id"],[4,"Option"],[15,"bool"],[6,"Result"],[3,"SharedParams"],[3,"Command"],[3,"Command"],[3,"Command"],[3,"Command"],[3,"Command"],[3,"Command"],[4,"Chain"],[3,"ChainIter"],[3,"Error"],[3,"IterBridge"],[3,"ProgressBar"],[3,"ProgressBarIter"],[3,"String"],[3,"BoundedVec"],[4,"Runtime"],[3,"LiveState"],[4,"State"],[4,"TryRuntimeFeatureCheck"],[4,"SpecVersionCheck"],[4,"Ordering"],[8,"InherentProvider"],[13,"Snap"]]}\
}');
if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)};
if (typeof exports !== 'undefined') {exports.searchIndex = searchIndex};
diff --git a/src/try_runtime_core/commands/execute_block.rs.html b/src/try_runtime_core/commands/execute_block.rs.html
index ec922d649a4..d56ee4239cb 100644
--- a/src/try_runtime_core/commands/execute_block.rs.html
+++ b/src/try_runtime_core/commands/execute_block.rs.html
@@ -157,32 +157,6 @@
157
158
159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
// This file is part of try-runtime-cli.
// Copyright (C) Parity Technologies (UK) Ltd.
@@ -204,7 +178,6 @@
use parity_scale_codec::Encode;
use sc_executor::sp_wasm_interface::HostFunctions;
-use sp_rpc::{list::ListOrValue, number::NumberOrHex};
use sp_runtime::{
generic::SignedBlock,
traits::{Block as BlockT, Header as HeaderT, NumberFor},
@@ -280,8 +253,23 @@
HostFns: HostFunctions,
{
let executor = build_executor::<HostFns>(&shared);
- let ext = command
- .state
+ let block_ws_uri = command.block_ws_uri();
+ let rpc = ws_client(&block_ws_uri).await?;
+
+ let live_state = match command.state {
+ State::Live(live_state) => live_state,
+ _ => {
+ unreachable!("execute block currently only supports Live state")
+ }
+ };
+
+ // The block we want to *execute* at is the block passed by the user
+ let execute_at = live_state.at::<Block>()?;
+
+ let prev_block_live_state = live_state.to_prev_block_live_state::<Block>().await?;
+
+ // Get state for the prev block
+ let ext = State::Live(prev_block_live_state)
.to_ext::<Block, HostFns>(
&shared,
&executor,
@@ -291,21 +279,13 @@
)
.await?;
- // get the block number associated with this block.
- let block_ws_uri = command.block_ws_uri();
- let rpc = ws_client(&block_ws_uri).await?;
- let next_hash = next_hash_of::<Block>(&rpc, ext.block_hash).await?;
-
- log::info!(target: LOG_TARGET, "fetching next block: {:?} ", next_hash);
-
- let block = ChainApi::<(), Block::Hash, Block::Header, SignedBlock<Block>>::block(
- &rpc,
- Some(next_hash),
- )
- .await
- .map_err(rpc_err_handler)?
- .expect("header exists, block should also exist; qed")
- .block;
+ // Execute the desired block on top of it
+ let block =
+ ChainApi::<(), Block::Hash, Block::Header, SignedBlock<Block>>::block(&rpc, execute_at)
+ .await
+ .map_err(rpc_err_handler)?
+ .expect("header exists, block should also exist; qed")
+ .block;
// A digest item gets added when the runtime is processing the block, so we need to pop
// the last one to be consistent with what a gossiped block would contain.
@@ -336,36 +316,4 @@
Ok(())
}
-
-pub(crate) async fn next_hash_of<Block: BlockT>(
- rpc: &substrate_rpc_client::WsClient,
- hash: Block::Hash,
-) -> sc_cli::Result<Block::Hash>
-where
- Block: BlockT + serde::de::DeserializeOwned,
- Block::Header: serde::de::DeserializeOwned,
-{
- let number = ChainApi::<(), Block::Hash, Block::Header, ()>::header(rpc, Some(hash))
- .await
- .map_err(rpc_err_handler)
- .and_then(|maybe_header| maybe_header.ok_or("header_not_found").map(|h| *h.number()))?;
-
- let next = number + sp_runtime::traits::One::one();
-
- let next_hash = match ChainApi::<(), Block::Hash, Block::Header, ()>::block_hash(
- rpc,
- Some(ListOrValue::Value(NumberOrHex::Number(
- next.try_into()
- .map_err(|_| "failed to convert number to block number")?,
- ))),
- )
- .await
- .map_err(rpc_err_handler)?
- {
- ListOrValue::Value(t) => t.expect("value passed in; value comes out; qed"),
- _ => unreachable!(),
- };
-
- Ok(next_hash)
-}