
//! Autogenerated weights for `pallet_transfer_allowlist`
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
//! DATE: 2024-06-24, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! WORST CASE MAP SIZE: `1000000`
//! HOSTNAME: `runner`, CPU: `AMD EPYC 7763 64-Core Processor`
//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("altair-local")`, DB CACHE: 1024

// Executed Command:
// target/release/centrifuge-chain
// benchmark
// pallet
// --chain=altair-local
// --steps=50
// --repeat=20
// --pallet=pallet_transfer_allowlist
// --extrinsic=*
// --wasm-execution=compiled
// --heap-pages=4096
// --output=/tmp/runtime/altair/src/weights/pallet_transfer_allowlist.rs

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

use frame_support::{traits::Get, weights::Weight};
use core::marker::PhantomData;

/// Weight functions for `pallet_transfer_allowlist`.
pub struct WeightInfo<T>(PhantomData<T>);
impl<T: frame_system::Config> pallet_transfer_allowlist::WeightInfo for WeightInfo<T> {
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	/// Storage: `TransferAllowList::AccountCurrencyTransferAllowance` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferAllowance` (`max_values`: None, `max_size`: Some(701), added: 3176, mode: `MaxEncodedLen`)
	/// Storage: `Fees::FeeBalances` (r:1 w:0)
	/// Proof: `Fees::FeeBalances` (`max_values`: None, `max_size`: Some(48), added: 2523, 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::Holds` (r:1 w:1)
	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(103), added: 2578, mode: `MaxEncodedLen`)
	fn add_transfer_allowance_no_existing_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `570`
		//  Estimated: `4166`
		// Minimum execution time: 82_444_000 picoseconds.
		Weight::from_parts(84_639_000, 0)
			.saturating_add(Weight::from_parts(0, 4166))
			.saturating_add(T::DbWeight::get().reads(5))
			.saturating_add(T::DbWeight::get().writes(4))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	/// Storage: `TransferAllowList::AccountCurrencyTransferAllowance` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferAllowance` (`max_values`: None, `max_size`: Some(701), added: 3176, mode: `MaxEncodedLen`)
	/// Storage: `Fees::FeeBalances` (r:1 w:0)
	/// Proof: `Fees::FeeBalances` (`max_values`: None, `max_size`: Some(48), added: 2523, 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::Holds` (r:1 w:1)
	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(103), added: 2578, mode: `MaxEncodedLen`)
	fn add_transfer_allowance_existing_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `664`
		//  Estimated: `4166`
		// Minimum execution time: 86_321_000 picoseconds.
		Weight::from_parts(86_882_000, 0)
			.saturating_add(Weight::from_parts(0, 4166))
			.saturating_add(T::DbWeight::get().reads(5))
			.saturating_add(T::DbWeight::get().writes(4))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn add_allowance_delay_no_existing_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `246`
		//  Estimated: `3557`
		// Minimum execution time: 15_980_000 picoseconds.
		Weight::from_parts(16_430_000, 0)
			.saturating_add(Weight::from_parts(0, 3557))
			.saturating_add(T::DbWeight::get().reads(1))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn add_allowance_delay_existing_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `370`
		//  Estimated: `3557`
		// Minimum execution time: 18_805_000 picoseconds.
		Weight::from_parts(19_747_000, 0)
			.saturating_add(Weight::from_parts(0, 3557))
			.saturating_add(T::DbWeight::get().reads(1))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn toggle_allowance_delay_once_future_modifiable() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `340`
		//  Estimated: `3557`
		// Minimum execution time: 18_544_000 picoseconds.
		Weight::from_parts(19_096_000, 0)
			.saturating_add(Weight::from_parts(0, 3557))
			.saturating_add(T::DbWeight::get().reads(1))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn update_allowance_delay() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `344`
		//  Estimated: `3557`
		// Minimum execution time: 18_394_000 picoseconds.
		Weight::from_parts(18_866_000, 0)
			.saturating_add(Weight::from_parts(0, 3557))
			.saturating_add(T::DbWeight::get().reads(1))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn purge_allowance_delay_no_remaining_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `344`
		//  Estimated: `3557`
		// Minimum execution time: 18_234_000 picoseconds.
		Weight::from_parts(18_715_000, 0)
			.saturating_add(Weight::from_parts(0, 3557))
			.saturating_add(T::DbWeight::get().reads(1))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn purge_allowance_delay_remaining_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `378`
		//  Estimated: `3557`
		// Minimum execution time: 19_095_000 picoseconds.
		Weight::from_parts(19_426_000, 0)
			.saturating_add(Weight::from_parts(0, 3557))
			.saturating_add(T::DbWeight::get().reads(1))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:0)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	/// Storage: `TransferAllowList::AccountCurrencyTransferAllowance` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferAllowance` (`max_values`: None, `max_size`: Some(701), added: 3176, mode: `MaxEncodedLen`)
	fn remove_transfer_allowance_delay_present() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `473`
		//  Estimated: `4166`
		// Minimum execution time: 30_487_000 picoseconds.
		Weight::from_parts(31_159_000, 0)
			.saturating_add(Weight::from_parts(0, 4166))
			.saturating_add(T::DbWeight::get().reads(2))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:0)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	/// Storage: `TransferAllowList::AccountCurrencyTransferAllowance` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferAllowance` (`max_values`: None, `max_size`: Some(701), added: 3176, mode: `MaxEncodedLen`)
	fn remove_transfer_allowance_no_delay() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `469`
		//  Estimated: `4166`
		// Minimum execution time: 30_196_000 picoseconds.
		Weight::from_parts(31_179_000, 0)
			.saturating_add(Weight::from_parts(0, 4166))
			.saturating_add(T::DbWeight::get().reads(2))
			.saturating_add(T::DbWeight::get().writes(1))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferAllowance` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferAllowance` (`max_values`: None, `max_size`: Some(701), added: 3176, mode: `MaxEncodedLen`)
	/// Storage: `Fees::FeeBalances` (r:1 w:0)
	/// Proof: `Fees::FeeBalances` (`max_values`: None, `max_size`: Some(48), added: 2523, 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::Holds` (r:1 w:1)
	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(103), added: 2578, mode: `MaxEncodedLen`)
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn purge_transfer_allowance_no_remaining_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `848`
		//  Estimated: `4166`
		// Minimum execution time: 80_571_000 picoseconds.
		Weight::from_parts(82_384_000, 0)
			.saturating_add(Weight::from_parts(0, 4166))
			.saturating_add(T::DbWeight::get().reads(5))
			.saturating_add(T::DbWeight::get().writes(4))
	}
	/// Storage: `TransferAllowList::AccountCurrencyTransferAllowance` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferAllowance` (`max_values`: None, `max_size`: Some(701), added: 3176, mode: `MaxEncodedLen`)
	/// Storage: `Fees::FeeBalances` (r:1 w:0)
	/// Proof: `Fees::FeeBalances` (`max_values`: None, `max_size`: Some(48), added: 2523, 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::Holds` (r:1 w:1)
	/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(103), added: 2578, mode: `MaxEncodedLen`)
	/// Storage: `TransferAllowList::AccountCurrencyTransferCountDelay` (r:1 w:1)
	/// Proof: `TransferAllowList::AccountCurrencyTransferCountDelay` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
	fn purge_transfer_allowance_remaining_metadata() -> Weight {
		// Proof Size summary in bytes:
		//  Measured:  `887`
		//  Estimated: `4166`
		// Minimum execution time: 79_839_000 picoseconds.
		Weight::from_parts(81_713_000, 0)
			.saturating_add(Weight::from_parts(0, 4166))
			.saturating_add(T::DbWeight::get().reads(5))
			.saturating_add(T::DbWeight::get().writes(4))
	}
}
