// Template adopted from https://github.com/paritytech/substrate/blob/master/.maintain/frame-weight-template.hbs

//! Autogenerated weights for pallet_app_promotion
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 29.0.0
//! DATE: 2023-11-29, STEPS: `50`, REPEAT: `80`, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! WORST CASE MAP SIZE: `1000000`
//! HOSTNAME: `bench-host`, CPU: `Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz`
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024

// Executed Command:
// ./target/production/unique-collator
// benchmark
// pallet
// --pallet
// pallet-app-promotion
// --wasm-execution
// compiled
// --extrinsic
// *
// --template=.maintain/frame-weight-template.hbs
// --steps=50
// --repeat=80
// --heap-pages=4096
// --output=./pallets/app-promotion/src/weights.rs

#![cfg_attr(rustfmt, rustfmt_skip)]
#![allow(unused_parens)]
#![allow(unused_imports)]

use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}};
use sp_std::marker::PhantomData;

/// Weight functions needed for pallet_app_promotion.
pub trait WeightInfo {
	fn on_initialize(b: u32, ) -> Weight;
	fn set_admin_address() -> Weight;
	fn payout_stakers(b: u32, ) -> Weight;
	fn stake() -> Weight;
	fn unstake_all() -> Weight;
	fn unstake_partial() -> Weight;
	fn sponsor_collection() -> Weight;
	fn stop_sponsoring_collection() -> Weight;
	fn sponsor_contract() -> Weight;
	fn stop_sponsoring_contract() -> Weight;
}

