diff --git a/prdoc/pr_3915.prdoc b/prdoc/pr_3915.prdoc
new file mode 100644
index 0000000000000000000000000000000000000000..a236288c99fbf9962c049105a411be50bbd60a01
--- /dev/null
+++ b/prdoc/pr_3915.prdoc
@@ -0,0 +1,14 @@
+# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
+# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
+
+title: "[pallet-contracts] Weights update"
+
+doc:
+  - audience: Runtime Dev
+    description: |
+      Update Host functions benchmarks, instead of benchmarking the whole call extrinsic, this PR solely benchmark the execution of the Host function.
+      Previously, some benchmarks would overestimate the weight as both the parsing and execution of the contract were included in the benchmark.
+
+crates:
+- name: pallet-contracts
+  bump: patch
diff --git a/substrate/frame/contracts/fixtures/contracts/return_with_data.rs b/substrate/frame/contracts/fixtures/contracts/return_with_data.rs
index 5340f86fbfc589e1c0c3ca3c25c40c24a5276cd1..26f74edba5d0afdbd9fef8c88028a1e9f157da4c 100644
--- a/substrate/frame/contracts/fixtures/contracts/return_with_data.rs
+++ b/substrate/frame/contracts/fixtures/contracts/return_with_data.rs
@@ -38,6 +38,10 @@ pub extern "C" fn call() {
 		output: [u8],
 	);
 
+	// Burn some PoV, clear_storage consumes some PoV as in order to clear the storage we need to we
+	// need to read its size first.
+	api::clear_storage_v1(b"");
+
 	let exit_status = uapi::ReturnFlags::from_bits(exit_status[0] as u32).unwrap();
 	api::return_value(exit_status, output);
 }
diff --git a/substrate/frame/contracts/src/benchmarking/call_builder.rs b/substrate/frame/contracts/src/benchmarking/call_builder.rs
new file mode 100644
index 0000000000000000000000000000000000000000..285fe0052b4d95a200eaebd0a86fb77d729aacfd
--- /dev/null
+++ b/substrate/frame/contracts/src/benchmarking/call_builder.rs
@@ -0,0 +1,170 @@
+// This file is part of Substrate.
+
+// Copyright (C) Parity Technologies (UK) Ltd.
+// SPDX-License-Identifier: Apache-2.0
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// 	http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+use crate::{
+	benchmarking::{Contract, WasmModule},
+	exec::Stack,
+	storage::meter::Meter,
+	wasm::Runtime,
+	BalanceOf, Config, DebugBufferVec, Determinism, ExecReturnValue, GasMeter, Origin, Schedule,
+	TypeInfo, WasmBlob, Weight,
+};
+use codec::{Encode, HasCompact};
+use core::fmt::Debug;
+use sp_core::Get;
+use sp_std::prelude::*;
+
+type StackExt<'a, T> = Stack<'a, T, WasmBlob<T>>;
+
+/// A prepared contract call ready to be executed.
+pub struct PreparedCall<'a, T: Config> {
+	func: wasmi::Func,
+	store: wasmi::Store<Runtime<'a, StackExt<'a, T>>>,
+}
+
+impl<'a, T: Config> PreparedCall<'a, T> {
+	pub fn call(mut self) -> ExecReturnValue {
+		let result = self.func.call(&mut self.store, &[], &mut []);
+		WasmBlob::<T>::process_result(self.store, result).unwrap()
+	}
+}
+
+/// A builder used to prepare a contract call.
+pub struct CallSetup<T: Config> {
+	contract: Contract<T>,
+	dest: T::AccountId,
+	origin: Origin<T>,
+	gas_meter: GasMeter<T>,
+	storage_meter: Meter<T>,
+	schedule: Schedule<T>,
+	value: BalanceOf<T>,
+	debug_message: Option<DebugBufferVec<T>>,
+	determinism: Determinism,
+	data: Vec<u8>,
+}
+
+impl<T> CallSetup<T>
+where
+	T: Config + pallet_balances::Config,
+	<BalanceOf<T> as HasCompact>::Type: Clone + Eq + PartialEq + Debug + TypeInfo + Encode,
+{
+	/// Setup a new call for the given module.
+	pub fn new(module: WasmModule<T>) -> Self {
+		let contract = Contract::<T>::new(module.clone(), vec![]).unwrap();
+		let dest = contract.account_id.clone();
+		let origin = Origin::from_account_id(contract.caller.clone());
+
+		let storage_meter = Meter::new(&origin, None, 0u32.into()).unwrap();
+
+		Self {
+			contract,
+			dest,
+			origin,
+			gas_meter: GasMeter::new(Weight::MAX),
+			storage_meter,
+			schedule: T::Schedule::get(),
+			value: 0u32.into(),
+			debug_message: None,
+			determinism: Determinism::Enforced,
+			data: vec![],
+		}
+	}
+
+	/// Set the meter's storage deposit limit.
+	pub fn set_storage_deposit_limit(&mut self, balance: BalanceOf<T>) {
+		self.storage_meter = Meter::new(&self.origin, Some(balance), 0u32.into()).unwrap();
+	}
+
+	/// Set the call's origin.
+	pub fn set_origin(&mut self, origin: Origin<T>) {
+		self.origin = origin;
+	}
+
+	/// Set the contract's balance.
+	pub fn set_balance(&mut self, value: BalanceOf<T>) {
+		self.contract.set_balance(value);
+	}
+
+	/// Set the call's input data.
+	pub fn set_data(&mut self, value: Vec<u8>) {
+		self.data = value;
+	}
+
+	/// Set the debug message.
+	pub fn enable_debug_message(&mut self) {
+		self.debug_message = Some(Default::default());
+	}
+
+	/// Get the debug message.
+	pub fn debug_message(&self) -> Option<DebugBufferVec<T>> {
+		self.debug_message.clone()
+	}
+
+	/// Get the call's input data.
+	pub fn data(&self) -> Vec<u8> {
+		self.data.clone()
+	}
+
+	/// Get the call's contract.
+	pub fn contract(&self) -> Contract<T> {
+		self.contract.clone()
+	}
+
+	/// Build the call stack.
+	pub fn ext(&mut self) -> (StackExt<'_, T>, WasmBlob<T>) {
+		StackExt::bench_new_call(
+			self.dest.clone(),
+			self.origin.clone(),
+			&mut self.gas_meter,
+			&mut self.storage_meter,
+			&self.schedule,
+			self.value,
+			self.debug_message.as_mut(),
+			self.determinism,
+		)
+	}
+
+	/// Prepare a call to the module.
+	pub fn prepare_call<'a>(
+		ext: &'a mut StackExt<'a, T>,
+		module: WasmBlob<T>,
+		input: Vec<u8>,
+	) -> PreparedCall<'a, T> {
+		let (func, store) = module.bench_prepare_call(ext, input);
+		PreparedCall { func, store }
+	}
+}
+
+#[macro_export]
+macro_rules! call_builder(
+	($func: ident, $module:expr) => {
+		$crate::call_builder!($func, _contract, $module);
+	};
+	($func: ident, $contract: ident, $module:expr) => {
+		let mut setup = CallSetup::<T>::new($module);
+		$crate::call_builder!($func, $contract, setup: setup);
+	};
+    ($func:ident, setup: $setup: ident) => {
+		$crate::call_builder!($func, _contract, setup: $setup);
+	};
+    ($func:ident, $contract: ident, setup: $setup: ident) => {
+		let data = $setup.data();
+		let $contract = $setup.contract();
+		let (mut ext, module) = $setup.ext();
+		let $func = CallSetup::<T>::prepare_call(&mut ext, module, data);
+	};
+);
diff --git a/substrate/frame/contracts/src/benchmarking/mod.rs b/substrate/frame/contracts/src/benchmarking/mod.rs
index 094edee96e94193d572e7d9f3af0657b9a966869..9e245c319b1d20b02469aa036263473ae79181d4 100644
--- a/substrate/frame/contracts/src/benchmarking/mod.rs
+++ b/substrate/frame/contracts/src/benchmarking/mod.rs
@@ -18,9 +18,11 @@
 //! Benchmarks for the contracts pallet
 #![cfg(feature = "runtime-benchmarks")]
 