/// Weights for pallet_app_promotion using the Substrate node and recommended hardware.
pub struct SubstrateWeight<T>(PhantomData<T>);
impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
	/// Storage: `Maintenance::Enabled` (r:1 w:0)
	/// Proof: `Maintenance::Enabled` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::PendingUnstake` (r:1 w:1)
	/// Proof: `AppPromotion::PendingUnstake` (`max_values`: None, `max_size`: Some(157), added: 2632, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Freezes` (r:3 w:3)
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(369), added: 2844, mode: `MaxEncodedLen`)
	/// Storage: `System::Account` (r:3 w:3)
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Locks` (r:3 w:0)
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
	/// The range of component `b` is `[0, 3]`.
	fn on_initialize(b: u32, ) -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `222 + b * (285 ±0)`
		//  Estimated: `3622 + b * (3774 ±0)`
		// Minimum execution time: 5_407_000 picoseconds.
		Weight::from_parts(6_316_294, 3622)
			// Standard Error: 21_161
			.saturating_add(Weight::from_parts(19_941_940, 0).saturating_mul(b.into()))
			.saturating_add(T::DbWeight::get().reads(2_u64))
			.saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(b.into())))
			.saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(b.into())))
			.saturating_add(Weight::from_parts(0, 3774).saturating_mul(b.into()))
	}
	/// Storage: `AppPromotion::Admin` (r:0 w:1)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	fn set_admin_address() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `0`
		//  Estimated: `0`
		// Minimum execution time: 5_898_000 picoseconds.
		Weight::from_parts(6_096_000, 0)
			.saturating_add(T::DbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `ParachainSystem::ValidationData` (r:1 w:0)
	/// Proof: `ParachainSystem::ValidationData` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
	/// Storage: `AppPromotion::PreviousCalculatedRecord` (r:1 w:1)
	/// Proof: `AppPromotion::PreviousCalculatedRecord` (`max_values`: Some(1), `max_size`: Some(36), added: 531, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::Staked` (r:1001 w:1000)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `System::Account` (r:101 w:101)
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Freezes` (r:100 w:100)
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(369), added: 2844, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Locks` (r:100 w:0)
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	/// The range of component `b` is `[1, 100]`.
	fn payout_stakers(b: u32, ) -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `564 + b * (641 ±0)`
		//  Estimated: `3593 + b * (25550 ±0)`
		// Minimum execution time: 126_261_000 picoseconds.
		Weight::from_parts(127_683_000, 3593)
			// Standard Error: 28_796
			.saturating_add(Weight::from_parts(95_359_080, 0).saturating_mul(b.into()))
			.saturating_add(T::DbWeight::get().reads(7_u64))
			.saturating_add(T::DbWeight::get().reads((13_u64).saturating_mul(b.into())))
			.saturating_add(T::DbWeight::get().writes(3_u64))
			.saturating_add(T::DbWeight::get().writes((12_u64).saturating_mul(b.into())))
			.saturating_add(Weight::from_parts(0, 25550).saturating_mul(b.into()))
	}
	/// Storage: `AppPromotion::StakesPerAccount` (r:1 w:1)
	/// Proof: `AppPromotion::StakesPerAccount` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`)
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `System::Account` (r:1 w:1)
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Freezes` (r:1 w:1)
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(369), added: 2844, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Locks` (r:1 w:0)
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
	/// Storage: `ParachainSystem::ValidationData` (r:1 w:0)
	/// Proof: `ParachainSystem::ValidationData` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
	/// Storage: `AppPromotion::Staked` (r:1 w:1)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	fn stake() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `389`
		//  Estimated: `4764`
		// Minimum execution time: 39_259_000 picoseconds.
		Weight::from_parts(39_760_000, 4764)
			.saturating_add(T::DbWeight::get().reads(8_u64))
			.saturating_add(T::DbWeight::get().writes(5_u64))
	}
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::PendingUnstake` (r:1 w:1)
	/// Proof: `AppPromotion::PendingUnstake` (`max_values`: None, `max_size`: Some(157), added: 2632, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::Staked` (r:11 w:10)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::StakesPerAccount` (r:0 w:1)
	/// Proof: `AppPromotion::StakesPerAccount` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`)
	fn unstake_all() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `829`
		//  Estimated: `29095`
		// Minimum execution time: 57_058_000 picoseconds.
		Weight::from_parts(58_034_000, 29095)
			.saturating_add(T::DbWeight::get().reads(14_u64))
			.saturating_add(T::DbWeight::get().writes(13_u64))
	}
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::PendingUnstake` (r:1 w:1)
	/// Proof: `AppPromotion::PendingUnstake` (`max_values`: None, `max_size`: Some(157), added: 2632, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::Staked` (r:11 w:10)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::StakesPerAccount` (r:1 w:1)
	/// Proof: `AppPromotion::StakesPerAccount` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`)
	fn unstake_partial() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `829`
		//  Estimated: `29095`
		// Minimum execution time: 75_191_000 picoseconds.
		Weight::from_parts(76_053_000, 29095)
			.saturating_add(T::DbWeight::get().reads(15_u64))
			.saturating_add(T::DbWeight::get().writes(13_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `Common::CollectionById` (r:1 w:1)
	/// Proof: `Common::CollectionById` (`max_values`: None, `max_size`: Some(860), added: 3335, mode: `MaxEncodedLen`)
	fn sponsor_collection() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `1060`
		//  Estimated: `4325`
		// Minimum execution time: 19_565_000 picoseconds.
		Weight::from_parts(19_990_000, 4325)
			.saturating_add(T::DbWeight::get().reads(2_u64))
			.saturating_add(T::DbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `Common::CollectionById` (r:1 w:1)
	/// Proof: `Common::CollectionById` (`max_values`: None, `max_size`: Some(860), added: 3335, mode: `MaxEncodedLen`)
	fn stop_sponsoring_collection() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `1092`
		//  Estimated: `4325`
		// Minimum execution time: 19_110_000 picoseconds.
		Weight::from_parts(19_499_000, 4325)
			.saturating_add(T::DbWeight::get().reads(2_u64))
			.saturating_add(T::DbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `EvmContractHelpers::Sponsoring` (r:0 w:1)
	/// Proof: `EvmContractHelpers::Sponsoring` (`max_values`: None, `max_size`: Some(62), added: 2537, mode: `MaxEncodedLen`)
	fn sponsor_contract() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `198`
		//  Estimated: `1517`
		// Minimum execution time: 16_414_000 picoseconds.
		Weight::from_parts(16_804_000, 1517)
			.saturating_add(T::DbWeight::get().reads(1_u64))
			.saturating_add(T::DbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `EvmContractHelpers::Sponsoring` (r:1 w:1)
	/// Proof: `EvmContractHelpers::Sponsoring` (`max_values`: None, `max_size`: Some(62), added: 2537, mode: `MaxEncodedLen`)
	fn stop_sponsoring_contract() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `396`
		//  Estimated: `3527`
		// Minimum execution time: 15_838_000 picoseconds.
		Weight::from_parts(16_255_000, 3527)
			.saturating_add(T::DbWeight::get().reads(2_u64))
			.saturating_add(T::DbWeight::get().writes(1_u64))
	}
}

// For backwards compatibility and tests
impl WeightInfo for () {
	/// Storage: `Maintenance::Enabled` (r:1 w:0)
	/// Proof: `Maintenance::Enabled` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::PendingUnstake` (r:1 w:1)
	/// Proof: `AppPromotion::PendingUnstake` (`max_values`: None, `max_size`: Some(157), added: 2632, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Freezes` (r:3 w:3)
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(369), added: 2844, mode: `MaxEncodedLen`)
	/// Storage: `System::Account` (r:3 w:3)
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Locks` (r:3 w:0)
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
	/// The range of component `b` is `[0, 3]`.
	fn on_initialize(b: u32, ) -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `222 + b * (285 ±0)`
		//  Estimated: `3622 + b * (3774 ±0)`
		// Minimum execution time: 5_407_000 picoseconds.
		Weight::from_parts(6_316_294, 3622)
			// Standard Error: 21_161
			.saturating_add(Weight::from_parts(19_941_940, 0).saturating_mul(b.into()))
			.saturating_add(RocksDbWeight::get().reads(2_u64))
			.saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(b.into())))
			.saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(b.into())))
			.saturating_add(Weight::from_parts(0, 3774).saturating_mul(b.into()))
	}
	/// Storage: `AppPromotion::Admin` (r:0 w:1)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	fn set_admin_address() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `0`
		//  Estimated: `0`
		// Minimum execution time: 5_898_000 picoseconds.
		Weight::from_parts(6_096_000, 0)
			.saturating_add(RocksDbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `ParachainSystem::ValidationData` (r:1 w:0)
	/// Proof: `ParachainSystem::ValidationData` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
	/// Storage: `AppPromotion::PreviousCalculatedRecord` (r:1 w:1)
	/// Proof: `AppPromotion::PreviousCalculatedRecord` (`max_values`: Some(1), `max_size`: Some(36), added: 531, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::Staked` (r:1001 w:1000)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `System::Account` (r:101 w:101)
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Freezes` (r:100 w:100)
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(369), added: 2844, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Locks` (r:100 w:0)
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	/// The range of component `b` is `[1, 100]`.
	fn payout_stakers(b: u32, ) -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `564 + b * (641 ±0)`
		//  Estimated: `3593 + b * (25550 ±0)`
		// Minimum execution time: 126_261_000 picoseconds.
		Weight::from_parts(127_683_000, 3593)
			// Standard Error: 28_796
			.saturating_add(Weight::from_parts(95_359_080, 0).saturating_mul(b.into()))
			.saturating_add(RocksDbWeight::get().reads(7_u64))
			.saturating_add(RocksDbWeight::get().reads((13_u64).saturating_mul(b.into())))
			.saturating_add(RocksDbWeight::get().writes(3_u64))
			.saturating_add(RocksDbWeight::get().writes((12_u64).saturating_mul(b.into())))
			.saturating_add(Weight::from_parts(0, 25550).saturating_mul(b.into()))
	}
	/// Storage: `AppPromotion::StakesPerAccount` (r:1 w:1)
	/// Proof: `AppPromotion::StakesPerAccount` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`)
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `System::Account` (r:1 w:1)
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Freezes` (r:1 w:1)
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(369), added: 2844, mode: `MaxEncodedLen`)
	/// Storage: `Balances::Locks` (r:1 w:0)
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
	/// Storage: `ParachainSystem::ValidationData` (r:1 w:0)
	/// Proof: `ParachainSystem::ValidationData` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
	/// Storage: `AppPromotion::Staked` (r:1 w:1)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	fn stake() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `389`
		//  Estimated: `4764`
		// Minimum execution time: 39_259_000 picoseconds.
		Weight::from_parts(39_760_000, 4764)
			.saturating_add(RocksDbWeight::get().reads(8_u64))
			.saturating_add(RocksDbWeight::get().writes(5_u64))
	}
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::PendingUnstake` (r:1 w:1)
	/// Proof: `AppPromotion::PendingUnstake` (`max_values`: None, `max_size`: Some(157), added: 2632, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::Staked` (r:11 w:10)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::StakesPerAccount` (r:0 w:1)
	/// Proof: `AppPromotion::StakesPerAccount` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`)
	fn unstake_all() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `829`
		//  Estimated: `29095`
		// Minimum execution time: 57_058_000 picoseconds.
		Weight::from_parts(58_034_000, 29095)
			.saturating_add(RocksDbWeight::get().reads(14_u64))
			.saturating_add(RocksDbWeight::get().writes(13_u64))
	}
	/// Storage: `Configuration::AppPromomotionConfigurationOverride` (r:1 w:0)
	/// Proof: `Configuration::AppPromomotionConfigurationOverride` (`max_values`: Some(1), `max_size`: Some(17), added: 512, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::PendingUnstake` (r:1 w:1)
	/// Proof: `AppPromotion::PendingUnstake` (`max_values`: None, `max_size`: Some(157), added: 2632, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::Staked` (r:11 w:10)
	/// Proof: `AppPromotion::Staked` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::TotalStaked` (r:1 w:1)
	/// Proof: `AppPromotion::TotalStaked` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
	/// Storage: `AppPromotion::StakesPerAccount` (r:1 w:1)
	/// Proof: `AppPromotion::StakesPerAccount` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`)
	fn unstake_partial() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `829`
		//  Estimated: `29095`
		// Minimum execution time: 75_191_000 picoseconds.
		Weight::from_parts(76_053_000, 29095)
			.saturating_add(RocksDbWeight::get().reads(15_u64))
			.saturating_add(RocksDbWeight::get().writes(13_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `Common::CollectionById` (r:1 w:1)
	/// Proof: `Common::CollectionById` (`max_values`: None, `max_size`: Some(860), added: 3335, mode: `MaxEncodedLen`)
	fn sponsor_collection() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `1060`
		//  Estimated: `4325`
		// Minimum execution time: 19_565_000 picoseconds.
		Weight::from_parts(19_990_000, 4325)
			.saturating_add(RocksDbWeight::get().reads(2_u64))
			.saturating_add(RocksDbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `Common::CollectionById` (r:1 w:1)
	/// Proof: `Common::CollectionById` (`max_values`: None, `max_size`: Some(860), added: 3335, mode: `MaxEncodedLen`)
	fn stop_sponsoring_collection() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `1092`
		//  Estimated: `4325`
		// Minimum execution time: 19_110_000 picoseconds.
		Weight::from_parts(19_499_000, 4325)
			.saturating_add(RocksDbWeight::get().reads(2_u64))
			.saturating_add(RocksDbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `EvmContractHelpers::Sponsoring` (r:0 w:1)
	/// Proof: `EvmContractHelpers::Sponsoring` (`max_values`: None, `max_size`: Some(62), added: 2537, mode: `MaxEncodedLen`)
	fn sponsor_contract() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `198`
		//  Estimated: `1517`
		// Minimum execution time: 16_414_000 picoseconds.
		Weight::from_parts(16_804_000, 1517)
			.saturating_add(RocksDbWeight::get().reads(1_u64))
			.saturating_add(RocksDbWeight::get().writes(1_u64))
	}
	/// Storage: `AppPromotion::Admin` (r:1 w:0)
	/// Proof: `AppPromotion::Admin` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
	/// Storage: `EvmContractHelpers::Sponsoring` (r:1 w:1)
	/// Proof: `EvmContractHelpers::Sponsoring` (`max_values`: None, `max_size`: Some(62), added: 2537, mode: `MaxEncodedLen`)
	fn stop_sponsoring_contract() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `396`
		//  Estimated: `3527`
		// Minimum execution time: 15_838_000 picoseconds.
		Weight::from_parts(16_255_000, 3527)
			.saturating_add(RocksDbWeight::get().reads(2_u64))
			.saturating_add(RocksDbWeight::get().writes(1_u64))
	}
}