+mod call_builder;
 mod code;
 mod sandbox;
 use self::{
+	call_builder::CallSetup,
 	code::{
 		body::{self, DynInstr::*},
 		DataSegment, ImportedFunction, ImportedMemory, Location, ModuleDefinition, WasmModule,
@@ -63,6 +65,7 @@ const API_BENCHMARK_RUNS: u32 = 1600;
 const INSTR_BENCHMARK_RUNS: u32 = 5000;
 
 /// An instantiated and deployed contract.
+#[derive(Clone)]
 struct Contract<T: Config> {
 	caller: T::AccountId,
 	account_id: T::AccountId,
@@ -598,17 +601,16 @@ mod benchmarks {
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_caller(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance = Contract::<T>::new(WasmModule::getter("seal0", "seal_caller", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-
-		Ok(())
+	fn seal_caller(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_caller", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_is_contract(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_is_contract(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let accounts = (0..r).map(|n| account::<T::AccountId>("account", n, 0)).collect::<Vec<_>>();
 		let account_len = accounts.get(0).map(|i| i.encode().len()).unwrap_or(0);
 		let accounts_bytes = accounts.iter().flat_map(|a| a.encode()).collect::<Vec<_>>();
@@ -631,21 +633,20 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let info = instance.info()?;
+		call_builder!(func, instance, code);
+		let info = instance.info().unwrap();
 		// every account would be a contract (worst case)
 		for acc in accounts.iter() {
 			<ContractInfoOf<T>>::insert(acc, info.clone());
 		}
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-
-		Ok(())
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_code_hash(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_code_hash(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let accounts = (0..r).map(|n| account::<T::AccountId>("account", n, 0)).collect::<Vec<_>>();
 		let account_len = accounts.get(0).map(|i| i.encode().len()).unwrap_or(0);
 		let accounts_bytes = accounts.iter().flat_map(|a| a.encode()).collect::<Vec<_>>();
@@ -676,30 +677,29 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let info = instance.info()?;
+		call_builder!(func, instance, code);
+		let info = instance.info().unwrap();
 		// every account would be a contract (worst case)
 		for acc in accounts.iter() {
 			<ContractInfoOf<T>>::insert(acc, info.clone());
 		}
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_own_code_hash(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::getter("seal0", "seal_own_code_hash", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_own_code_hash(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_own_code_hash", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_caller_is_origin(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_caller_is_origin(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
 			imported_functions: vec![ImportedFunction {
@@ -711,15 +711,15 @@ mod benchmarks {
 			call_body: Some(body::repeated(r, &[Instruction::Call(0), Instruction::Drop])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_caller_is_root(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_caller_is_root(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
 			imported_functions: vec![ImportedFunction {
@@ -731,81 +731,80 @@ mod benchmarks {
 			call_body: Some(body::repeated(r, &[Instruction::Call(0), Instruction::Drop])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Root;
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+		let mut setup = CallSetup::<T>::new(code);
+		setup.set_origin(Origin::Root);
+		call_builder!(func, setup: setup);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_address(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance = Contract::<T>::new(WasmModule::getter("seal0", "seal_address", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_address(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_address", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_gas_left(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance = Contract::<T>::new(WasmModule::getter("seal1", "gas_left", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_gas_left(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal1", "gas_left", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_balance(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance = Contract::<T>::new(WasmModule::getter("seal0", "seal_balance", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_balance(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_balance", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_value_transferred(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::getter("seal0", "seal_value_transferred", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_value_transferred(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_value_transferred", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_minimum_balance(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::getter("seal0", "seal_minimum_balance", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_minimum_balance(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_minimum_balance", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_block_number(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::getter("seal0", "seal_block_number", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_block_number(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_block_number", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_now(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance = Contract::<T>::new(WasmModule::getter("seal0", "seal_now", r), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_now(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::getter("seal0", "seal_now", r));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_weight_to_fee(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_weight_to_fee(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let pages = code::max_pages::<T>();
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
@@ -831,15 +830,15 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_input(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_input(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
 			imported_functions: vec![ImportedFunction {
@@ -859,11 +858,12 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
@@ -903,7 +903,7 @@ mod benchmarks {
 	// as precise as with other APIs. Because this function can only be called once per
 	// contract it cannot be used as an attack vector.
 	#[benchmark(pov_mode = Measured)]
-	fn seal_return(r: Linear<0, 1>) -> Result<(), BenchmarkError> {
+	fn seal_return(r: Linear<0, 1>) {
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
 			imported_functions: vec![ImportedFunction {
@@ -923,17 +923,15 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_return_per_byte(
-		n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>,
-	) -> Result<(), BenchmarkError> {
+	fn seal_return_per_byte(n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>) {
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
 			imported_functions: vec![ImportedFunction {
@@ -951,11 +949,11 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// The same argument as for `seal_return` is true here.
@@ -1060,7 +1058,7 @@ mod benchmarks {
 	// number (< 1 KB). Therefore we are not overcharging too much in case a smaller subject is
 	// used.
 	#[benchmark(pov_mode = Measured)]
-	fn seal_random(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_random(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let pages = code::max_pages::<T>();
 		let subject_len = T::Schedule::get().limits.subject_len;
 		assert!(subject_len < 1024);
@@ -1088,17 +1086,18 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// Overhead of calling the function without any topic.
 	// We benchmark for the worst case (largest event).
 	#[benchmark(pov_mode = Measured)]
-	fn seal_deposit_event(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_deposit_event(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
 			imported_functions: vec![ImportedFunction {
@@ -1119,11 +1118,12 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// Benchmark the overhead that topics generate.
@@ -1133,7 +1133,7 @@ mod benchmarks {
 	fn seal_deposit_event_per_topic_and_byte(
 		t: Linear<0, { T::Schedule::get().limits.event_topics }>,
 		n: Linear<0, { T::Schedule::get().limits.payload_len }>,
-	) -> Result<(), BenchmarkError> {
+	) {
 		let topics = (0..t).map(|i| T::Hashing::hash_of(&i)).collect::<Vec<_>>().encode();
 		let topics_len = topics.len();
 		let code = WasmModule::<T>::from(ModuleDefinition {
@@ -1155,11 +1155,12 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// Benchmark debug_message call with zero input data.
@@ -1186,22 +1187,12 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-
+		let mut setup = CallSetup::<T>::new(code);
+		setup.enable_debug_message();
+		call_builder!(func, setup: setup);
 		#[block]
 		{
-			<Contracts<T>>::bare_call(
-				instance.caller,
-				instance.account_id,
-				0u32.into(),
-				Weight::MAX,
-				None,
-				vec![],
-				DebugInfo::UnsafeDebug,
-				CollectEvents::Skip,
-				Determinism::Enforced,
-			)
-			.result?;
+			func.call();
 		}
 		Ok(())
 	}
@@ -1246,22 +1237,14 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		let mut setup = CallSetup::<T>::new(code);
+		setup.enable_debug_message();
+		call_builder!(func, setup: setup);
 		#[block]
 		{
-			<Contracts<T>>::bare_call(
-				instance.caller,
-				instance.account_id,
-				0u32.into(),
-				Weight::MAX,
-				None,
-				vec![],
-				DebugInfo::UnsafeDebug,
-				CollectEvents::Skip,
-				Determinism::Enforced,
-			)
-			.result?;
+			func.call();
 		}
+		assert_eq!(setup.debug_message().unwrap().len() as u32, i);
 		Ok(())
 	}
 
@@ -1309,7 +1292,8 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		for key in keys {
 			info.write(
@@ -1320,9 +1304,10 @@ mod benchmarks {
 			)
 			.map_err(|_| "Failed to write to storage during setup.")?;
 		}
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1352,7 +1337,7 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		info.write(
 			&Key::<T>::try_from_var(key).map_err(|_| "Key has wrong length")?,
@@ -1361,9 +1346,10 @@ mod benchmarks {
 			false,
 		)
 		.map_err(|_| "Failed to write to storage during setup.")?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1394,7 +1380,7 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		info.write(
 			&Key::<T>::try_from_var(key).map_err(|_| "Key has wrong length")?,
@@ -1403,9 +1389,10 @@ mod benchmarks {
 			false,
 		)
 		.map_err(|_| "Failed to write to storage during setup.")?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1444,7 +1431,7 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		for key in keys {
 			info.write(
@@ -1456,9 +1443,10 @@ mod benchmarks {
 			.map_err(|_| "Failed to write to storage during setup.")?;
 		}
 		<ContractInfoOf<T>>::insert(&instance.account_id, info);
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1486,7 +1474,7 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		info.write(
 			&Key::<T>::try_from_var(key).map_err(|_| "Key has wrong length")?,
@@ -1495,9 +1483,11 @@ mod benchmarks {
 			false,
 		)
 		.map_err(|_| "Failed to write to storage during setup.")?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1542,7 +1532,7 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		for key in keys {
 			info.write(
@@ -1554,9 +1544,10 @@ mod benchmarks {
 			.map_err(|_| "Failed to write to storage during setup.")?;
 		}
 		<ContractInfoOf<T>>::insert(&instance.account_id, info);
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1592,7 +1583,7 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		info.write(
 			&Key::<T>::try_from_var(key).map_err(|_| "Key has wrong length")?,
@@ -1602,9 +1593,11 @@ mod benchmarks {
 		)
 		.map_err(|_| "Failed to write to storage during setup.")?;
 		<ContractInfoOf<T>>::insert(&instance.account_id, info);
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
+
 		Ok(())
 	}
 
@@ -1642,7 +1635,7 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		for key in keys {
 			info.write(
@@ -1654,9 +1647,10 @@ mod benchmarks {
 			.map_err(|_| "Failed to write to storage during setup.")?;
 		}
 		<ContractInfoOf<T>>::insert(&instance.account_id, info);
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1684,7 +1678,7 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		info.write(
 			&Key::<T>::try_from_var(key).map_err(|_| "Key has wrong length")?,
@@ -1694,9 +1688,10 @@ mod benchmarks {
 		)
 		.map_err(|_| "Failed to write to storage during setup.")?;
 		<ContractInfoOf<T>>::insert(&instance.account_id, info);
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1740,7 +1735,7 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		for key in keys {
 			info.write(
@@ -1752,9 +1747,10 @@ mod benchmarks {
 			.map_err(|_| "Failed to write to storage during setup.")?;
 		}
 		<ContractInfoOf<T>>::insert(&instance.account_id, info);
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1790,7 +1786,7 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
+		call_builder!(func, instance, code);
 		let info = instance.info()?;
 		info.write(
 			&Key::<T>::try_from_var(key).map_err(|_| "Key has wrong length")?,
@@ -1800,9 +1796,10 @@ mod benchmarks {
 		)
 		.map_err(|_| "Failed to write to storage during setup.")?;
 		<ContractInfoOf<T>>::insert(&instance.account_id, info);
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1842,14 +1839,18 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		instance.set_balance(value * (r + 1).into());
-		let origin = RawOrigin::Signed(instance.caller.clone());
+		let mut setup = CallSetup::<T>::new(code);
+		setup.set_balance(value * (r + 1).into());
+		call_builder!(func, setup: setup);
+
 		for account in &accounts {
 			assert_eq!(T::Currency::total_balance(account), 0u32.into());
 		}
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+
+		#[block]
+		{
+			func.call();
+		}
 
 		for account in &accounts {
 			assert_eq!(T::Currency::total_balance(account), value);
@@ -1923,17 +1924,13 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(
-			origin,
-			instance.addr,
-			0u32.into(),
-			Weight::MAX,
-			Some(BalanceOf::<T>::from(u32::MAX.into()).into()),
-			vec![],
-		);
+		let mut setup = CallSetup::<T>::new(code);
+		setup.set_storage_deposit_limit(BalanceOf::<T>::from(u32::MAX.into()));
+		call_builder!(func, setup: setup);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -1984,11 +1981,11 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let callee = instance.addr.clone();
-		let origin = RawOrigin::Signed(instance.caller);
-		#[extrinsic_call]
-		call(origin, callee, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2037,11 +2034,13 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		let bytes = vec![42; c as usize];
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, bytes);
+		let mut setup = CallSetup::<T>::new(code);
+		setup.set_data(vec![42; c as usize]);
+		call_builder!(func, setup: setup);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2133,10 +2132,9 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		instance.set_balance((value + Pallet::<T>::min_balance()) * (r + 1).into());
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		let callee = instance.addr.clone();
+		let mut setup = CallSetup::<T>::new(code);
+		setup.set_balance((value + Pallet::<T>::min_balance()) * (r + 1).into());
+		call_builder!(func, instance, setup: setup);
 		let addresses = hashes
 			.iter()
 			.map(|hash| Contracts::<T>::contract_address(&instance.account_id, hash, &[], &[]))
@@ -2147,8 +2145,10 @@ mod benchmarks {
 				return Err("Expected that contract does not exist at this point.".into());
 			}
 		}
-		#[extrinsic_call]
-		call(origin, callee, 0u32.into(), Weight::MAX, None, vec![]);
+		#[block]
+		{
+			func.call();
+		}
 		for addr in &addresses {
 			ContractInfoOf::<T>::get(&addr).ok_or("Contract should have been instantiated")?;
 		}
@@ -2217,106 +2217,94 @@ mod benchmarks {
 			])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		instance.set_balance(value + (Pallet::<T>::min_balance() * 2u32.into()));
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		let mut setup = CallSetup::<T>::new(code);
+		setup.set_balance(value + (Pallet::<T>::min_balance() * 2u32.into()));
+		call_builder!(func,  setup: setup);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
 	// Only the overhead of calling the function itself with minimal arguments.
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_sha2_256(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance = Contract::<T>::new(WasmModule::hasher("seal_hash_sha2_256", r, 0), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_sha2_256(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_sha2_256", r, 0));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// `n`: Input to hash in bytes
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_sha2_256_per_byte(
-		n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>,
-	) -> Result<(), BenchmarkError> {
-		let instance = Contract::<T>::new(WasmModule::hasher("seal_hash_sha2_256", 1, n), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_sha2_256_per_byte(n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_sha2_256", 1, n));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// Only the overhead of calling the function itself with minimal arguments.
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_keccak_256(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::hasher("seal_hash_keccak_256", r, 0), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_keccak_256(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_keccak_256", r, 0));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// `n`: Input to hash in bytes
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_keccak_256_per_byte(
-		n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>,
-	) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::hasher("seal_hash_keccak_256", 1, n), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_keccak_256_per_byte(n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_keccak_256", 1, n));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// Only the overhead of calling the function itself with minimal arguments.
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_blake2_256(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::hasher("seal_hash_blake2_256", r, 0), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_blake2_256(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_blake2_256", r, 0));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// `n`: Input to hash in bytes
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_blake2_256_per_byte(
-		n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>,
-	) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::hasher("seal_hash_blake2_256", 1, n), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_blake2_256_per_byte(n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_blake2_256", 1, n));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// Only the overhead of calling the function itself with minimal arguments.
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_blake2_128(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::hasher("seal_hash_blake2_128", r, 0), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_blake2_128(r: Linear<0, API_BENCHMARK_RUNS>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_blake2_128", r, 0));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// `n`: Input to hash in bytes
 	#[benchmark(pov_mode = Measured)]
-	fn seal_hash_blake2_128_per_byte(
-		n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>,
-	) -> Result<(), BenchmarkError> {
-		let instance =
-			Contract::<T>::new(WasmModule::hasher("seal_hash_blake2_128", 1, n), vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+	fn seal_hash_blake2_128_per_byte(n: Linear<0, { code::max_pages::<T>() * 64 * 1024 }>) {
+		call_builder!(func, WasmModule::hasher("seal_hash_blake2_128", 1, n));
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// `n`: Message input length to verify in bytes.
@@ -2359,10 +2347,11 @@ mod benchmarks {
 			..Default::default()
 		});
 
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2415,10 +2404,11 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2464,10 +2454,11 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2503,10 +2494,11 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2543,10 +2535,11 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2584,10 +2577,11 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2641,10 +2635,11 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
@@ -2697,15 +2692,16 @@ mod benchmarks {
 			)),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 		Ok(())
 	}
 
 	#[benchmark(pov_mode = Measured)]
-	fn seal_instantiation_nonce(r: Linear<0, API_BENCHMARK_RUNS>) -> Result<(), BenchmarkError> {
+	fn seal_instantiation_nonce(r: Linear<0, API_BENCHMARK_RUNS>) {
 		let code = WasmModule::<T>::from(ModuleDefinition {
 			memory: Some(ImportedMemory::max::<T>()),
 			imported_functions: vec![ImportedFunction {
@@ -2717,11 +2713,11 @@ mod benchmarks {
 			call_body: Some(body::repeated(r, &[Instruction::Call(0), Instruction::Drop])),
 			..Default::default()
 		});
-		let instance = Contract::<T>::new(code, vec![])?;
-		let origin = RawOrigin::Signed(instance.caller.clone());
-		#[extrinsic_call]
-		call(origin, instance.addr, 0u32.into(), Weight::MAX, None, vec![]);
-		Ok(())
+		call_builder!(func, code);
+		#[block]
+		{
+			func.call();
+		}
 	}
 
 	// We load `i64` values from random linear memory locations and store the loaded
diff --git a/substrate/frame/contracts/src/exec.rs b/substrate/frame/contracts/src/exec.rs
index 41a0383811fdb09afe7655d0418039c714cff1a5..31cdadb4bb4373baee420b48cecfdd2b82862c42 100644
--- a/substrate/frame/contracts/src/exec.rs
+++ b/substrate/frame/contracts/src/exec.rs
@@ -733,6 +733,30 @@ where
 		stack.run(executable, input_data).map(|ret| (account_id, ret))
 	}
 
+	#[cfg(feature = "runtime-benchmarks")]
+	pub fn bench_new_call(
+		dest: T::AccountId,
+		origin: Origin<T>,
+		gas_meter: &'a mut GasMeter<T>,
+		storage_meter: &'a mut storage::meter::Meter<T>,
+		schedule: &'a Schedule<T>,
+		value: BalanceOf<T>,
+		debug_message: Option<&'a mut DebugBufferVec<T>>,
+		determinism: Determinism,
+	) -> (Self, E) {
+		Self::new(
+			FrameArgs::Call { dest, cached_info: None, delegated_call: None },
+			origin,
+			gas_meter,
+			storage_meter,
+			schedule,
+			value,
+			debug_message,
+			determinism,
+		)
+		.unwrap()
+	}
+
 	/// Create a new call stack.
 	fn new(
 		args: FrameArgs<T, E>,
diff --git a/substrate/frame/contracts/src/wasm/mod.rs b/substrate/frame/contracts/src/wasm/mod.rs
index cae0b7c40206edca051473516aec2b47359d5615..4b7ae098137607da7871867797f248953471a6d6 100644
--- a/substrate/frame/contracts/src/wasm/mod.rs
+++ b/substrate/frame/contracts/src/wasm/mod.rs
@@ -338,26 +338,49 @@ impl<T: Config> CodeInfo<T> {
 	}
 }
 
-impl<T: Config> Executable<T> for WasmBlob<T> {
-	fn from_storage(
-		code_hash: CodeHash<T>,
-		gas_meter: &mut GasMeter<T>,
-	) -> Result<Self, DispatchError> {
-		let code_info = <CodeInfoOf<T>>::get(code_hash).ok_or(Error::<T>::CodeNotFound)?;
-		gas_meter.charge(CodeLoadToken(code_info.code_len))?;
-		let code = <PristineCode<T>>::get(code_hash).ok_or(Error::<T>::CodeNotFound)?;
-		Ok(Self { code, code_info, code_hash })
+use crate::{ExecError, ExecReturnValue};
+use wasmi::Func;
+enum InstanceOrExecReturn<'a, E: Ext> {
+	Instance((Func, Store<Runtime<'a, E>>)),
+	ExecReturn(ExecReturnValue),
+}
+
+type PreExecResult<'a, E> = Result<InstanceOrExecReturn<'a, E>, ExecError>;
+
+impl<T: Config> WasmBlob<T> {
+	/// Sync the frame's gas meter with the engine's one.
+	pub fn process_result<E: Ext<T = T>>(
+		mut store: Store<Runtime<E>>,
+		result: Result<(), wasmi::Error>,
+	) -> ExecResult {
+		let engine_consumed_total = store.fuel_consumed().expect("Fuel metering is enabled; qed");
+		let gas_meter = store.data_mut().ext().gas_meter_mut();
+		let _ = gas_meter.sync_from_executor(engine_consumed_total)?;
+		store.into_data().to_execution_result(result)
 	}
 
-	fn execute<E: Ext<T = T>>(
+	#[cfg(feature = "runtime-benchmarks")]
+	pub fn bench_prepare_call<E: Ext<T = T>>(
 		self,
 		ext: &mut E,
-		function: &ExportedFunction,
 		input_data: Vec<u8>,
-	) -> ExecResult {
+	) -> (Func, Store<Runtime<E>>) {
+		use InstanceOrExecReturn::*;
+		match Self::prepare_execute(self, Runtime::new(ext, input_data), &ExportedFunction::Call)
+			.expect("Benchmark should provide valid module")
+		{
+			Instance((func, store)) => (func, store),
+			ExecReturn(_) => panic!("Expected Instance"),
+		}
+	}
+
+	fn prepare_execute<'a, E: Ext<T = T>>(
+		self,
+		runtime: Runtime<'a, E>,
+		function: &'a ExportedFunction,
+	) -> PreExecResult<'a, E> {
 		let code = self.code.as_slice();
 		// Instantiate the Wasm module to the engine.
-		let runtime = Runtime::new(ext, input_data);
 		let schedule = <T>::Schedule::get();
 		let (mut store, memory, instance) = Self::instantiate::<crate::wasm::runtime::Env, _>(
 			code,
@@ -390,15 +413,6 @@ impl<T: Config> Executable<T> for WasmBlob<T> {
 			.add_fuel(fuel_limit)
 			.expect("We've set up engine to fuel consuming mode; qed");
 
-		// Sync this frame's gas meter with the engine's one.
-		let process_result = |mut store: Store<Runtime<E>>, result| {
-			let engine_consumed_total =
-				store.fuel_consumed().expect("Fuel metering is enabled; qed");
-			let gas_meter = store.data_mut().ext().gas_meter_mut();
-			let _ = gas_meter.sync_from_executor(engine_consumed_total)?;
-			store.into_data().to_execution_result(result)
-		};
-
 		// Start function should already see the correct refcount in case it will be ever inspected.
 		if let &ExportedFunction::Constructor = function {
 			E::increment_refcount(self.code_hash)?;
@@ -417,10 +431,37 @@ impl<T: Config> Executable<T> for WasmBlob<T> {
 						Error::<T>::CodeRejected
 					})?;
 
-				let result = exported_func.call(&mut store, &[], &mut []);
-				process_result(store, result)
+				Ok(InstanceOrExecReturn::Instance((exported_func, store)))
 			},
-			Err(err) => process_result(store, Err(err)),
+			Err(err) => Self::process_result(store, Err(err)).map(InstanceOrExecReturn::ExecReturn),
+		}
+	}
+}
+
+impl<T: Config> Executable<T> for WasmBlob<T> {
+	fn from_storage(
+		code_hash: CodeHash<T>,
+		gas_meter: &mut GasMeter<T>,
+	) -> Result<Self, DispatchError> {
+		let code_info = <CodeInfoOf<T>>::get(code_hash).ok_or(Error::<T>::CodeNotFound)?;
+		gas_meter.charge(CodeLoadToken(code_info.code_len))?;
+		let code = <PristineCode<T>>::get(code_hash).ok_or(Error::<T>::CodeNotFound)?;
+		Ok(Self { code, code_info, code_hash })
+	}
+
+	fn execute<E: Ext<T = T>>(
+		self,
+		ext: &mut E,
+		function: &ExportedFunction,
+		input_data: Vec<u8>,
+	) -> ExecResult {
+		use InstanceOrExecReturn::*;
+		match Self::prepare_execute(self, Runtime::new(ext, input_data), function)? {
+			Instance((func, mut store)) => {
+				let result = func.call(&mut store, &[], &mut []);
+				Self::process_result(store, result)
+			},
+			ExecReturn(exec_return) => Ok(exec_return),
 		}
 	}
 
@@ -1780,6 +1821,7 @@ mod tests {
 	const CODE_GAS_LEFT: &str = r#"
 (module
 	(import "seal1" "gas_left" (func $seal_gas_left (param i32 i32)))
+	(import "seal0" "clear_storage" (func $clear_storage (param i32)))
 	(import "seal0" "seal_return" (func $seal_return (param i32 i32 i32)))
 	(import "env" "memory" (memory 1 1))
 
@@ -1796,6 +1838,9 @@ mod tests {
 	)
 
 	(func (export "call")
+		;; Burn some PoV, clear_storage consumes some PoV as in order to clear the storage we need to we need to read its size first.
+		(call $clear_storage (i32.const 0))
+
 		;; This stores the weight left to the buffer
 		(call $seal_gas_left (i32.const 0) (i32.const 20))
 
@@ -1807,6 +1852,9 @@ mod tests {
 			)
 		)
 
+		;; Burn some PoV, clear_storage consumes some PoV as in order to clear the storage we need to we need to read its size first.
+		(call $clear_storage (i32.const 0))
+
 		;; Return weight left and its encoded value len
 		(call $seal_return (i32.const 0) (i32.const 0) (i32.load (i32.const 20)))
 
diff --git a/substrate/frame/contracts/src/weights.rs b/substrate/frame/contracts/src/weights.rs
index 5d067365e171d5e107e9d41bd53dbdbe5f6d220f..534c7297c908da17b21bc1fa3377165b77e44289 100644
--- a/substrate/frame/contracts/src/weights.rs
+++ b/substrate/frame/contracts/src/weights.rs
@@ -18,27 +18,25 @@
 //! Autogenerated weights for `pallet_contracts`
 //!
 //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
-//! DATE: 2024-04-08, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
+//! DATE: 2024-04-10, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
 //! WORST CASE MAP SIZE: `1000000`
 //! HOSTNAME: `runner-anb7yjbi-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
 //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("dev")`, DB CACHE: `1024`
 
 // Executed Command:
-// ./target/production/substrate-node
+// target/production/substrate-node
 // benchmark
 // pallet
-// --chain=dev
 // --steps=50
 // --repeat=20
-// --pallet=pallet_contracts
-// --no-storage-info
-// --no-median-slopes
-// --no-min-squares
 // --extrinsic=*
 // --wasm-execution=compiled
 // --heap-pages=4096
-// --output=./substrate/frame/contracts/src/weights.rs
+// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
+// --pallet=pallet_contracts
+// --chain=dev
 // --header=./substrate/HEADER-APACHE2
+// --output=./substrate/frame/contracts/src/weights.rs
 // --template=./substrate/.maintain/frame-weight-template.hbs
 
 #![cfg_attr(rustfmt, rustfmt_skip)]
@@ -144,8 +142,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `1627`
-		// Minimum execution time: 2_140_000 picoseconds.
-		Weight::from_parts(2_243_000, 1627)
+		// Minimum execution time: 2_114_000 picoseconds.
+		Weight::from_parts(2_196_000, 1627)
 			.saturating_add(T::DbWeight::get().reads(1_u64))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -155,10 +153,10 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `452 + k * (69 ±0)`
 		//  Estimated: `442 + k * (70 ±0)`
-		// Minimum execution time: 12_655_000 picoseconds.
-		Weight::from_parts(12_863_000, 442)
-			// Standard Error: 1_147
-			.saturating_add(Weight::from_parts(1_097_546, 0).saturating_mul(k.into()))
+		// Minimum execution time: 12_470_000 picoseconds.
+		Weight::from_parts(12_729_000, 442)
+			// Standard Error: 896
+			.saturating_add(Weight::from_parts(1_101_272, 0).saturating_mul(k.into()))
 			.saturating_add(T::DbWeight::get().reads(2_u64))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(k.into())))
 			.saturating_add(T::DbWeight::get().writes(2_u64))
@@ -172,10 +170,10 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `211 + c * (1 ±0)`
 		//  Estimated: `6149 + c * (1 ±0)`
-		// Minimum execution time: 8_626_000 picoseconds.
-		Weight::from_parts(8_805_071, 6149)
+		// Minimum execution time: 8_500_000 picoseconds.
+		Weight::from_parts(8_724_406, 6149)
 			// Standard Error: 1
-			.saturating_add(Weight::from_parts(1_188, 0).saturating_mul(c.into()))
+			.saturating_add(Weight::from_parts(1_183, 0).saturating_mul(c.into()))
 			.saturating_add(T::DbWeight::get().reads(2_u64))
 			.saturating_add(T::DbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(c.into()))
@@ -188,8 +186,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `510`
 		//  Estimated: `6450`
-		// Minimum execution time: 16_748_000 picoseconds.
-		Weight::from_parts(17_483_000, 6450)
+		// Minimum execution time: 16_863_000 picoseconds.
+		Weight::from_parts(17_671_000, 6450)
 			.saturating_add(T::DbWeight::get().reads(3_u64))
 			.saturating_add(T::DbWeight::get().writes(1_u64))
 	}
@@ -202,10 +200,10 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `171 + k * (1 ±0)`
 		//  Estimated: `3635 + k * (1 ±0)`
-		// Minimum execution time: 3_632_000 picoseconds.
-		Weight::from_parts(3_706_000, 3635)
-			// Standard Error: 903
-			.saturating_add(Weight::from_parts(1_185_348, 0).saturating_mul(k.into()))
+		// Minimum execution time: 3_559_000 picoseconds.
+		Weight::from_parts(3_728_000, 3635)
+			// Standard Error: 1_486
+			.saturating_add(Weight::from_parts(1_264_217, 0).saturating_mul(k.into()))
 			.saturating_add(T::DbWeight::get().reads(1_u64))
 			.saturating_add(T::DbWeight::get().writes(2_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(k.into())))
@@ -226,10 +224,10 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `328 + c * (1 ±0)`
 		//  Estimated: `6266 + c * (1 ±0)`
-		// Minimum execution time: 21_630_000 picoseconds.
-		Weight::from_parts(20_845_294, 6266)
-			// Standard Error: 2
-			.saturating_add(Weight::from_parts(421, 0).saturating_mul(c.into()))
+		// Minimum execution time: 21_285_000 picoseconds.
+		Weight::from_parts(21_918_340, 6266)
+			// Standard Error: 0
+			.saturating_add(Weight::from_parts(391, 0).saturating_mul(c.into()))
 			.saturating_add(T::DbWeight::get().reads(6_u64))
 			.saturating_add(T::DbWeight::get().writes(2_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(c.into()))
@@ -240,8 +238,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `440`
 		//  Estimated: `6380`
-		// Minimum execution time: 13_178_000 picoseconds.
-		Weight::from_parts(13_671_000, 6380)
+		// Minimum execution time: 13_274_000 picoseconds.
+		Weight::from_parts(13_810_000, 6380)
 			.saturating_add(T::DbWeight::get().reads(2_u64))
 			.saturating_add(T::DbWeight::get().writes(1_u64))
 	}
@@ -255,8 +253,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `352`
 		//  Estimated: `6292`
-		// Minimum execution time: 45_828_000 picoseconds.
-		Weight::from_parts(46_476_000, 6292)
+		// Minimum execution time: 47_886_000 picoseconds.
+		Weight::from_parts(49_631_000, 6292)
 			.saturating_add(T::DbWeight::get().reads(4_u64))
 			.saturating_add(T::DbWeight::get().writes(1_u64))
 	}
@@ -268,8 +266,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `594`
 		//  Estimated: `6534`
-		// Minimum execution time: 54_767_000 picoseconds.
-		Weight::from_parts(56_879_000, 6534)
+		// Minimum execution time: 56_799_000 picoseconds.
+		Weight::from_parts(58_731_000, 6534)
 			.saturating_add(T::DbWeight::get().reads(4_u64))
 			.saturating_add(T::DbWeight::get().writes(2_u64))
 	}
@@ -279,8 +277,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `1627`
-		// Minimum execution time: 2_599_000 picoseconds.
-		Weight::from_parts(2_794_000, 1627)
+		// Minimum execution time: 2_534_000 picoseconds.
+		Weight::from_parts(2_640_000, 1627)
 			.saturating_add(T::DbWeight::get().reads(1_u64))
 			.saturating_add(T::DbWeight::get().writes(1_u64))
 	}
@@ -292,8 +290,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `166`
 		//  Estimated: `3631`
-		// Minimum execution time: 10_275_000 picoseconds.
-		Weight::from_parts(10_709_000, 3631)
+		// Minimum execution time: 12_738_000 picoseconds.
+		Weight::from_parts(13_132_000, 3631)
 			.saturating_add(T::DbWeight::get().reads(2_u64))
 			.saturating_add(T::DbWeight::get().writes(2_u64))
 	}
@@ -303,8 +301,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `3607`
-		// Minimum execution time: 3_813_000 picoseconds.
-		Weight::from_parts(4_033_000, 3607)
+		// Minimum execution time: 4_846_000 picoseconds.
+		Weight::from_parts(5_136_000, 3607)
 			.saturating_add(T::DbWeight::get().reads(1_u64))
 	}
 	/// Storage: UNKNOWN KEY `0x4342193e496fab7ec59d615ed0dc55304e7b9012096b41c4eb3aaf947f6ea429` (r:1 w:0)
@@ -315,8 +313,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `167`
 		//  Estimated: `3632`
-		// Minimum execution time: 5_160_000 picoseconds.
-		Weight::from_parts(5_478_000, 3632)
+		// Minimum execution time: 6_418_000 picoseconds.
+		Weight::from_parts(6_640_000, 3632)
 			.saturating_add(T::DbWeight::get().reads(2_u64))
 	}
 	/// Storage: UNKNOWN KEY `0x4342193e496fab7ec59d615ed0dc55304e7b9012096b41c4eb3aaf947f6ea429` (r:1 w:0)
@@ -327,8 +325,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `3607`
-		// Minimum execution time: 5_178_000 picoseconds.
-		Weight::from_parts(5_540_000, 3607)
+		// Minimum execution time: 6_540_000 picoseconds.
+		Weight::from_parts(6_779_000, 3607)
 			.saturating_add(T::DbWeight::get().reads(2_u64))
 			.saturating_add(T::DbWeight::get().writes(1_u64))
 	}
@@ -353,10 +351,10 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `804 + c * (1 ±0)`
 		//  Estimated: `9217 + c * (1 ±0)`
-		// Minimum execution time: 295_545_000 picoseconds.
-		Weight::from_parts(291_859_570, 9217)
-			// Standard Error: 73
-			.saturating_add(Weight::from_parts(33_546, 0).saturating_mul(c.into()))
+		// Minimum execution time: 293_893_000 picoseconds.
+		Weight::from_parts(291_073_317, 9217)
+			// Standard Error: 76
+			.saturating_add(Weight::from_parts(33_770, 0).saturating_mul(c.into()))
 			.saturating_add(T::DbWeight::get().reads(11_u64))
 			.saturating_add(T::DbWeight::get().writes(4_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(c.into()))
@@ -388,14 +386,14 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `326`
 		//  Estimated: `8740`
-		// Minimum execution time: 3_796_729_000 picoseconds.
-		Weight::from_parts(808_328_941, 8740)
-			// Standard Error: 156
-			.saturating_add(Weight::from_parts(99_863, 0).saturating_mul(c.into()))
-			// Standard Error: 18
-			.saturating_add(Weight::from_parts(1_433, 0).saturating_mul(i.into()))
-			// Standard Error: 18
-			.saturating_add(Weight::from_parts(1_501, 0).saturating_mul(s.into()))
+		// Minimum execution time: 3_860_814_000 picoseconds.
+		Weight::from_parts(735_131_841, 8740)
+			// Standard Error: 143
+			.saturating_add(Weight::from_parts(100_168, 0).saturating_mul(c.into()))
+			// Standard Error: 17
+			.saturating_add(Weight::from_parts(1_454, 0).saturating_mul(i.into()))
+			// Standard Error: 17
+			.saturating_add(Weight::from_parts(1_580, 0).saturating_mul(s.into()))
 			.saturating_add(T::DbWeight::get().reads(14_u64))
 			.saturating_add(T::DbWeight::get().writes(10_u64))
 	}
@@ -425,12 +423,12 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `563`
 		//  Estimated: `8982`
-		// Minimum execution time: 2_004_502_000 picoseconds.
-		Weight::from_parts(2_013_544_000, 8982)
+		// Minimum execution time: 2_003_060_000 picoseconds.
+		Weight::from_parts(2_022_270_000, 8982)
 			// Standard Error: 26
-			.saturating_add(Weight::from_parts(807, 0).saturating_mul(i.into()))
+			.saturating_add(Weight::from_parts(815, 0).saturating_mul(i.into()))
 			// Standard Error: 26
-			.saturating_add(Weight::from_parts(784, 0).saturating_mul(s.into()))
+			.saturating_add(Weight::from_parts(774, 0).saturating_mul(s.into()))
 			.saturating_add(T::DbWeight::get().reads(13_u64))
 			.saturating_add(T::DbWeight::get().writes(7_u64))
 	}
@@ -454,8 +452,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `829`
 		//  Estimated: `9244`
-		// Minimum execution time: 213_568_000 picoseconds.
-		Weight::from_parts(219_796_000, 9244)
+		// Minimum execution time: 207_310_000 picoseconds.
+		Weight::from_parts(217_885_000, 9244)
 			.saturating_add(T::DbWeight::get().reads(11_u64))
 			.saturating_add(T::DbWeight::get().writes(4_u64))
 	}
@@ -476,10 +474,10 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `145`
 		//  Estimated: `6085`
-		// Minimum execution time: 290_835_000 picoseconds.
-		Weight::from_parts(396_613_751, 6085)
-			// Standard Error: 160
-			.saturating_add(Weight::from_parts(63_993, 0).saturating_mul(c.into()))
+		// Minimum execution time: 278_462_000 picoseconds.
+		Weight::from_parts(306_084_905, 6085)
+			// Standard Error: 74
+			.saturating_add(Weight::from_parts(64_311, 0).saturating_mul(c.into()))
 			.saturating_add(T::DbWeight::get().reads(6_u64))
 			.saturating_add(T::DbWeight::get().writes(4_u64))
 	}
@@ -500,10 +498,10 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `145`
 		//  Estimated: `6085`
-		// Minimum execution time: 302_249_000 picoseconds.
-		Weight::from_parts(312_519_255, 6085)
-			// Standard Error: 90
-			.saturating_add(Weight::from_parts(64_908, 0).saturating_mul(c.into()))
+		// Minimum execution time: 286_348_000 picoseconds.
+		Weight::from_parts(314_351_958, 6085)
+			// Standard Error: 113
+			.saturating_add(Weight::from_parts(65_816, 0).saturating_mul(c.into()))
 			.saturating_add(T::DbWeight::get().reads(6_u64))
 			.saturating_add(T::DbWeight::get().writes(4_u64))
 	}
@@ -521,8 +519,8 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `315`
 		//  Estimated: `3780`
-		// Minimum execution time: 46_580_000 picoseconds.
-		Weight::from_parts(47_676_000, 3780)
+		// Minimum execution time: 46_378_000 picoseconds.
+		Weight::from_parts(51_280_000, 3780)
 			.saturating_add(T::DbWeight::get().reads(4_u64))
 			.saturating_add(T::DbWeight::get().writes(4_u64))
 	}
@@ -538,271 +536,174 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `552`
 		//  Estimated: `8967`
-		// Minimum execution time: 35_454_000 picoseconds.
-		Weight::from_parts(36_956_000, 8967)
+		// Minimum execution time: 34_914_000 picoseconds.
+		Weight::from_parts(36_577_000, 8967)
 			.saturating_add(T::DbWeight::get().reads(7_u64))
 			.saturating_add(T::DbWeight::get().writes(6_u64))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_caller(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `869 + r * (6 ±0)`
-		//  Estimated: `9284 + r * (6 ±0)`
-		// Minimum execution time: 265_797_000 picoseconds.
-		Weight::from_parts(305_958_124, 9284)
-			// Standard Error: 3_049
-			.saturating_add(Weight::from_parts(343_670, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_199_000 picoseconds.
+		Weight::from_parts(10_051_151, 0)
+			// Standard Error: 244
+			.saturating_add(Weight::from_parts(248_249, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1601 w:1)
+	/// Storage: `Contracts::ContractInfoOf` (r:1600 w:0)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_is_contract(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `925 + r * (209 ±0)`
-		//  Estimated: `9304 + r * (2684 ±0)`
-		// Minimum execution time: 273_327_000 picoseconds.
-		Weight::from_parts(143_036_031, 9304)
-			// Standard Error: 5_612
-			.saturating_add(Weight::from_parts(3_745_297, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `509 + r * (77 ±0)`
+		//  Estimated: `1467 + r * (2552 ±0)`
+		// Minimum execution time: 9_100_000 picoseconds.
+		Weight::from_parts(9_183_000, 1467)
+			// Standard Error: 5_858
+			.saturating_add(Weight::from_parts(3_223_076, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 2684).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2552).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1601 w:1)
+	/// Storage: `Contracts::ContractInfoOf` (r:1600 w:0)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_code_hash(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `924 + r * (213 ±0)`
-		//  Estimated: `9308 + r * (2688 ±0)`
-		// Minimum execution time: 279_590_000 picoseconds.
-		Weight::from_parts(147_961_398, 9308)
-			// Standard Error: 6_198
-			.saturating_add(Weight::from_parts(4_677_881, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `517 + r * (170 ±0)`
+		//  Estimated: `1468 + r * (2645 ±0)`
+		// Minimum execution time: 9_032_000 picoseconds.
+		Weight::from_parts(9_167_000, 1468)
+			// Standard Error: 6_232
+			.saturating_add(Weight::from_parts(4_098_301, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 2688).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2645).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_own_code_hash(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `876 + r * (6 ±0)`
-		//  Estimated: `9293 + r * (6 ±0)`
-		// Minimum execution time: 277_334_000 picoseconds.
-		Weight::from_parts(285_263_644, 9293)
-			// Standard Error: 771
-			.saturating_add(Weight::from_parts(450_538, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_625_000 picoseconds.
+		Weight::from_parts(12_135_747, 0)
+			// Standard Error: 237
+			.saturating_add(Weight::from_parts(410_404, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_caller_is_origin(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (3 ±0)`
-		//  Estimated: `9282 + r * (3 ±0)`
-		// Minimum execution time: 262_895_000 picoseconds.
-		Weight::from_parts(290_274_813, 9282)
-			// Standard Error: 356
-			.saturating_add(Weight::from_parts(172_585, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_425_000 picoseconds.
+		Weight::from_parts(12_591_828, 0)
+			// Standard Error: 74
+			.saturating_add(Weight::from_parts(110_710, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_caller_is_root(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `756 + r * (3 ±0)`
-		//  Estimated: `9171 + r * (3 ±0)`
-		// Minimum execution time: 261_701_000 picoseconds.
-		Weight::from_parts(279_765_708, 9171)
-			// Standard Error: 451
-			.saturating_add(Weight::from_parts(158_243, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(10_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_456_000 picoseconds.
+		Weight::from_parts(12_321_553, 0)
+			// Standard Error: 56
+			.saturating_add(Weight::from_parts(91_591, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_address(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `870 + r * (6 ±0)`
-		//  Estimated: `9285 + r * (6 ±0)`
-		// Minimum execution time: 284_209_000 picoseconds.
-		Weight::from_parts(294_215_782, 9285)
-			// Standard Error: 703
-			.saturating_add(Weight::from_parts(344_236, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_701_000 picoseconds.
+		Weight::from_parts(11_708_796, 0)
+			// Standard Error: 219
+			.saturating_add(Weight::from_parts(306_175, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_gas_left(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (6 ±0)`
-		//  Estimated: `9284 + r * (6 ±0)`
-		// Minimum execution time: 277_126_000 picoseconds.
-		Weight::from_parts(292_436_333, 9284)
-			// Standard Error: 1_215
-			.saturating_add(Weight::from_parts(380_107, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_740_000 picoseconds.
+		Weight::from_parts(29_870_801, 0)
+			// Standard Error: 1_014
+			.saturating_add(Weight::from_parts(273_579, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:2 w:0)
+	/// Storage: `System::Account` (r:1 w:0)
 	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_balance(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1010 + r * (6 ±0)`
-		//  Estimated: `9409 + r * (6 ±0)`
-		// Minimum execution time: 266_377_000 picoseconds.
-		Weight::from_parts(295_163_193, 9409)
-			// Standard Error: 4_026
-			.saturating_add(Weight::from_parts(1_859_387, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `140`
+		//  Estimated: `3599`
+		// Minimum execution time: 9_330_000 picoseconds.
+		Weight::from_parts(4_407_249, 3599)
+			// Standard Error: 880
+			.saturating_add(Weight::from_parts(1_563_659, 0).saturating_mul(r.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
+	}
+	/// The range of component `r` is `[0, 1600]`.
+	fn seal_value_transferred(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_093_000 picoseconds.
+		Weight::from_parts(11_445_920, 0)
+			// Standard Error: 257
+			.saturating_add(Weight::from_parts(247_014, 0).saturating_mul(r.into()))
+	}
+	/// The range of component `r` is `[0, 1600]`.
+	fn seal_minimum_balance(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_640_000 picoseconds.
+		Weight::from_parts(11_383_646, 0)
+			// Standard Error: 191
+			.saturating_add(Weight::from_parts(246_675, 0).saturating_mul(r.into()))
+	}
+	/// The range of component `r` is `[0, 1600]`.
+	fn seal_block_number(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_213_000 picoseconds.
+		Weight::from_parts(5_816_185, 0)
+			// Standard Error: 1_041
+			.saturating_add(Weight::from_parts(258_058, 0).saturating_mul(r.into()))
+	}
+	/// The range of component `r` is `[0, 1600]`.
+	fn seal_now(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_213_000 picoseconds.
+		Weight::from_parts(8_653_735, 0)
+			// Standard Error: 243
+			.saturating_add(Weight::from_parts(258_657, 0).saturating_mul(r.into()))
+	}
+	/// Storage: `TransactionPayment::NextFeeMultiplier` (r:1 w:0)
+	/// Proof: `TransactionPayment::NextFeeMultiplier` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `Measured`)
+	/// The range of component `r` is `[0, 1600]`.
+	fn seal_weight_to_fee(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `67`
+		//  Estimated: `1552`
+		// Minimum execution time: 8_986_000 picoseconds.
+		Weight::from_parts(13_032_048, 1552)
+			// Standard Error: 441
+			.saturating_add(Weight::from_parts(672_398, 0).saturating_mul(r.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
+	}
+	/// The range of component `r` is `[0, 1600]`.
+	fn seal_input(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_095_000 picoseconds.
+		Weight::from_parts(9_927_560, 0)
+			// Standard Error: 306
+			.saturating_add(Weight::from_parts(173_975, 0).saturating_mul(r.into()))
 	}
 	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
 	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
@@ -820,481 +721,178 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
 	/// Storage: `System::EventTopics` (r:2 w:2)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1600]`.
-	fn seal_value_transferred(r: u32, ) -> Weight {
+	/// The range of component `n` is `[0, 1048576]`.
+	fn seal_input_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `880 + r * (6 ±0)`
-		//  Estimated: `9301 + r * (6 ±0)`
-		// Minimum execution time: 276_990_000 picoseconds.
-		Weight::from_parts(296_463_738, 9301)
-			// Standard Error: 655
-			.saturating_add(Weight::from_parts(335_070, 0).saturating_mul(r.into()))
+		//  Measured:  `872`
+		//  Estimated: `9287`
+		// Minimum execution time: 275_801_000 picoseconds.
+		Weight::from_parts(150_079_707, 9287)
+			// Standard Error: 16
+			.saturating_add(Weight::from_parts(1_350, 0).saturating_mul(n.into()))
 			.saturating_add(T::DbWeight::get().reads(11_u64))
 			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+	}
+	/// The range of component `r` is `[0, 1]`.
+	fn seal_return(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 8_947_000 picoseconds.
+		Weight::from_parts(9_306_624, 0)
+			// Standard Error: 15_511
+			.saturating_add(Weight::from_parts(1_285_075, 0).saturating_mul(r.into()))
+	}
+	/// The range of component `n` is `[0, 1048576]`.
+	fn seal_return_per_byte(n: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_298_000 picoseconds.
+		Weight::from_parts(11_227_690, 0)
+			// Standard Error: 0
+			.saturating_add(Weight::from_parts(314, 0).saturating_mul(n.into()))
 	}
 	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
 	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
+	/// Storage: `System::Account` (r:3 w:3)
 	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
+	/// Storage: `Parameters::Parameters` (r:1 w:0)
 	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
 	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
+	/// Storage: `Contracts::CodeInfoOf` (r:33 w:33)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
 	/// Storage: `Contracts::PristineCode` (r:1 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
 	/// Storage: `Timestamp::Now` (r:1 w:0)
 	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
+	/// Storage: `Contracts::DeletionQueueCounter` (r:1 w:1)
+	/// Proof: `Contracts::DeletionQueueCounter` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:4 w:4)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1600]`.
-	fn seal_minimum_balance(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `878 + r * (6 ±0)`
-		//  Estimated: `9294 + r * (6 ±0)`
-		// Minimum execution time: 274_845_000 picoseconds.
-		Weight::from_parts(294_870_901, 9294)
-			// Standard Error: 793
-			.saturating_add(Weight::from_parts(336_049, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1600]`.
-	fn seal_block_number(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `875 + r * (6 ±0)`
-		//  Estimated: `9297 + r * (6 ±0)`
-		// Minimum execution time: 277_792_000 picoseconds.
-		Weight::from_parts(290_529_469, 9297)
-			// Standard Error: 1_191
-			.saturating_add(Weight::from_parts(339_291, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1600]`.
-	fn seal_now(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (6 ±0)`
-		//  Estimated: `9282 + r * (6 ±0)`
-		// Minimum execution time: 271_060_000 picoseconds.
-		Weight::from_parts(287_512_151, 9282)
-			// Standard Error: 859
-			.saturating_add(Weight::from_parts(345_414, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `TransactionPayment::NextFeeMultiplier` (r:1 w:0)
-	/// Proof: `TransactionPayment::NextFeeMultiplier` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1600]`.
-	fn seal_weight_to_fee(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `940 + r * (14 ±0)`
-		//  Estimated: `9350 + r * (14 ±0)`
-		// Minimum execution time: 265_401_000 picoseconds.
-		Weight::from_parts(303_350_793, 9350)
-			// Standard Error: 1_995
-			.saturating_add(Weight::from_parts(885_253, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 14).saturating_mul(r.into()))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1600]`.
-	fn seal_input(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `868 + r * (6 ±0)`
-		//  Estimated: `9285 + r * (6 ±0)`
-		// Minimum execution time: 264_474_000 picoseconds.
-		Weight::from_parts(289_972_634, 9285)
-			// Standard Error: 719
-			.saturating_add(Weight::from_parts(269_856, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `n` is `[0, 1048576]`.
-	fn seal_input_per_byte(n: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `872`
-		//  Estimated: `9287`
-		// Minimum execution time: 266_661_000 picoseconds.
-		Weight::from_parts(147_923_867, 9287)
-			// Standard Error: 16
-			.saturating_add(Weight::from_parts(1_365, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1]`.
-	fn seal_return(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `856 + r * (45 ±0)`
-		//  Estimated: `9271 + r * (45 ±0)`
-		// Minimum execution time: 257_851_000 picoseconds.
-		Weight::from_parts(285_687_679, 9271)
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 45).saturating_mul(r.into()))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `n` is `[0, 1048576]`.
-	fn seal_return_per_byte(n: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `866`
-		//  Estimated: `9288`
-		// Minimum execution time: 283_478_000 picoseconds.
-		Weight::from_parts(290_827_773, 9288)
-			// Standard Error: 0
-			.saturating_add(Weight::from_parts(319, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:3 w:3)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:1 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:33 w:33)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `Contracts::DeletionQueueCounter` (r:1 w:1)
-	/// Proof: `Contracts::DeletionQueueCounter` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:4 w:4)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// Storage: `Balances::Holds` (r:1 w:1)
-	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `Measured`)
-	/// Storage: `Contracts::DeletionQueue` (r:0 w:1)
-	/// Proof: `Contracts::DeletionQueue` (`max_values`: None, `max_size`: Some(142), added: 2617, mode: `Measured`)
-	/// The range of component `r` is `[0, 1]`.
-	fn seal_terminate(r: u32, ) -> Weight {
+	/// Storage: `Balances::Holds` (r:1 w:1)
+	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `Measured`)
+	/// Storage: `Contracts::DeletionQueue` (r:0 w:1)
+	/// Proof: `Contracts::DeletionQueue` (`max_values`: None, `max_size`: Some(142), added: 2617, mode: `Measured`)
+	/// The range of component `r` is `[0, 1]`.
+	fn seal_terminate(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
 		//  Measured:  `4805 + r * (2121 ±0)`
 		//  Estimated: `13220 + r * (81321 ±0)`
-		// Minimum execution time: 298_477_000 picoseconds.
-		Weight::from_parts(325_394_306, 13220)
-			// Standard Error: 873_781
-			.saturating_add(Weight::from_parts(255_748_093, 0).saturating_mul(r.into()))
+		// Minimum execution time: 297_431_000 picoseconds.
+		Weight::from_parts(323_150_773, 13220)
+			// Standard Error: 801_052
+			.saturating_add(Weight::from_parts(250_140_426, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads(11_u64))
 			.saturating_add(T::DbWeight::get().reads((36_u64).saturating_mul(r.into())))
 			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((41_u64).saturating_mul(r.into())))
 			.saturating_add(Weight::from_parts(0, 81321).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
 	/// Storage: `RandomnessCollectiveFlip::RandomMaterial` (r:1 w:0)
 	/// Proof: `RandomnessCollectiveFlip::RandomMaterial` (`max_values`: Some(1), `max_size`: Some(2594), added: 3089, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_random(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `947 + r * (10 ±0)`
-		//  Estimated: `9363 + r * (10 ±0)`
-		// Minimum execution time: 260_352_000 picoseconds.
-		Weight::from_parts(287_284_570, 9363)
-			// Standard Error: 4_051
-			.saturating_add(Weight::from_parts(1_350_197, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 10).saturating_mul(r.into()))
+		//  Measured:  `76`
+		//  Estimated: `1561`
+		// Minimum execution time: 9_410_000 picoseconds.
+		Weight::from_parts(14_925_916, 1561)
+			// Standard Error: 546
+			.saturating_add(Weight::from_parts(1_125_307, 0).saturating_mul(r.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_deposit_event(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (10 ±0)`
-		//  Estimated: `9283 + r * (10 ±0)`
-		// Minimum execution time: 277_214_000 picoseconds.
-		Weight::from_parts(295_852_897, 9283)
-			// Standard Error: 1_554
-			.saturating_add(Weight::from_parts(2_120_577, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 10).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_145_000 picoseconds.
+		Weight::from_parts(28_024_125, 0)
+			// Standard Error: 3_571
+			.saturating_add(Weight::from_parts(1_945_568, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:6 w:6)
+	/// Storage: `System::EventTopics` (r:4 w:4)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `t` is `[0, 4]`.
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_deposit_event_per_topic_and_byte(t: u32, n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `883 + t * (32 ±0)`
-		//  Estimated: `9303 + t * (2508 ±0)`
-		// Minimum execution time: 282_107_000 picoseconds.
-		Weight::from_parts(300_658_543, 9303)
-			// Standard Error: 97_515
-			.saturating_add(Weight::from_parts(1_999_680, 0).saturating_mul(t.into()))
-			// Standard Error: 27
-			.saturating_add(Weight::from_parts(417, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `0`
+		//  Estimated: `990 + t * (2475 ±0)`
+		// Minimum execution time: 23_782_000 picoseconds.
+		Weight::from_parts(15_056_196, 990)
+			// Standard Error: 12_451
+			.saturating_add(Weight::from_parts(2_368_774, 0).saturating_mul(t.into()))
+			// Standard Error: 3
+			.saturating_add(Weight::from_parts(621, 0).saturating_mul(n.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(t.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(t.into())))
-			.saturating_add(Weight::from_parts(0, 2508).saturating_mul(t.into()))
+			.saturating_add(Weight::from_parts(0, 2475).saturating_mul(t.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_debug_message(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `865 + r * (7 ±0)`
-		//  Estimated: `9285 + r * (7 ±0)`
-		// Minimum execution time: 170_105_000 picoseconds.
-		Weight::from_parts(185_260_479, 9285)
-			// Standard Error: 451
-			.saturating_add(Weight::from_parts(227_483, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 7).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 8_218_000 picoseconds.
+		Weight::from_parts(9_606_404, 0)
+			// Standard Error: 124
+			.saturating_add(Weight::from_parts(103_251, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `MaxEncodedLen`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `MaxEncodedLen`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `MaxEncodedLen`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `i` is `[0, 1048576]`.
 	fn seal_debug_message_per_byte(i: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `125816`
-		//  Estimated: `131758`
-		// Minimum execution time: 415_029_000 picoseconds.
-		Weight::from_parts(398_551_260, 131758)
-			// Standard Error: 12
-			.saturating_add(Weight::from_parts(1_027, 0).saturating_mul(i.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_339_000 picoseconds.
+		Weight::from_parts(10_509_000, 0)
+			// Standard Error: 8
+			.saturating_add(Weight::from_parts(979, 0).saturating_mul(i.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_set_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `927 + r * (292 ±0)`
-		//  Estimated: `929 + r * (293 ±0)`
-		// Minimum execution time: 279_920_000 picoseconds.
-		Weight::from_parts(190_991_719, 929)
-			// Standard Error: 10_104
-			.saturating_add(Weight::from_parts(6_458_687, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 9_117_000 picoseconds.
+		Weight::from_parts(9_198_000, 105)
+			// Standard Error: 8_364
+			.saturating_add(Weight::from_parts(5_091_383, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 293).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_set_storage_per_new_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1450`
-		//  Estimated: `1433`
-		// Minimum execution time: 294_847_000 picoseconds.
-		Weight::from_parts(350_895_957, 1433)
-			// Standard Error: 80
-			.saturating_add(Weight::from_parts(676, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(15_u64))
-			.saturating_add(T::DbWeight::get().writes(8_u64))
+		//  Measured:  `245`
+		//  Estimated: `245`
+		// Minimum execution time: 18_421_000 picoseconds.
+		Weight::from_parts(19_028_299, 245)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(299, 0).saturating_mul(n.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
+			.saturating_add(T::DbWeight::get().writes(1_u64))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_set_storage_per_old_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1256 + n * (1 ±0)`
-		//  Estimated: `1256 + n * (1 ±0)`
-		// Minimum execution time: 280_398_000 picoseconds.
-		Weight::from_parts(306_915_984, 1256)
-			// Standard Error: 36
-			.saturating_add(Weight::from_parts(318, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(4_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 18_234_000 picoseconds.
+		Weight::from_parts(19_744_697, 248)
+			// Standard Error: 4
+			.saturating_add(Weight::from_parts(98, 0).saturating_mul(n.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
+			.saturating_add(T::DbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -1302,31 +900,29 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_clear_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `924 + r * (288 ±0)`
-		//  Estimated: `930 + r * (289 ±0)`
-		// Minimum execution time: 269_338_000 picoseconds.
-		Weight::from_parts(192_925_453, 930)
-			// Standard Error: 9_912
-			.saturating_add(Weight::from_parts(6_299_237, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 9_170_000 picoseconds.
+		Weight::from_parts(9_308_000, 105)
+			// Standard Error: 8_089
+			.saturating_add(Weight::from_parts(5_061_647, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 289).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_clear_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1252 + n * (1 ±0)`
-		//  Estimated: `1252 + n * (1 ±0)`
-		// Minimum execution time: 281_305_000 picoseconds.
-		Weight::from_parts(305_828_464, 1252)
-			// Standard Error: 34
-			.saturating_add(Weight::from_parts(490, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(4_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 20_640_000 picoseconds.
+		Weight::from_parts(22_163_262, 248)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(57, 0).saturating_mul(n.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
+			.saturating_add(T::DbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -1334,30 +930,27 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_get_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `924 + r * (296 ±0)`
-		//  Estimated: `926 + r * (297 ±0)`
-		// Minimum execution time: 267_838_000 picoseconds.
-		Weight::from_parts(224_154_959, 926)
-			// Standard Error: 7_904
-			.saturating_add(Weight::from_parts(5_123_059, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 11_636_000 picoseconds.
+		Weight::from_parts(11_694_000, 105)
+			// Standard Error: 6_493
+			.saturating_add(Weight::from_parts(4_442_054, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 297).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_get_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1268 + n * (1 ±0)`
-		//  Estimated: `1268 + n * (1 ±0)`
-		// Minimum execution time: 280_093_000 picoseconds.
-		Weight::from_parts(304_698_374, 1268)
-			// Standard Error: 46
-			.saturating_add(Weight::from_parts(579, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 20_197_000 picoseconds.
+		Weight::from_parts(21_863_984, 248)
+			// Standard Error: 3
+			.saturating_add(Weight::from_parts(633, 0).saturating_mul(n.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -1365,30 +958,27 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_contains_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `935 + r * (288 ±0)`
-		//  Estimated: `932 + r * (289 ±0)`
-		// Minimum execution time: 263_759_000 picoseconds.
-		Weight::from_parts(214_010_246, 932)
-			// Standard Error: 8_052
-			.saturating_add(Weight::from_parts(4_953_264, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 12_347_000 picoseconds.
+		Weight::from_parts(12_455_000, 105)
+			// Standard Error: 7_068
+			.saturating_add(Weight::from_parts(4_325_197, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 289).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_contains_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1255 + n * (1 ±0)`
-		//  Estimated: `1255 + n * (1 ±0)`
-		// Minimum execution time: 273_652_000 picoseconds.
-		Weight::from_parts(299_141_902, 1255)
-			// Standard Error: 38
-			.saturating_add(Weight::from_parts(337, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 16_739_000 picoseconds.
+		Weight::from_parts(18_124_871, 248)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(92, 0).saturating_mul(n.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -1396,670 +986,356 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_take_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `917 + r * (296 ±0)`
-		//  Estimated: `922 + r * (297 ±0)`
-		// Minimum execution time: 273_392_000 picoseconds.
-		Weight::from_parts(192_725_781, 922)
-			// Standard Error: 10_264
-			.saturating_add(Weight::from_parts(6_353_931, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 9_034_000 picoseconds.
+		Weight::from_parts(9_222_000, 105)
+			// Standard Error: 8_163
+			.saturating_add(Weight::from_parts(5_166_827, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 297).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_take_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1269 + n * (1 ±0)`
-		//  Estimated: `1269 + n * (1 ±0)`
-		// Minimum execution time: 284_546_000 picoseconds.
-		Weight::from_parts(309_720_024, 1269)
-			// Standard Error: 33
-			.saturating_add(Weight::from_parts(664, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(4_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 19_437_000 picoseconds.
+		Weight::from_parts(20_878_358, 248)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(625, 0).saturating_mul(n.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
+			.saturating_add(T::DbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1602 w:1601)
+	/// Storage: `System::Account` (r:1601 w:1601)
 	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_transfer(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1418 + r * (45 ±0)`
-		//  Estimated: `9785 + r * (2520 ±0)`
-		// Minimum execution time: 280_447_000 picoseconds.
-		Weight::from_parts(354_702_861, 9785)
-			// Standard Error: 42_509
-			.saturating_add(Weight::from_parts(34_678_454, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
+		//  Measured:  `770`
+		//  Estimated: `4221 + r * (2475 ±0)`
+		// Minimum execution time: 9_514_000 picoseconds.
+		Weight::from_parts(9_593_000, 4221)
+			// Standard Error: 24_003
+			.saturating_add(Weight::from_parts(33_351_110, 0).saturating_mul(r.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(4_u64))
+			.saturating_add(T::DbWeight::get().writes(1_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2520).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2475).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:801 w:801)
+	/// Storage: `Contracts::ContractInfoOf` (r:800 w:801)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:2 w:0)
+	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:2 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:803 w:803)
+	/// Storage: `System::EventTopics` (r:801 w:801)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_call(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1263 + r * (245 ±0)`
-		//  Estimated: `9635 + r * (2721 ±0)`
-		// Minimum execution time: 279_400_000 picoseconds.
-		Weight::from_parts(282_198_000, 9635)
-			// Standard Error: 109_250
-			.saturating_add(Weight::from_parts(246_481_216, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(14_u64))
+		//  Measured:  `520 + r * (170 ±0)`
+		//  Estimated: `6463 + r * (2646 ±0)`
+		// Minimum execution time: 9_725_000 picoseconds.
+		Weight::from_parts(9_811_000, 6463)
+			// Standard Error: 116_763
+			.saturating_add(Weight::from_parts(243_431_319, 0).saturating_mul(r.into()))
+			.saturating_add(T::DbWeight::get().reads(5_u64))
 			.saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(4_u64))
+			.saturating_add(T::DbWeight::get().writes(2_u64))
 			.saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2721).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2646).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:736 w:0)
+	/// Storage: `Contracts::CodeInfoOf` (r:735 w:0)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:736 w:0)
+	/// Storage: `Contracts::PristineCode` (r:735 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:737 w:737)
+	/// Storage: `System::EventTopics` (r:736 w:736)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `Contracts::ContractInfoOf` (r:0 w:1)
+	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_delegate_call(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `0 + r * (576 ±0)`
-		//  Estimated: `9290 + r * (2637 ±3)`
-		// Minimum execution time: 276_509_000 picoseconds.
-		Weight::from_parts(281_555_000, 9290)
-			// Standard Error: 133_738
-			.saturating_add(Weight::from_parts(244_671_777, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `0 + r * (527 ±0)`
+		//  Estimated: `6447 + r * (2583 ±10)`
+		// Minimum execution time: 9_177_000 picoseconds.
+		Weight::from_parts(9_315_000, 6447)
+			// Standard Error: 153_655
+			.saturating_add(Weight::from_parts(244_535_660, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2637).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2583).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:3 w:2)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:2 w:2)
+	/// Storage: `Contracts::ContractInfoOf` (r:1 w:2)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:2 w:0)
+	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:2 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:4 w:4)
+	/// Storage: `System::Account` (r:2 w:2)
+	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:2 w:2)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
 	/// The range of component `t` is `[0, 1]`.
 	/// The range of component `c` is `[0, 1048576]`.
 	fn seal_call_per_transfer_clone_byte(t: u32, c: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1310 + t * (277 ±0)`
-		//  Estimated: `12200 + t * (5227 ±0)`
-		// Minimum execution time: 464_343_000 picoseconds.
-		Weight::from_parts(485_002_000, 12200)
-			// Standard Error: 7_933_446
-			.saturating_add(Weight::from_parts(172_853_968, 0).saturating_mul(t.into()))
-			// Standard Error: 6
-			.saturating_add(Weight::from_parts(775, 0).saturating_mul(c.into()))
-			.saturating_add(T::DbWeight::get().reads(16_u64))
+		//  Measured:  `699 + t * (277 ±0)`
+		//  Estimated: `6639 + t * (3458 ±0)`
+		// Minimum execution time: 215_422_000 picoseconds.
+		Weight::from_parts(120_075_010, 6639)
+			// Standard Error: 2_612_201
+			.saturating_add(Weight::from_parts(41_816_738, 0).saturating_mul(t.into()))
+			// Standard Error: 3
+			.saturating_add(Weight::from_parts(421, 0).saturating_mul(c.into()))
+			.saturating_add(T::DbWeight::get().reads(7_u64))
 			.saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(t.into())))
-			.saturating_add(T::DbWeight::get().writes(6_u64))
+			.saturating_add(T::DbWeight::get().writes(4_u64))
 			.saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(t.into())))
-			.saturating_add(Weight::from_parts(0, 5227).saturating_mul(t.into()))
+			.saturating_add(Weight::from_parts(0, 3458).saturating_mul(t.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:802 w:802)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:801 w:801)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:801 w:800)
+	/// Storage: `Contracts::CodeInfoOf` (r:800 w:800)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:801 w:0)
+	/// Storage: `Contracts::PristineCode` (r:800 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `Contracts::Nonce` (r:1 w:1)
+	/// Storage: `Contracts::Nonce` (r:1 w:0)
 	/// Proof: `Contracts::Nonce` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:803 w:803)
+	/// Storage: `Contracts::ContractInfoOf` (r:800 w:801)
+	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `System::Account` (r:802 w:802)
+	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:801 w:801)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// Storage: `Balances::Holds` (r:800 w:800)
-	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `Measured`)
 	/// The range of component `r` is `[1, 800]`.
 	fn seal_instantiate(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1281 + r * (255 ±0)`
-		//  Estimated: `9623 + r * (2731 ±0)`
-		// Minimum execution time: 661_757_000 picoseconds.
-		Weight::from_parts(676_799_000, 9623)
-			// Standard Error: 280_583
-			.saturating_add(Weight::from_parts(372_936_154, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(14_u64))
-			.saturating_add(T::DbWeight::get().reads((6_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(7_u64))
-			.saturating_add(T::DbWeight::get().writes((5_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2731).saturating_mul(r.into()))
+		//  Measured:  `1097 + r * (188 ±0)`
+		//  Estimated: `6990 + r * (2664 ±0)`
+		// Minimum execution time: 350_266_000 picoseconds.
+		Weight::from_parts(357_097_000, 6990)
+			// Standard Error: 248_976
+			.saturating_add(Weight::from_parts(336_010_851, 0).saturating_mul(r.into()))
+			.saturating_add(T::DbWeight::get().reads(6_u64))
+			.saturating_add(T::DbWeight::get().reads((5_u64).saturating_mul(r.into())))
+			.saturating_add(T::DbWeight::get().writes(4_u64))
+			.saturating_add(T::DbWeight::get().writes((4_u64).saturating_mul(r.into())))
+			.saturating_add(Weight::from_parts(0, 2664).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:3 w:3)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:2 w:2)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:2 w:1)
+	/// Storage: `Contracts::CodeInfoOf` (r:1 w:1)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:2 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `Contracts::Nonce` (r:1 w:1)
+	/// Storage: `Contracts::Nonce` (r:1 w:0)
 	/// Proof: `Contracts::Nonce` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:4 w:4)
+	/// Storage: `Contracts::ContractInfoOf` (r:1 w:2)
+	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `System::Account` (r:3 w:3)
+	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:2 w:2)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// Storage: `Balances::Holds` (r:1 w:1)
-	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `Measured`)
 	/// The range of component `t` is `[0, 1]`.
 	/// The range of component `i` is `[0, 983040]`.
 	/// The range of component `s` is `[0, 983040]`.
 	fn seal_instantiate_per_transfer_input_salt_byte(t: u32, i: u32, s: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1306 + t * (104 ±0)`
-		//  Estimated: `12214 + t * (2549 ±1)`
-		// Minimum execution time: 2_217_563_000 picoseconds.
-		Weight::from_parts(1_188_285_504, 12214)
-			// Standard Error: 12_397_366
-			.saturating_add(Weight::from_parts(10_833_274, 0).saturating_mul(t.into()))
+		//  Measured:  `760 + t * (104 ±0)`
+		//  Estimated: `6719 + t * (2549 ±1)`
+		// Minimum execution time: 1_866_294_000 picoseconds.
+		Weight::from_parts(900_604_598, 6719)
 			// Standard Error: 19
-			.saturating_add(Weight::from_parts(1_084, 0).saturating_mul(i.into()))
+			.saturating_add(Weight::from_parts(1_064, 0).saturating_mul(i.into()))
 			// Standard Error: 19
-			.saturating_add(Weight::from_parts(1_238, 0).saturating_mul(s.into()))
-			.saturating_add(T::DbWeight::get().reads(19_u64))
+			.saturating_add(Weight::from_parts(1_194, 0).saturating_mul(s.into()))
+			.saturating_add(T::DbWeight::get().reads(10_u64))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(t.into())))
-			.saturating_add(T::DbWeight::get().writes(11_u64))
+			.saturating_add(T::DbWeight::get().writes(7_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(t.into())))
 			.saturating_add(Weight::from_parts(0, 2549).saturating_mul(t.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_hash_sha2_256(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `865 + r * (8 ±0)`
-		//  Estimated: `9279 + r * (8 ±0)`
-		// Minimum execution time: 274_367_000 picoseconds.
-		Weight::from_parts(294_958_322, 9279)
-			// Standard Error: 1_239
-			.saturating_add(Weight::from_parts(388_976, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_058_000 picoseconds.
+		Weight::from_parts(11_642_576, 0)
+			// Standard Error: 191
+			.saturating_add(Weight::from_parts(266_977, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_sha2_256_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `873`
-		//  Estimated: `9286`
-		// Minimum execution time: 260_947_000 picoseconds.
-		Weight::from_parts(271_974_409, 9286)
-			// Standard Error: 1
-			.saturating_add(Weight::from_parts(1_087, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_002_000 picoseconds.
+		Weight::from_parts(11_221_000, 0)
+			// Standard Error: 0
+			.saturating_add(Weight::from_parts(1_056, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_hash_keccak_256(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `867 + r * (8 ±0)`
-		//  Estimated: `9284 + r * (8 ±0)`
-		// Minimum execution time: 256_505_000 picoseconds.
-		Weight::from_parts(288_574_804, 9284)
-			// Standard Error: 1_115
-			.saturating_add(Weight::from_parts(787_123, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_152_000 picoseconds.
+		Weight::from_parts(10_803_041, 0)
+			// Standard Error: 266
+			.saturating_add(Weight::from_parts(686_345, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_keccak_256_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `875`
-		//  Estimated: `9292`
-		// Minimum execution time: 261_657_000 picoseconds.
-		Weight::from_parts(283_908_184, 9292)
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_955_000 picoseconds.
+		Weight::from_parts(4_617_649, 0)
 			// Standard Error: 1
-			.saturating_add(Weight::from_parts(3_345, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
+			.saturating_add(Weight::from_parts(3_337, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_hash_blake2_256(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `867 + r * (8 ±0)`
-		//  Estimated: `9286 + r * (8 ±0)`
-		// Minimum execution time: 262_311_000 picoseconds.
-		Weight::from_parts(295_454_976, 9286)
-			// Standard Error: 558
-			.saturating_add(Weight::from_parts(434_922, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_116_000 picoseconds.
+		Weight::from_parts(9_898_975, 0)
+			// Standard Error: 287
+			.saturating_add(Weight::from_parts(331_984, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_blake2_256_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `875`
-		//  Estimated: `9291`
-		// Minimum execution time: 269_002_000 picoseconds.
-		Weight::from_parts(280_531_070, 9291)
-			// Standard Error: 1
-			.saturating_add(Weight::from_parts(1_203, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_220_000 picoseconds.
+		Weight::from_parts(2_971_363, 0)
+			// Standard Error: 0
+			.saturating_add(Weight::from_parts(1_192, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_hash_blake2_128(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `867 + r * (8 ±0)`
-		//  Estimated: `9283 + r * (8 ±0)`
-		// Minimum execution time: 259_660_000 picoseconds.
-		Weight::from_parts(287_625_483, 9283)
-			// Standard Error: 524
-			.saturating_add(Weight::from_parts(456_200, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 8_962_000 picoseconds.
+		Weight::from_parts(9_956_006, 0)
+			// Standard Error: 282
+			.saturating_add(Weight::from_parts(336_862, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_blake2_128_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `875`
-		//  Estimated: `9289`
-		// Minimum execution time: 263_305_000 picoseconds.
-		Weight::from_parts(278_483_877, 9289)
-			// Standard Error: 0
-			.saturating_add(Weight::from_parts(1_202, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_248_000 picoseconds.
+		Weight::from_parts(910_460, 0)
+			// Standard Error: 1
+			.saturating_add(Weight::from_parts(1_201, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 125697]`.
 	fn seal_sr25519_verify_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1000 + n * (1 ±0)`
-		//  Estimated: `9412 + n * (1 ±0)`
-		// Minimum execution time: 329_511_000 picoseconds.
-		Weight::from_parts(341_570_880, 9412)
-			// Standard Error: 11
-			.saturating_add(Weight::from_parts(5_914, 0).saturating_mul(n.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 53_691_000 picoseconds.
+		Weight::from_parts(53_572_040, 0)
+			// Standard Error: 8
+			.saturating_add(Weight::from_parts(4_636, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 160]`.
 	fn seal_sr25519_verify(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `808 + r * (112 ±0)`
-		//  Estimated: `9226 + r * (112 ±0)`
-		// Minimum execution time: 269_103_000 picoseconds.
-		Weight::from_parts(317_360_842, 9226)
-			// Standard Error: 16_463
-			.saturating_add(Weight::from_parts(45_965_726, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 112).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_019_000 picoseconds.
+		Weight::from_parts(21_443_365, 0)
+			// Standard Error: 7_796
+			.saturating_add(Weight::from_parts(40_945_218, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 160]`.
 	fn seal_ecdsa_recover(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `910 + r * (76 ±0)`
-		//  Estimated: `9279 + r * (77 ±0)`
-		// Minimum execution time: 281_685_000 picoseconds.
-		Weight::from_parts(339_617_056, 9279)
-			// Standard Error: 15_672
-			.saturating_add(Weight::from_parts(45_907_026, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 77).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_029_000 picoseconds.
+		Weight::from_parts(28_109_572, 0)
+			// Standard Error: 9_684
+			.saturating_add(Weight::from_parts(45_446_659, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 160]`.
 	fn seal_ecdsa_to_eth_address(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `880 + r * (42 ±0)`
-		//  Estimated: `9294 + r * (42 ±0)`
-		// Minimum execution time: 265_009_000 picoseconds.
-		Weight::from_parts(304_895_744, 9294)
-			// Standard Error: 7_640
-			.saturating_add(Weight::from_parts(12_117_411, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 42).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_204_000 picoseconds.
+		Weight::from_parts(11_165_863, 0)
+			// Standard Error: 3_380
+			.saturating_add(Weight::from_parts(11_640_284, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
 	/// Storage: `Contracts::CodeInfoOf` (r:1536 w:1536)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1536 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1535 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:1538 w:1538)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:1537 w:1537)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_set_code_hash(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `0 + r * (965 ±0)`
-		//  Estimated: `9285 + r * (3090 ±7)`
-		// Minimum execution time: 281_110_000 picoseconds.
-		Weight::from_parts(283_554_000, 9285)
-			// Standard Error: 47_136
-			.saturating_add(Weight::from_parts(27_448_052, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `0 + r * (926 ±0)`
+		//  Estimated: `8969 + r * (3047 ±10)`
+		// Minimum execution time: 9_285_000 picoseconds.
+		Weight::from_parts(9_384_000, 8969)
+			// Standard Error: 43_985
+			.saturating_add(Weight::from_parts(25_318_514, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 3090).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 3047).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:33 w:32)
+	/// Storage: `Contracts::CodeInfoOf` (r:32 w:32)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 32]`.
 	fn lock_delegate_dependency(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `937 + r * (131 ±0)`
-		//  Estimated: `9346 + r * (2607 ±0)`
-		// Minimum execution time: 274_312_000 picoseconds.
-		Weight::from_parts(297_853_480, 9346)
-			// Standard Error: 31_172
-			.saturating_add(Weight::from_parts(6_829_169, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `274 + r * (78 ±0)`
+		//  Estimated: `1265 + r * (2553 ±0)`
+		// Minimum execution time: 9_204_000 picoseconds.
+		Weight::from_parts(15_422_169, 1265)
+			// Standard Error: 10_310
+			.saturating_add(Weight::from_parts(5_137_638, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2607).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2553).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `MaxEncodedLen`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::CodeInfoOf` (r:33 w:32)
+	/// Storage: `Contracts::CodeInfoOf` (r:32 w:32)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `MaxEncodedLen`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `MaxEncodedLen`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 32]`.
 	fn unlock_delegate_dependency(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `972 + r * (184 ±0)`
-		//  Estimated: `129453 + r * (2568 ±0)`
-		// Minimum execution time: 271_607_000 picoseconds.
-		Weight::from_parts(299_008_266, 129453)
-			// Standard Error: 25_085
-			.saturating_add(Weight::from_parts(5_828_791, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
+		//  Measured:  `275 + r * (78 ±0)`
+		//  Estimated: `990 + r * (2568 ±0)`
+		// Minimum execution time: 9_103_000 picoseconds.
+		Weight::from_parts(15_303_019, 990)
+			// Standard Error: 9_932
+			.saturating_add(Weight::from_parts(4_311_398, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into())))
 			.saturating_add(Weight::from_parts(0, 2568).saturating_mul(r.into()))
 	}
@@ -2084,83 +1360,46 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
 		// Proof Size summary in bytes:
 		//  Measured:  `861 + r * (3 ±0)`
 		//  Estimated: `9282 + r * (3 ±0)`
-		// Minimum execution time: 275_135_000 picoseconds.
-		Weight::from_parts(289_363_447, 9282)
-			// Standard Error: 501
-			.saturating_add(Weight::from_parts(171_024, 0).saturating_mul(r.into()))
+		// Minimum execution time: 256_302_000 picoseconds.
+		Weight::from_parts(285_379_160, 9282)
+			// Standard Error: 420
+			.saturating_add(Weight::from_parts(167_664, 0).saturating_mul(r.into()))
 			.saturating_add(T::DbWeight::get().reads(11_u64))
 			.saturating_add(T::DbWeight::get().writes(3_u64))
 			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_account_reentrance_count(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `2112 + r * (39 ±0)`
-		//  Estimated: `10377 + r * (40 ±0)`
-		// Minimum execution time: 279_752_000 picoseconds.
-		Weight::from_parts(322_774_890, 10377)
-			// Standard Error: 867
-			.saturating_add(Weight::from_parts(262_474, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(11_u64))
-			.saturating_add(T::DbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 40).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_796_000 picoseconds.
+		Weight::from_parts(11_892_860, 0)
+			// Standard Error: 123
+			.saturating_add(Weight::from_parts(80_644, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `Contracts::Nonce` (r:1 w:1)
+	/// Storage: `Contracts::Nonce` (r:1 w:0)
 	/// Proof: `Contracts::Nonce` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_instantiation_nonce(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `864 + r * (3 ±0)`
-		//  Estimated: `9279 + r * (3 ±0)`
-		// Minimum execution time: 263_398_000 picoseconds.
-		Weight::from_parts(291_372_000, 9279)
-			// Standard Error: 448
-			.saturating_add(Weight::from_parts(151_931, 0).saturating_mul(r.into()))
-			.saturating_add(T::DbWeight::get().reads(12_u64))
-			.saturating_add(T::DbWeight::get().writes(4_u64))
-			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
+		//  Measured:  `219`
+		//  Estimated: `1704`
+		// Minimum execution time: 9_136_000 picoseconds.
+		Weight::from_parts(12_974_461, 1704)
+			// Standard Error: 72
+			.saturating_add(Weight::from_parts(75_956, 0).saturating_mul(r.into()))
+			.saturating_add(T::DbWeight::get().reads(1_u64))
 	}
 	/// The range of component `r` is `[0, 5000]`.
 	fn instr_i64_load_store(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
 		//  Measured:  `0`
 		//  Estimated: `0`
-		// Minimum execution time: 838_000 picoseconds.
-		Weight::from_parts(670_057, 0)
-			// Standard Error: 17
-			.saturating_add(Weight::from_parts(15_037, 0).saturating_mul(r.into()))
+		// Minimum execution time: 887_000 picoseconds.
+		Weight::from_parts(876_155, 0)
+			// Standard Error: 22
+			.saturating_add(Weight::from_parts(14_839, 0).saturating_mul(r.into()))
 	}
 }
 
@@ -2172,8 +1411,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `1627`
-		// Minimum execution time: 2_140_000 picoseconds.
-		Weight::from_parts(2_243_000, 1627)
+		// Minimum execution time: 2_114_000 picoseconds.
+		Weight::from_parts(2_196_000, 1627)
 			.saturating_add(RocksDbWeight::get().reads(1_u64))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -2183,10 +1422,10 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `452 + k * (69 ±0)`
 		//  Estimated: `442 + k * (70 ±0)`
-		// Minimum execution time: 12_655_000 picoseconds.
-		Weight::from_parts(12_863_000, 442)
-			// Standard Error: 1_147
-			.saturating_add(Weight::from_parts(1_097_546, 0).saturating_mul(k.into()))
+		// Minimum execution time: 12_470_000 picoseconds.
+		Weight::from_parts(12_729_000, 442)
+			// Standard Error: 896
+			.saturating_add(Weight::from_parts(1_101_272, 0).saturating_mul(k.into()))
 			.saturating_add(RocksDbWeight::get().reads(2_u64))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(k.into())))
 			.saturating_add(RocksDbWeight::get().writes(2_u64))
@@ -2200,10 +1439,10 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `211 + c * (1 ±0)`
 		//  Estimated: `6149 + c * (1 ±0)`
-		// Minimum execution time: 8_626_000 picoseconds.
-		Weight::from_parts(8_805_071, 6149)
+		// Minimum execution time: 8_500_000 picoseconds.
+		Weight::from_parts(8_724_406, 6149)
 			// Standard Error: 1
-			.saturating_add(Weight::from_parts(1_188, 0).saturating_mul(c.into()))
+			.saturating_add(Weight::from_parts(1_183, 0).saturating_mul(c.into()))
 			.saturating_add(RocksDbWeight::get().reads(2_u64))
 			.saturating_add(RocksDbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(c.into()))
@@ -2216,8 +1455,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `510`
 		//  Estimated: `6450`
-		// Minimum execution time: 16_748_000 picoseconds.
-		Weight::from_parts(17_483_000, 6450)
+		// Minimum execution time: 16_863_000 picoseconds.
+		Weight::from_parts(17_671_000, 6450)
 			.saturating_add(RocksDbWeight::get().reads(3_u64))
 			.saturating_add(RocksDbWeight::get().writes(1_u64))
 	}
@@ -2230,10 +1469,10 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `171 + k * (1 ±0)`
 		//  Estimated: `3635 + k * (1 ±0)`
-		// Minimum execution time: 3_632_000 picoseconds.
-		Weight::from_parts(3_706_000, 3635)
-			// Standard Error: 903
-			.saturating_add(Weight::from_parts(1_185_348, 0).saturating_mul(k.into()))
+		// Minimum execution time: 3_559_000 picoseconds.
+		Weight::from_parts(3_728_000, 3635)
+			// Standard Error: 1_486
+			.saturating_add(Weight::from_parts(1_264_217, 0).saturating_mul(k.into()))
 			.saturating_add(RocksDbWeight::get().reads(1_u64))
 			.saturating_add(RocksDbWeight::get().writes(2_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(k.into())))
@@ -2254,10 +1493,10 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `328 + c * (1 ±0)`
 		//  Estimated: `6266 + c * (1 ±0)`
-		// Minimum execution time: 21_630_000 picoseconds.
-		Weight::from_parts(20_845_294, 6266)
-			// Standard Error: 2
-			.saturating_add(Weight::from_parts(421, 0).saturating_mul(c.into()))
+		// Minimum execution time: 21_285_000 picoseconds.
+		Weight::from_parts(21_918_340, 6266)
+			// Standard Error: 0
+			.saturating_add(Weight::from_parts(391, 0).saturating_mul(c.into()))
 			.saturating_add(RocksDbWeight::get().reads(6_u64))
 			.saturating_add(RocksDbWeight::get().writes(2_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(c.into()))
@@ -2268,8 +1507,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `440`
 		//  Estimated: `6380`
-		// Minimum execution time: 13_178_000 picoseconds.
-		Weight::from_parts(13_671_000, 6380)
+		// Minimum execution time: 13_274_000 picoseconds.
+		Weight::from_parts(13_810_000, 6380)
 			.saturating_add(RocksDbWeight::get().reads(2_u64))
 			.saturating_add(RocksDbWeight::get().writes(1_u64))
 	}
@@ -2283,8 +1522,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `352`
 		//  Estimated: `6292`
-		// Minimum execution time: 45_828_000 picoseconds.
-		Weight::from_parts(46_476_000, 6292)
+		// Minimum execution time: 47_886_000 picoseconds.
+		Weight::from_parts(49_631_000, 6292)
 			.saturating_add(RocksDbWeight::get().reads(4_u64))
 			.saturating_add(RocksDbWeight::get().writes(1_u64))
 	}
@@ -2296,8 +1535,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `594`
 		//  Estimated: `6534`
-		// Minimum execution time: 54_767_000 picoseconds.
-		Weight::from_parts(56_879_000, 6534)
+		// Minimum execution time: 56_799_000 picoseconds.
+		Weight::from_parts(58_731_000, 6534)
 			.saturating_add(RocksDbWeight::get().reads(4_u64))
 			.saturating_add(RocksDbWeight::get().writes(2_u64))
 	}
@@ -2307,8 +1546,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `1627`
-		// Minimum execution time: 2_599_000 picoseconds.
-		Weight::from_parts(2_794_000, 1627)
+		// Minimum execution time: 2_534_000 picoseconds.
+		Weight::from_parts(2_640_000, 1627)
 			.saturating_add(RocksDbWeight::get().reads(1_u64))
 			.saturating_add(RocksDbWeight::get().writes(1_u64))
 	}
@@ -2320,8 +1559,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `166`
 		//  Estimated: `3631`
-		// Minimum execution time: 10_275_000 picoseconds.
-		Weight::from_parts(10_709_000, 3631)
+		// Minimum execution time: 12_738_000 picoseconds.
+		Weight::from_parts(13_132_000, 3631)
 			.saturating_add(RocksDbWeight::get().reads(2_u64))
 			.saturating_add(RocksDbWeight::get().writes(2_u64))
 	}
@@ -2331,8 +1570,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `3607`
-		// Minimum execution time: 3_813_000 picoseconds.
-		Weight::from_parts(4_033_000, 3607)
+		// Minimum execution time: 4_846_000 picoseconds.
+		Weight::from_parts(5_136_000, 3607)
 			.saturating_add(RocksDbWeight::get().reads(1_u64))
 	}
 	/// Storage: UNKNOWN KEY `0x4342193e496fab7ec59d615ed0dc55304e7b9012096b41c4eb3aaf947f6ea429` (r:1 w:0)
@@ -2343,8 +1582,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `167`
 		//  Estimated: `3632`
-		// Minimum execution time: 5_160_000 picoseconds.
-		Weight::from_parts(5_478_000, 3632)
+		// Minimum execution time: 6_418_000 picoseconds.
+		Weight::from_parts(6_640_000, 3632)
 			.saturating_add(RocksDbWeight::get().reads(2_u64))
 	}
 	/// Storage: UNKNOWN KEY `0x4342193e496fab7ec59d615ed0dc55304e7b9012096b41c4eb3aaf947f6ea429` (r:1 w:0)
@@ -2355,8 +1594,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `142`
 		//  Estimated: `3607`
-		// Minimum execution time: 5_178_000 picoseconds.
-		Weight::from_parts(5_540_000, 3607)
+		// Minimum execution time: 6_540_000 picoseconds.
+		Weight::from_parts(6_779_000, 3607)
 			.saturating_add(RocksDbWeight::get().reads(2_u64))
 			.saturating_add(RocksDbWeight::get().writes(1_u64))
 	}
@@ -2381,10 +1620,10 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `804 + c * (1 ±0)`
 		//  Estimated: `9217 + c * (1 ±0)`
-		// Minimum execution time: 295_545_000 picoseconds.
-		Weight::from_parts(291_859_570, 9217)
-			// Standard Error: 73
-			.saturating_add(Weight::from_parts(33_546, 0).saturating_mul(c.into()))
+		// Minimum execution time: 293_893_000 picoseconds.
+		Weight::from_parts(291_073_317, 9217)
+			// Standard Error: 76
+			.saturating_add(Weight::from_parts(33_770, 0).saturating_mul(c.into()))
 			.saturating_add(RocksDbWeight::get().reads(11_u64))
 			.saturating_add(RocksDbWeight::get().writes(4_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(c.into()))
@@ -2416,14 +1655,14 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `326`
 		//  Estimated: `8740`
-		// Minimum execution time: 3_796_729_000 picoseconds.
-		Weight::from_parts(808_328_941, 8740)
-			// Standard Error: 156
-			.saturating_add(Weight::from_parts(99_863, 0).saturating_mul(c.into()))
-			// Standard Error: 18
-			.saturating_add(Weight::from_parts(1_433, 0).saturating_mul(i.into()))
-			// Standard Error: 18
-			.saturating_add(Weight::from_parts(1_501, 0).saturating_mul(s.into()))
+		// Minimum execution time: 3_860_814_000 picoseconds.
+		Weight::from_parts(735_131_841, 8740)
+			// Standard Error: 143
+			.saturating_add(Weight::from_parts(100_168, 0).saturating_mul(c.into()))
+			// Standard Error: 17
+			.saturating_add(Weight::from_parts(1_454, 0).saturating_mul(i.into()))
+			// Standard Error: 17
+			.saturating_add(Weight::from_parts(1_580, 0).saturating_mul(s.into()))
 			.saturating_add(RocksDbWeight::get().reads(14_u64))
 			.saturating_add(RocksDbWeight::get().writes(10_u64))
 	}
@@ -2453,12 +1692,12 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `563`
 		//  Estimated: `8982`
-		// Minimum execution time: 2_004_502_000 picoseconds.
-		Weight::from_parts(2_013_544_000, 8982)
+		// Minimum execution time: 2_003_060_000 picoseconds.
+		Weight::from_parts(2_022_270_000, 8982)
 			// Standard Error: 26
-			.saturating_add(Weight::from_parts(807, 0).saturating_mul(i.into()))
+			.saturating_add(Weight::from_parts(815, 0).saturating_mul(i.into()))
 			// Standard Error: 26
-			.saturating_add(Weight::from_parts(784, 0).saturating_mul(s.into()))
+			.saturating_add(Weight::from_parts(774, 0).saturating_mul(s.into()))
 			.saturating_add(RocksDbWeight::get().reads(13_u64))
 			.saturating_add(RocksDbWeight::get().writes(7_u64))
 	}
@@ -2482,8 +1721,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `829`
 		//  Estimated: `9244`
-		// Minimum execution time: 213_568_000 picoseconds.
-		Weight::from_parts(219_796_000, 9244)
+		// Minimum execution time: 207_310_000 picoseconds.
+		Weight::from_parts(217_885_000, 9244)
 			.saturating_add(RocksDbWeight::get().reads(11_u64))
 			.saturating_add(RocksDbWeight::get().writes(4_u64))
 	}
@@ -2504,10 +1743,10 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `145`
 		//  Estimated: `6085`
-		// Minimum execution time: 290_835_000 picoseconds.
-		Weight::from_parts(396_613_751, 6085)
-			// Standard Error: 160
-			.saturating_add(Weight::from_parts(63_993, 0).saturating_mul(c.into()))
+		// Minimum execution time: 278_462_000 picoseconds.
+		Weight::from_parts(306_084_905, 6085)
+			// Standard Error: 74
+			.saturating_add(Weight::from_parts(64_311, 0).saturating_mul(c.into()))
 			.saturating_add(RocksDbWeight::get().reads(6_u64))
 			.saturating_add(RocksDbWeight::get().writes(4_u64))
 	}
@@ -2528,10 +1767,10 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `145`
 		//  Estimated: `6085`
-		// Minimum execution time: 302_249_000 picoseconds.
-		Weight::from_parts(312_519_255, 6085)
-			// Standard Error: 90
-			.saturating_add(Weight::from_parts(64_908, 0).saturating_mul(c.into()))
+		// Minimum execution time: 286_348_000 picoseconds.
+		Weight::from_parts(314_351_958, 6085)
+			// Standard Error: 113
+			.saturating_add(Weight::from_parts(65_816, 0).saturating_mul(c.into()))
 			.saturating_add(RocksDbWeight::get().reads(6_u64))
 			.saturating_add(RocksDbWeight::get().writes(4_u64))
 	}
@@ -2549,8 +1788,8 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `315`
 		//  Estimated: `3780`
-		// Minimum execution time: 46_580_000 picoseconds.
-		Weight::from_parts(47_676_000, 3780)
+		// Minimum execution time: 46_378_000 picoseconds.
+		Weight::from_parts(51_280_000, 3780)
 			.saturating_add(RocksDbWeight::get().reads(4_u64))
 			.saturating_add(RocksDbWeight::get().writes(4_u64))
 	}
@@ -2566,447 +1805,174 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `552`
 		//  Estimated: `8967`
-		// Minimum execution time: 35_454_000 picoseconds.
-		Weight::from_parts(36_956_000, 8967)
+		// Minimum execution time: 34_914_000 picoseconds.
+		Weight::from_parts(36_577_000, 8967)
 			.saturating_add(RocksDbWeight::get().reads(7_u64))
 			.saturating_add(RocksDbWeight::get().writes(6_u64))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_caller(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `869 + r * (6 ±0)`
-		//  Estimated: `9284 + r * (6 ±0)`
-		// Minimum execution time: 265_797_000 picoseconds.
-		Weight::from_parts(305_958_124, 9284)
-			// Standard Error: 3_049
-			.saturating_add(Weight::from_parts(343_670, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_199_000 picoseconds.
+		Weight::from_parts(10_051_151, 0)
+			// Standard Error: 244
+			.saturating_add(Weight::from_parts(248_249, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1601 w:1)
+	/// Storage: `Contracts::ContractInfoOf` (r:1600 w:0)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_is_contract(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `925 + r * (209 ±0)`
-		//  Estimated: `9304 + r * (2684 ±0)`
-		// Minimum execution time: 273_327_000 picoseconds.
-		Weight::from_parts(143_036_031, 9304)
-			// Standard Error: 5_612
-			.saturating_add(Weight::from_parts(3_745_297, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `509 + r * (77 ±0)`
+		//  Estimated: `1467 + r * (2552 ±0)`
+		// Minimum execution time: 9_100_000 picoseconds.
+		Weight::from_parts(9_183_000, 1467)
+			// Standard Error: 5_858
+			.saturating_add(Weight::from_parts(3_223_076, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 2684).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2552).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1601 w:1)
+	/// Storage: `Contracts::ContractInfoOf` (r:1600 w:0)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_code_hash(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `924 + r * (213 ±0)`
-		//  Estimated: `9308 + r * (2688 ±0)`
-		// Minimum execution time: 279_590_000 picoseconds.
-		Weight::from_parts(147_961_398, 9308)
-			// Standard Error: 6_198
-			.saturating_add(Weight::from_parts(4_677_881, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `517 + r * (170 ±0)`
+		//  Estimated: `1468 + r * (2645 ±0)`
+		// Minimum execution time: 9_032_000 picoseconds.
+		Weight::from_parts(9_167_000, 1468)
+			// Standard Error: 6_232
+			.saturating_add(Weight::from_parts(4_098_301, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 2688).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2645).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_own_code_hash(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `876 + r * (6 ±0)`
-		//  Estimated: `9293 + r * (6 ±0)`
-		// Minimum execution time: 277_334_000 picoseconds.
-		Weight::from_parts(285_263_644, 9293)
-			// Standard Error: 771
-			.saturating_add(Weight::from_parts(450_538, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_625_000 picoseconds.
+		Weight::from_parts(12_135_747, 0)
+			// Standard Error: 237
+			.saturating_add(Weight::from_parts(410_404, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_caller_is_origin(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (3 ±0)`
-		//  Estimated: `9282 + r * (3 ±0)`
-		// Minimum execution time: 262_895_000 picoseconds.
-		Weight::from_parts(290_274_813, 9282)
-			// Standard Error: 356
-			.saturating_add(Weight::from_parts(172_585, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_425_000 picoseconds.
+		Weight::from_parts(12_591_828, 0)
+			// Standard Error: 74
+			.saturating_add(Weight::from_parts(110_710, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_caller_is_root(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `756 + r * (3 ±0)`
-		//  Estimated: `9171 + r * (3 ±0)`
-		// Minimum execution time: 261_701_000 picoseconds.
-		Weight::from_parts(279_765_708, 9171)
-			// Standard Error: 451
-			.saturating_add(Weight::from_parts(158_243, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(10_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_456_000 picoseconds.
+		Weight::from_parts(12_321_553, 0)
+			// Standard Error: 56
+			.saturating_add(Weight::from_parts(91_591, 0).saturating_mul(r.into()))
+	}
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_address(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `870 + r * (6 ±0)`
-		//  Estimated: `9285 + r * (6 ±0)`
-		// Minimum execution time: 284_209_000 picoseconds.
-		Weight::from_parts(294_215_782, 9285)
-			// Standard Error: 703
-			.saturating_add(Weight::from_parts(344_236, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_701_000 picoseconds.
+		Weight::from_parts(11_708_796, 0)
+			// Standard Error: 219
+			.saturating_add(Weight::from_parts(306_175, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_gas_left(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (6 ±0)`
-		//  Estimated: `9284 + r * (6 ±0)`
-		// Minimum execution time: 277_126_000 picoseconds.
-		Weight::from_parts(292_436_333, 9284)
-			// Standard Error: 1_215
-			.saturating_add(Weight::from_parts(380_107, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_740_000 picoseconds.
+		Weight::from_parts(29_870_801, 0)
+			// Standard Error: 1_014
+			.saturating_add(Weight::from_parts(273_579, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:2 w:0)
+	/// Storage: `System::Account` (r:1 w:0)
 	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_balance(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1010 + r * (6 ±0)`
-		//  Estimated: `9409 + r * (6 ±0)`
-		// Minimum execution time: 266_377_000 picoseconds.
-		Weight::from_parts(295_163_193, 9409)
-			// Standard Error: 4_026
-			.saturating_add(Weight::from_parts(1_859_387, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `140`
+		//  Estimated: `3599`
+		// Minimum execution time: 9_330_000 picoseconds.
+		Weight::from_parts(4_407_249, 3599)
+			// Standard Error: 880
+			.saturating_add(Weight::from_parts(1_563_659, 0).saturating_mul(r.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_value_transferred(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `880 + r * (6 ±0)`
-		//  Estimated: `9301 + r * (6 ±0)`
-		// Minimum execution time: 276_990_000 picoseconds.
-		Weight::from_parts(296_463_738, 9301)
-			// Standard Error: 655
-			.saturating_add(Weight::from_parts(335_070, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_093_000 picoseconds.
+		Weight::from_parts(11_445_920, 0)
+			// Standard Error: 257
+			.saturating_add(Weight::from_parts(247_014, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_minimum_balance(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `878 + r * (6 ±0)`
-		//  Estimated: `9294 + r * (6 ±0)`
-		// Minimum execution time: 274_845_000 picoseconds.
-		Weight::from_parts(294_870_901, 9294)
-			// Standard Error: 793
-			.saturating_add(Weight::from_parts(336_049, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_640_000 picoseconds.
+		Weight::from_parts(11_383_646, 0)
+			// Standard Error: 191
+			.saturating_add(Weight::from_parts(246_675, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_block_number(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `875 + r * (6 ±0)`
-		//  Estimated: `9297 + r * (6 ±0)`
-		// Minimum execution time: 277_792_000 picoseconds.
-		Weight::from_parts(290_529_469, 9297)
-			// Standard Error: 1_191
-			.saturating_add(Weight::from_parts(339_291, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_213_000 picoseconds.
+		Weight::from_parts(5_816_185, 0)
+			// Standard Error: 1_041
+			.saturating_add(Weight::from_parts(258_058, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_now(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (6 ±0)`
-		//  Estimated: `9282 + r * (6 ±0)`
-		// Minimum execution time: 271_060_000 picoseconds.
-		Weight::from_parts(287_512_151, 9282)
-			// Standard Error: 859
-			.saturating_add(Weight::from_parts(345_414, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_213_000 picoseconds.
+		Weight::from_parts(8_653_735, 0)
+			// Standard Error: 243
+			.saturating_add(Weight::from_parts(258_657, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
 	/// Storage: `TransactionPayment::NextFeeMultiplier` (r:1 w:0)
 	/// Proof: `TransactionPayment::NextFeeMultiplier` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_weight_to_fee(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `940 + r * (14 ±0)`
-		//  Estimated: `9350 + r * (14 ±0)`
-		// Minimum execution time: 265_401_000 picoseconds.
-		Weight::from_parts(303_350_793, 9350)
-			// Standard Error: 1_995
-			.saturating_add(Weight::from_parts(885_253, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 14).saturating_mul(r.into()))
+		//  Measured:  `67`
+		//  Estimated: `1552`
+		// Minimum execution time: 8_986_000 picoseconds.
+		Weight::from_parts(13_032_048, 1552)
+			// Standard Error: 441
+			.saturating_add(Weight::from_parts(672_398, 0).saturating_mul(r.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_input(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `868 + r * (6 ±0)`
-		//  Estimated: `9285 + r * (6 ±0)`
-		// Minimum execution time: 264_474_000 picoseconds.
-		Weight::from_parts(289_972_634, 9285)
-			// Standard Error: 719
-			.saturating_add(Weight::from_parts(269_856, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 6).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_095_000 picoseconds.
+		Weight::from_parts(9_927_560, 0)
+			// Standard Error: 306
+			.saturating_add(Weight::from_parts(173_975, 0).saturating_mul(r.into()))
 	}
 	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
 	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
@@ -3029,67 +1995,32 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `872`
 		//  Estimated: `9287`
-		// Minimum execution time: 266_661_000 picoseconds.
-		Weight::from_parts(147_923_867, 9287)
+		// Minimum execution time: 275_801_000 picoseconds.
+		Weight::from_parts(150_079_707, 9287)
 			// Standard Error: 16
-			.saturating_add(Weight::from_parts(1_365, 0).saturating_mul(n.into()))
+			.saturating_add(Weight::from_parts(1_350, 0).saturating_mul(n.into()))
 			.saturating_add(RocksDbWeight::get().reads(11_u64))
 			.saturating_add(RocksDbWeight::get().writes(3_u64))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1]`.
 	fn seal_return(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `856 + r * (45 ±0)`
-		//  Estimated: `9271 + r * (45 ±0)`
-		// Minimum execution time: 257_851_000 picoseconds.
-		Weight::from_parts(285_687_679, 9271)
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 45).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 8_947_000 picoseconds.
+		Weight::from_parts(9_306_624, 0)
+			// Standard Error: 15_511
+			.saturating_add(Weight::from_parts(1_285_075, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_return_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866`
-		//  Estimated: `9288`
-		// Minimum execution time: 283_478_000 picoseconds.
-		Weight::from_parts(290_827_773, 9288)
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_298_000 picoseconds.
+		Weight::from_parts(11_227_690, 0)
 			// Standard Error: 0
-			.saturating_add(Weight::from_parts(319, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
+			.saturating_add(Weight::from_parts(314, 0).saturating_mul(n.into()))
 	}
 	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
 	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
@@ -3118,211 +2049,119 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `4805 + r * (2121 ±0)`
 		//  Estimated: `13220 + r * (81321 ±0)`
-		// Minimum execution time: 298_477_000 picoseconds.
-		Weight::from_parts(325_394_306, 13220)
-			// Standard Error: 873_781
-			.saturating_add(Weight::from_parts(255_748_093, 0).saturating_mul(r.into()))
+		// Minimum execution time: 297_431_000 picoseconds.
+		Weight::from_parts(323_150_773, 13220)
+			// Standard Error: 801_052
+			.saturating_add(Weight::from_parts(250_140_426, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads(11_u64))
 			.saturating_add(RocksDbWeight::get().reads((36_u64).saturating_mul(r.into())))
 			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((41_u64).saturating_mul(r.into())))
 			.saturating_add(Weight::from_parts(0, 81321).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
 	/// Storage: `RandomnessCollectiveFlip::RandomMaterial` (r:1 w:0)
 	/// Proof: `RandomnessCollectiveFlip::RandomMaterial` (`max_values`: Some(1), `max_size`: Some(2594), added: 3089, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_random(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `947 + r * (10 ±0)`
-		//  Estimated: `9363 + r * (10 ±0)`
-		// Minimum execution time: 260_352_000 picoseconds.
-		Weight::from_parts(287_284_570, 9363)
-			// Standard Error: 4_051
-			.saturating_add(Weight::from_parts(1_350_197, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 10).saturating_mul(r.into()))
+		//  Measured:  `76`
+		//  Estimated: `1561`
+		// Minimum execution time: 9_410_000 picoseconds.
+		Weight::from_parts(14_925_916, 1561)
+			// Standard Error: 546
+			.saturating_add(Weight::from_parts(1_125_307, 0).saturating_mul(r.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_deposit_event(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `866 + r * (10 ±0)`
-		//  Estimated: `9283 + r * (10 ±0)`
-		// Minimum execution time: 277_214_000 picoseconds.
-		Weight::from_parts(295_852_897, 9283)
-			// Standard Error: 1_554
-			.saturating_add(Weight::from_parts(2_120_577, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 10).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_145_000 picoseconds.
+		Weight::from_parts(28_024_125, 0)
+			// Standard Error: 3_571
+			.saturating_add(Weight::from_parts(1_945_568, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:6 w:6)
+	/// Storage: `System::EventTopics` (r:4 w:4)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `t` is `[0, 4]`.
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_deposit_event_per_topic_and_byte(t: u32, n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `883 + t * (32 ±0)`
-		//  Estimated: `9303 + t * (2508 ±0)`
-		// Minimum execution time: 282_107_000 picoseconds.
-		Weight::from_parts(300_658_543, 9303)
-			// Standard Error: 97_515
-			.saturating_add(Weight::from_parts(1_999_680, 0).saturating_mul(t.into()))
-			// Standard Error: 27
-			.saturating_add(Weight::from_parts(417, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `0`
+		//  Estimated: `990 + t * (2475 ±0)`
+		// Minimum execution time: 23_782_000 picoseconds.
+		Weight::from_parts(15_056_196, 990)
+			// Standard Error: 12_451
+			.saturating_add(Weight::from_parts(2_368_774, 0).saturating_mul(t.into()))
+			// Standard Error: 3
+			.saturating_add(Weight::from_parts(621, 0).saturating_mul(n.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(t.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(t.into())))
-			.saturating_add(Weight::from_parts(0, 2508).saturating_mul(t.into()))
+			.saturating_add(Weight::from_parts(0, 2475).saturating_mul(t.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_debug_message(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `865 + r * (7 ±0)`
-		//  Estimated: `9285 + r * (7 ±0)`
-		// Minimum execution time: 170_105_000 picoseconds.
-		Weight::from_parts(185_260_479, 9285)
-			// Standard Error: 451
-			.saturating_add(Weight::from_parts(227_483, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 7).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 8_218_000 picoseconds.
+		Weight::from_parts(9_606_404, 0)
+			// Standard Error: 124
+			.saturating_add(Weight::from_parts(103_251, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `MaxEncodedLen`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `MaxEncodedLen`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `MaxEncodedLen`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `i` is `[0, 1048576]`.
 	fn seal_debug_message_per_byte(i: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `125816`
-		//  Estimated: `131758`
-		// Minimum execution time: 415_029_000 picoseconds.
-		Weight::from_parts(398_551_260, 131758)
-			// Standard Error: 12
-			.saturating_add(Weight::from_parts(1_027, 0).saturating_mul(i.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_339_000 picoseconds.
+		Weight::from_parts(10_509_000, 0)
+			// Standard Error: 8
+			.saturating_add(Weight::from_parts(979, 0).saturating_mul(i.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_set_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `927 + r * (292 ±0)`
-		//  Estimated: `929 + r * (293 ±0)`
-		// Minimum execution time: 279_920_000 picoseconds.
-		Weight::from_parts(190_991_719, 929)
-			// Standard Error: 10_104
-			.saturating_add(Weight::from_parts(6_458_687, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 9_117_000 picoseconds.
+		Weight::from_parts(9_198_000, 105)
+			// Standard Error: 8_364
+			.saturating_add(Weight::from_parts(5_091_383, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 293).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_set_storage_per_new_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1450`
-		//  Estimated: `1433`
-		// Minimum execution time: 294_847_000 picoseconds.
-		Weight::from_parts(350_895_957, 1433)
-			// Standard Error: 80
-			.saturating_add(Weight::from_parts(676, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(15_u64))
-			.saturating_add(RocksDbWeight::get().writes(8_u64))
+		//  Measured:  `245`
+		//  Estimated: `245`
+		// Minimum execution time: 18_421_000 picoseconds.
+		Weight::from_parts(19_028_299, 245)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(299, 0).saturating_mul(n.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
+			.saturating_add(RocksDbWeight::get().writes(1_u64))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_set_storage_per_old_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1256 + n * (1 ±0)`
-		//  Estimated: `1256 + n * (1 ±0)`
-		// Minimum execution time: 280_398_000 picoseconds.
-		Weight::from_parts(306_915_984, 1256)
-			// Standard Error: 36
-			.saturating_add(Weight::from_parts(318, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(4_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 18_234_000 picoseconds.
+		Weight::from_parts(19_744_697, 248)
+			// Standard Error: 4
+			.saturating_add(Weight::from_parts(98, 0).saturating_mul(n.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
+			.saturating_add(RocksDbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -3330,31 +2169,29 @@ impl WeightInfo for () {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_clear_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `924 + r * (288 ±0)`
-		//  Estimated: `930 + r * (289 ±0)`
-		// Minimum execution time: 269_338_000 picoseconds.
-		Weight::from_parts(192_925_453, 930)
-			// Standard Error: 9_912
-			.saturating_add(Weight::from_parts(6_299_237, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 9_170_000 picoseconds.
+		Weight::from_parts(9_308_000, 105)
+			// Standard Error: 8_089
+			.saturating_add(Weight::from_parts(5_061_647, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 289).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_clear_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1252 + n * (1 ±0)`
-		//  Estimated: `1252 + n * (1 ±0)`
-		// Minimum execution time: 281_305_000 picoseconds.
-		Weight::from_parts(305_828_464, 1252)
-			// Standard Error: 34
-			.saturating_add(Weight::from_parts(490, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(4_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 20_640_000 picoseconds.
+		Weight::from_parts(22_163_262, 248)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(57, 0).saturating_mul(n.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
+			.saturating_add(RocksDbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -3362,30 +2199,27 @@ impl WeightInfo for () {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_get_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `924 + r * (296 ±0)`
-		//  Estimated: `926 + r * (297 ±0)`
-		// Minimum execution time: 267_838_000 picoseconds.
-		Weight::from_parts(224_154_959, 926)
-			// Standard Error: 7_904
-			.saturating_add(Weight::from_parts(5_123_059, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 11_636_000 picoseconds.
+		Weight::from_parts(11_694_000, 105)
+			// Standard Error: 6_493
+			.saturating_add(Weight::from_parts(4_442_054, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 297).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_get_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1268 + n * (1 ±0)`
-		//  Estimated: `1268 + n * (1 ±0)`
-		// Minimum execution time: 280_093_000 picoseconds.
-		Weight::from_parts(304_698_374, 1268)
-			// Standard Error: 46
-			.saturating_add(Weight::from_parts(579, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 20_197_000 picoseconds.
+		Weight::from_parts(21_863_984, 248)
+			// Standard Error: 3
+			.saturating_add(Weight::from_parts(633, 0).saturating_mul(n.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -3393,30 +2227,27 @@ impl WeightInfo for () {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_contains_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `935 + r * (288 ±0)`
-		//  Estimated: `932 + r * (289 ±0)`
-		// Minimum execution time: 263_759_000 picoseconds.
-		Weight::from_parts(214_010_246, 932)
-			// Standard Error: 8_052
-			.saturating_add(Weight::from_parts(4_953_264, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 12_347_000 picoseconds.
+		Weight::from_parts(12_455_000, 105)
+			// Standard Error: 7_068
+			.saturating_add(Weight::from_parts(4_325_197, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 289).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_contains_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1255 + n * (1 ±0)`
-		//  Estimated: `1255 + n * (1 ±0)`
-		// Minimum execution time: 273_652_000 picoseconds.
-		Weight::from_parts(299_141_902, 1255)
-			// Standard Error: 38
-			.saturating_add(Weight::from_parts(337, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 16_739_000 picoseconds.
+		Weight::from_parts(18_124_871, 248)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(92, 0).saturating_mul(n.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
@@ -3424,670 +2255,356 @@ impl WeightInfo for () {
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_take_storage(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `917 + r * (296 ±0)`
-		//  Estimated: `922 + r * (297 ±0)`
-		// Minimum execution time: 273_392_000 picoseconds.
-		Weight::from_parts(192_725_781, 922)
-			// Standard Error: 10_264
-			.saturating_add(Weight::from_parts(6_353_931, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `108 + r * (150 ±0)`
+		//  Estimated: `105 + r * (151 ±0)`
+		// Minimum execution time: 9_034_000 picoseconds.
+		Weight::from_parts(9_222_000, 105)
+			// Standard Error: 8_163
+			.saturating_add(Weight::from_parts(5_166_827, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 297).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 151).saturating_mul(r.into()))
 	}
 	/// Storage: `Skipped::Metadata` (r:0 w:0)
 	/// Proof: `Skipped::Metadata` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 16384]`.
 	fn seal_take_storage_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1269 + n * (1 ±0)`
-		//  Estimated: `1269 + n * (1 ±0)`
-		// Minimum execution time: 284_546_000 picoseconds.
-		Weight::from_parts(309_720_024, 1269)
-			// Standard Error: 33
-			.saturating_add(Weight::from_parts(664, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(4_u64))
+		//  Measured:  `248 + n * (1 ±0)`
+		//  Estimated: `248 + n * (1 ±0)`
+		// Minimum execution time: 19_437_000 picoseconds.
+		Weight::from_parts(20_878_358, 248)
+			// Standard Error: 2
+			.saturating_add(Weight::from_parts(625, 0).saturating_mul(n.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
+			.saturating_add(RocksDbWeight::get().writes(1_u64))
 			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1602 w:1601)
+	/// Storage: `System::Account` (r:1601 w:1601)
 	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_transfer(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1418 + r * (45 ±0)`
-		//  Estimated: `9785 + r * (2520 ±0)`
-		// Minimum execution time: 280_447_000 picoseconds.
-		Weight::from_parts(354_702_861, 9785)
-			// Standard Error: 42_509
-			.saturating_add(Weight::from_parts(34_678_454, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
+		//  Measured:  `770`
+		//  Estimated: `4221 + r * (2475 ±0)`
+		// Minimum execution time: 9_514_000 picoseconds.
+		Weight::from_parts(9_593_000, 4221)
+			// Standard Error: 24_003
+			.saturating_add(Weight::from_parts(33_351_110, 0).saturating_mul(r.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(4_u64))
+			.saturating_add(RocksDbWeight::get().writes(1_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2520).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2475).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:801 w:801)
+	/// Storage: `Contracts::ContractInfoOf` (r:800 w:801)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:2 w:0)
+	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:2 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:803 w:803)
+	/// Storage: `System::EventTopics` (r:801 w:801)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_call(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1263 + r * (245 ±0)`
-		//  Estimated: `9635 + r * (2721 ±0)`
-		// Minimum execution time: 279_400_000 picoseconds.
-		Weight::from_parts(282_198_000, 9635)
-			// Standard Error: 109_250
-			.saturating_add(Weight::from_parts(246_481_216, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(14_u64))
+		//  Measured:  `520 + r * (170 ±0)`
+		//  Estimated: `6463 + r * (2646 ±0)`
+		// Minimum execution time: 9_725_000 picoseconds.
+		Weight::from_parts(9_811_000, 6463)
+			// Standard Error: 116_763
+			.saturating_add(Weight::from_parts(243_431_319, 0).saturating_mul(r.into()))
+			.saturating_add(RocksDbWeight::get().reads(5_u64))
 			.saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(4_u64))
+			.saturating_add(RocksDbWeight::get().writes(2_u64))
 			.saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2721).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2646).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:736 w:0)
+	/// Storage: `Contracts::CodeInfoOf` (r:735 w:0)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:736 w:0)
+	/// Storage: `Contracts::PristineCode` (r:735 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:737 w:737)
+	/// Storage: `System::EventTopics` (r:736 w:736)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `Contracts::ContractInfoOf` (r:0 w:1)
+	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
 	/// The range of component `r` is `[0, 800]`.
 	fn seal_delegate_call(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `0 + r * (576 ±0)`
-		//  Estimated: `9290 + r * (2637 ±3)`
-		// Minimum execution time: 276_509_000 picoseconds.
-		Weight::from_parts(281_555_000, 9290)
-			// Standard Error: 133_738
-			.saturating_add(Weight::from_parts(244_671_777, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `0 + r * (527 ±0)`
+		//  Estimated: `6447 + r * (2583 ±10)`
+		// Minimum execution time: 9_177_000 picoseconds.
+		Weight::from_parts(9_315_000, 6447)
+			// Standard Error: 153_655
+			.saturating_add(Weight::from_parts(244_535_660, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2637).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2583).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:3 w:2)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:2 w:2)
+	/// Storage: `Contracts::ContractInfoOf` (r:1 w:2)
 	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:2 w:0)
+	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:2 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:4 w:4)
+	/// Storage: `System::Account` (r:2 w:2)
+	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:2 w:2)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
 	/// The range of component `t` is `[0, 1]`.
 	/// The range of component `c` is `[0, 1048576]`.
 	fn seal_call_per_transfer_clone_byte(t: u32, c: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1310 + t * (277 ±0)`
-		//  Estimated: `12200 + t * (5227 ±0)`
-		// Minimum execution time: 464_343_000 picoseconds.
-		Weight::from_parts(485_002_000, 12200)
-			// Standard Error: 7_933_446
-			.saturating_add(Weight::from_parts(172_853_968, 0).saturating_mul(t.into()))
-			// Standard Error: 6
-			.saturating_add(Weight::from_parts(775, 0).saturating_mul(c.into()))
-			.saturating_add(RocksDbWeight::get().reads(16_u64))
+		//  Measured:  `699 + t * (277 ±0)`
+		//  Estimated: `6639 + t * (3458 ±0)`
+		// Minimum execution time: 215_422_000 picoseconds.
+		Weight::from_parts(120_075_010, 6639)
+			// Standard Error: 2_612_201
+			.saturating_add(Weight::from_parts(41_816_738, 0).saturating_mul(t.into()))
+			// Standard Error: 3
+			.saturating_add(Weight::from_parts(421, 0).saturating_mul(c.into()))
+			.saturating_add(RocksDbWeight::get().reads(7_u64))
 			.saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(t.into())))
-			.saturating_add(RocksDbWeight::get().writes(6_u64))
+			.saturating_add(RocksDbWeight::get().writes(4_u64))
 			.saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(t.into())))
-			.saturating_add(Weight::from_parts(0, 5227).saturating_mul(t.into()))
+			.saturating_add(Weight::from_parts(0, 3458).saturating_mul(t.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:802 w:802)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:801 w:801)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:801 w:800)
+	/// Storage: `Contracts::CodeInfoOf` (r:800 w:800)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:801 w:0)
+	/// Storage: `Contracts::PristineCode` (r:800 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `Contracts::Nonce` (r:1 w:1)
+	/// Storage: `Contracts::Nonce` (r:1 w:0)
 	/// Proof: `Contracts::Nonce` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:803 w:803)
+	/// Storage: `Contracts::ContractInfoOf` (r:800 w:801)
+	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `System::Account` (r:802 w:802)
+	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:801 w:801)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// Storage: `Balances::Holds` (r:800 w:800)
-	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `Measured`)
 	/// The range of component `r` is `[1, 800]`.
 	fn seal_instantiate(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1281 + r * (255 ±0)`
-		//  Estimated: `9623 + r * (2731 ±0)`
-		// Minimum execution time: 661_757_000 picoseconds.
-		Weight::from_parts(676_799_000, 9623)
-			// Standard Error: 280_583
-			.saturating_add(Weight::from_parts(372_936_154, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(14_u64))
-			.saturating_add(RocksDbWeight::get().reads((6_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(7_u64))
-			.saturating_add(RocksDbWeight::get().writes((5_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2731).saturating_mul(r.into()))
+		//  Measured:  `1097 + r * (188 ±0)`
+		//  Estimated: `6990 + r * (2664 ±0)`
+		// Minimum execution time: 350_266_000 picoseconds.
+		Weight::from_parts(357_097_000, 6990)
+			// Standard Error: 248_976
+			.saturating_add(Weight::from_parts(336_010_851, 0).saturating_mul(r.into()))
+			.saturating_add(RocksDbWeight::get().reads(6_u64))
+			.saturating_add(RocksDbWeight::get().reads((5_u64).saturating_mul(r.into())))
+			.saturating_add(RocksDbWeight::get().writes(4_u64))
+			.saturating_add(RocksDbWeight::get().writes((4_u64).saturating_mul(r.into())))
+			.saturating_add(Weight::from_parts(0, 2664).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:3 w:3)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:2 w:2)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:2 w:1)
+	/// Storage: `Contracts::CodeInfoOf` (r:1 w:1)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:2 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `Contracts::Nonce` (r:1 w:1)
+	/// Storage: `Contracts::Nonce` (r:1 w:0)
 	/// Proof: `Contracts::Nonce` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:4 w:4)
+	/// Storage: `Contracts::ContractInfoOf` (r:1 w:2)
+	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `System::Account` (r:3 w:3)
+	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:2 w:2)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// Storage: `Balances::Holds` (r:1 w:1)
-	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `Measured`)
 	/// The range of component `t` is `[0, 1]`.
 	/// The range of component `i` is `[0, 983040]`.
 	/// The range of component `s` is `[0, 983040]`.
 	fn seal_instantiate_per_transfer_input_salt_byte(t: u32, i: u32, s: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1306 + t * (104 ±0)`
-		//  Estimated: `12214 + t * (2549 ±1)`
-		// Minimum execution time: 2_217_563_000 picoseconds.
-		Weight::from_parts(1_188_285_504, 12214)
-			// Standard Error: 12_397_366
-			.saturating_add(Weight::from_parts(10_833_274, 0).saturating_mul(t.into()))
+		//  Measured:  `760 + t * (104 ±0)`
+		//  Estimated: `6719 + t * (2549 ±1)`
+		// Minimum execution time: 1_866_294_000 picoseconds.
+		Weight::from_parts(900_604_598, 6719)
 			// Standard Error: 19
-			.saturating_add(Weight::from_parts(1_084, 0).saturating_mul(i.into()))
+			.saturating_add(Weight::from_parts(1_064, 0).saturating_mul(i.into()))
 			// Standard Error: 19
-			.saturating_add(Weight::from_parts(1_238, 0).saturating_mul(s.into()))
-			.saturating_add(RocksDbWeight::get().reads(19_u64))
+			.saturating_add(Weight::from_parts(1_194, 0).saturating_mul(s.into()))
+			.saturating_add(RocksDbWeight::get().reads(10_u64))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(t.into())))
-			.saturating_add(RocksDbWeight::get().writes(11_u64))
+			.saturating_add(RocksDbWeight::get().writes(7_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(t.into())))
 			.saturating_add(Weight::from_parts(0, 2549).saturating_mul(t.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_hash_sha2_256(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `865 + r * (8 ±0)`
-		//  Estimated: `9279 + r * (8 ±0)`
-		// Minimum execution time: 274_367_000 picoseconds.
-		Weight::from_parts(294_958_322, 9279)
-			// Standard Error: 1_239
-			.saturating_add(Weight::from_parts(388_976, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_058_000 picoseconds.
+		Weight::from_parts(11_642_576, 0)
+			// Standard Error: 191
+			.saturating_add(Weight::from_parts(266_977, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_sha2_256_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `873`
-		//  Estimated: `9286`
-		// Minimum execution time: 260_947_000 picoseconds.
-		Weight::from_parts(271_974_409, 9286)
-			// Standard Error: 1
-			.saturating_add(Weight::from_parts(1_087, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
-	/// The range of component `r` is `[0, 1600]`.
-	fn seal_hash_keccak_256(r: u32, ) -> Weight {
-		// Proof Size summary in bytes:
-		//  Measured:  `867 + r * (8 ±0)`
-		//  Estimated: `9284 + r * (8 ±0)`
-		// Minimum execution time: 256_505_000 picoseconds.
-		Weight::from_parts(288_574_804, 9284)
-			// Standard Error: 1_115
-			.saturating_add(Weight::from_parts(787_123, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 11_002_000 picoseconds.
+		Weight::from_parts(11_221_000, 0)
+			// Standard Error: 0
+			.saturating_add(Weight::from_parts(1_056, 0).saturating_mul(n.into()))
+	}
+	/// The range of component `r` is `[0, 1600]`.
+	fn seal_hash_keccak_256(r: u32, ) -> Weight {
+		// Proof Size summary in bytes:
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_152_000 picoseconds.
+		Weight::from_parts(10_803_041, 0)
+			// Standard Error: 266
+			.saturating_add(Weight::from_parts(686_345, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_keccak_256_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `875`
-		//  Estimated: `9292`
-		// Minimum execution time: 261_657_000 picoseconds.
-		Weight::from_parts(283_908_184, 9292)
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_955_000 picoseconds.
+		Weight::from_parts(4_617_649, 0)
 			// Standard Error: 1
-			.saturating_add(Weight::from_parts(3_345, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
+			.saturating_add(Weight::from_parts(3_337, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_hash_blake2_256(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `867 + r * (8 ±0)`
-		//  Estimated: `9286 + r * (8 ±0)`
-		// Minimum execution time: 262_311_000 picoseconds.
-		Weight::from_parts(295_454_976, 9286)
-			// Standard Error: 558
-			.saturating_add(Weight::from_parts(434_922, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_116_000 picoseconds.
+		Weight::from_parts(9_898_975, 0)
+			// Standard Error: 287
+			.saturating_add(Weight::from_parts(331_984, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_blake2_256_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `875`
-		//  Estimated: `9291`
-		// Minimum execution time: 269_002_000 picoseconds.
-		Weight::from_parts(280_531_070, 9291)
-			// Standard Error: 1
-			.saturating_add(Weight::from_parts(1_203, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_220_000 picoseconds.
+		Weight::from_parts(2_971_363, 0)
+			// Standard Error: 0
+			.saturating_add(Weight::from_parts(1_192, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_hash_blake2_128(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `867 + r * (8 ±0)`
-		//  Estimated: `9283 + r * (8 ±0)`
-		// Minimum execution time: 259_660_000 picoseconds.
-		Weight::from_parts(287_625_483, 9283)
-			// Standard Error: 524
-			.saturating_add(Weight::from_parts(456_200, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 8).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 8_962_000 picoseconds.
+		Weight::from_parts(9_956_006, 0)
+			// Standard Error: 282
+			.saturating_add(Weight::from_parts(336_862, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 1048576]`.
 	fn seal_hash_blake2_128_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `875`
-		//  Estimated: `9289`
-		// Minimum execution time: 263_305_000 picoseconds.
-		Weight::from_parts(278_483_877, 9289)
-			// Standard Error: 0
-			.saturating_add(Weight::from_parts(1_202, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 10_248_000 picoseconds.
+		Weight::from_parts(910_460, 0)
+			// Standard Error: 1
+			.saturating_add(Weight::from_parts(1_201, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `n` is `[0, 125697]`.
 	fn seal_sr25519_verify_per_byte(n: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `1000 + n * (1 ±0)`
-		//  Estimated: `9412 + n * (1 ±0)`
-		// Minimum execution time: 329_511_000 picoseconds.
-		Weight::from_parts(341_570_880, 9412)
-			// Standard Error: 11
-			.saturating_add(Weight::from_parts(5_914, 0).saturating_mul(n.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 53_691_000 picoseconds.
+		Weight::from_parts(53_572_040, 0)
+			// Standard Error: 8
+			.saturating_add(Weight::from_parts(4_636, 0).saturating_mul(n.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 160]`.
 	fn seal_sr25519_verify(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `808 + r * (112 ±0)`
-		//  Estimated: `9226 + r * (112 ±0)`
-		// Minimum execution time: 269_103_000 picoseconds.
-		Weight::from_parts(317_360_842, 9226)
-			// Standard Error: 16_463
-			.saturating_add(Weight::from_parts(45_965_726, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 112).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_019_000 picoseconds.
+		Weight::from_parts(21_443_365, 0)
+			// Standard Error: 7_796
+			.saturating_add(Weight::from_parts(40_945_218, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 160]`.
 	fn seal_ecdsa_recover(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `910 + r * (76 ±0)`
-		//  Estimated: `9279 + r * (77 ±0)`
-		// Minimum execution time: 281_685_000 picoseconds.
-		Weight::from_parts(339_617_056, 9279)
-			// Standard Error: 15_672
-			.saturating_add(Weight::from_parts(45_907_026, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 77).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_029_000 picoseconds.
+		Weight::from_parts(28_109_572, 0)
+			// Standard Error: 9_684
+			.saturating_add(Weight::from_parts(45_446_659, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 160]`.
 	fn seal_ecdsa_to_eth_address(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `880 + r * (42 ±0)`
-		//  Estimated: `9294 + r * (42 ±0)`
-		// Minimum execution time: 265_009_000 picoseconds.
-		Weight::from_parts(304_895_744, 9294)
-			// Standard Error: 7_640
-			.saturating_add(Weight::from_parts(12_117_411, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 42).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_204_000 picoseconds.
+		Weight::from_parts(11_165_863, 0)
+			// Standard Error: 3_380
+			.saturating_add(Weight::from_parts(11_640_284, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
 	/// Storage: `Contracts::CodeInfoOf` (r:1536 w:1536)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1536 w:0)
+	/// Storage: `Contracts::PristineCode` (r:1535 w:0)
 	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:1538 w:1538)
+	/// Storage: `Parameters::Parameters` (r:2 w:0)
+	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
+	/// Storage: `System::EventTopics` (r:1537 w:1537)
 	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_set_code_hash(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `0 + r * (965 ±0)`
-		//  Estimated: `9285 + r * (3090 ±7)`
-		// Minimum execution time: 281_110_000 picoseconds.
-		Weight::from_parts(283_554_000, 9285)
-			// Standard Error: 47_136
-			.saturating_add(Weight::from_parts(27_448_052, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `0 + r * (926 ±0)`
+		//  Estimated: `8969 + r * (3047 ±10)`
+		// Minimum execution time: 9_285_000 picoseconds.
+		Weight::from_parts(9_384_000, 8969)
+			// Standard Error: 43_985
+			.saturating_add(Weight::from_parts(25_318_514, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 3090).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 3047).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:33 w:32)
+	/// Storage: `Contracts::CodeInfoOf` (r:32 w:32)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 32]`.
 	fn lock_delegate_dependency(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `937 + r * (131 ±0)`
-		//  Estimated: `9346 + r * (2607 ±0)`
-		// Minimum execution time: 274_312_000 picoseconds.
-		Weight::from_parts(297_853_480, 9346)
-			// Standard Error: 31_172
-			.saturating_add(Weight::from_parts(6_829_169, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `274 + r * (78 ±0)`
+		//  Estimated: `1265 + r * (2553 ±0)`
+		// Minimum execution time: 9_204_000 picoseconds.
+		Weight::from_parts(15_422_169, 1265)
+			// Standard Error: 10_310
+			.saturating_add(Weight::from_parts(5_137_638, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r.into())))
-			.saturating_add(Weight::from_parts(0, 2607).saturating_mul(r.into()))
+			.saturating_add(Weight::from_parts(0, 2553).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `MaxEncodedLen`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::CodeInfoOf` (r:33 w:32)
+	/// Storage: `Contracts::CodeInfoOf` (r:32 w:32)
 	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `MaxEncodedLen`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `MaxEncodedLen`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `MaxEncodedLen`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 32]`.
 	fn unlock_delegate_dependency(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `972 + r * (184 ±0)`
-		//  Estimated: `129453 + r * (2568 ±0)`
-		// Minimum execution time: 271_607_000 picoseconds.
-		Weight::from_parts(299_008_266, 129453)
-			// Standard Error: 25_085
-			.saturating_add(Weight::from_parts(5_828_791, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
+		//  Measured:  `275 + r * (78 ±0)`
+		//  Estimated: `990 + r * (2568 ±0)`
+		// Minimum execution time: 9_103_000 picoseconds.
+		Weight::from_parts(15_303_019, 990)
+			// Standard Error: 9_932
+			.saturating_add(Weight::from_parts(4_311_398, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r.into())))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r.into())))
 			.saturating_add(Weight::from_parts(0, 2568).saturating_mul(r.into()))
 	}
@@ -4112,82 +2629,45 @@ impl WeightInfo for () {
 		// Proof Size summary in bytes:
 		//  Measured:  `861 + r * (3 ±0)`
 		//  Estimated: `9282 + r * (3 ±0)`
-		// Minimum execution time: 275_135_000 picoseconds.
-		Weight::from_parts(289_363_447, 9282)
-			// Standard Error: 501
-			.saturating_add(Weight::from_parts(171_024, 0).saturating_mul(r.into()))
+		// Minimum execution time: 256_302_000 picoseconds.
+		Weight::from_parts(285_379_160, 9282)
+			// Standard Error: 420
+			.saturating_add(Weight::from_parts(167_664, 0).saturating_mul(r.into()))
 			.saturating_add(RocksDbWeight::get().reads(11_u64))
 			.saturating_add(RocksDbWeight::get().writes(3_u64))
 			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_account_reentrance_count(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `2112 + r * (39 ±0)`
-		//  Estimated: `10377 + r * (40 ±0)`
-		// Minimum execution time: 279_752_000 picoseconds.
-		Weight::from_parts(322_774_890, 10377)
-			// Standard Error: 867
-			.saturating_add(Weight::from_parts(262_474, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(11_u64))
-			.saturating_add(RocksDbWeight::get().writes(3_u64))
-			.saturating_add(Weight::from_parts(0, 40).saturating_mul(r.into()))
+		//  Measured:  `0`
+		//  Estimated: `0`
+		// Minimum execution time: 9_796_000 picoseconds.
+		Weight::from_parts(11_892_860, 0)
+			// Standard Error: 123
+			.saturating_add(Weight::from_parts(80_644, 0).saturating_mul(r.into()))
 	}
-	/// Storage: `Contracts::MigrationInProgress` (r:1 w:0)
-	/// Proof: `Contracts::MigrationInProgress` (`max_values`: Some(1), `max_size`: Some(1026), added: 1521, mode: `Measured`)
-	/// Storage: `System::Account` (r:1 w:0)
-	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `Measured`)
-	/// Storage: `Parameters::Parameters` (r:3 w:0)
-	/// Proof: `Parameters::Parameters` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `Measured`)
-	/// Storage: `Contracts::ContractInfoOf` (r:1 w:1)
-	/// Proof: `Contracts::ContractInfoOf` (`max_values`: None, `max_size`: Some(1795), added: 4270, mode: `Measured`)
-	/// Storage: `Contracts::CodeInfoOf` (r:1 w:0)
-	/// Proof: `Contracts::CodeInfoOf` (`max_values`: None, `max_size`: Some(93), added: 2568, mode: `Measured`)
-	/// Storage: `Contracts::PristineCode` (r:1 w:0)
-	/// Proof: `Contracts::PristineCode` (`max_values`: None, `max_size`: Some(125988), added: 128463, mode: `Measured`)
-	/// Storage: `Timestamp::Now` (r:1 w:0)
-	/// Proof: `Timestamp::Now` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `Contracts::Nonce` (r:1 w:1)
+	/// Storage: `Contracts::Nonce` (r:1 w:0)
 	/// Proof: `Contracts::Nonce` (`max_values`: Some(1), `max_size`: Some(8), added: 503, mode: `Measured`)
-	/// Storage: `System::EventTopics` (r:2 w:2)
-	/// Proof: `System::EventTopics` (`max_values`: None, `max_size`: None, mode: `Measured`)
 	/// The range of component `r` is `[0, 1600]`.
 	fn seal_instantiation_nonce(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
-		//  Measured:  `864 + r * (3 ±0)`
-		//  Estimated: `9279 + r * (3 ±0)`
-		// Minimum execution time: 263_398_000 picoseconds.
-		Weight::from_parts(291_372_000, 9279)
-			// Standard Error: 448
-			.saturating_add(Weight::from_parts(151_931, 0).saturating_mul(r.into()))
-			.saturating_add(RocksDbWeight::get().reads(12_u64))
-			.saturating_add(RocksDbWeight::get().writes(4_u64))
-			.saturating_add(Weight::from_parts(0, 3).saturating_mul(r.into()))
+		//  Measured:  `219`
+		//  Estimated: `1704`
+		// Minimum execution time: 9_136_000 picoseconds.
+		Weight::from_parts(12_974_461, 1704)
+			// Standard Error: 72
+			.saturating_add(Weight::from_parts(75_956, 0).saturating_mul(r.into()))
+			.saturating_add(RocksDbWeight::get().reads(1_u64))
 	}
 	/// The range of component `r` is `[0, 5000]`.
 	fn instr_i64_load_store(r: u32, ) -> Weight {
 		// Proof Size summary in bytes:
 		//  Measured:  `0`
 		//  Estimated: `0`
-		// Minimum execution time: 838_000 picoseconds.
-		Weight::from_parts(670_057, 0)
-			// Standard Error: 17
-			.saturating_add(Weight::from_parts(15_037, 0).saturating_mul(r.into()))
+		// Minimum execution time: 887_000 picoseconds.
+		Weight::from_parts(876_155, 0)
+			// Standard Error: 22
+			.saturating_add(Weight::from_parts(14_839, 0).saturating_mul(r.into()))
 	}
 }