1
// Copyright (C) Moondance Labs Ltd.
2
// This file is part of Tanssi.
3

            
4
// Tanssi is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8

            
9
// Tanssi is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
// GNU General Public License for more details.
13

            
14
// You should have received a copy of the GNU General Public License
15
// along with Tanssi.  If not, see <http://www.gnu.org/licenses/>
16

            
17

            
18
//! Autogenerated weights for pallet_multisig
19
//!
20
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
21
//! DATE: 2025-05-02, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
22
//! WORST CASE MAP SIZE: `1000000`
23
//! HOSTNAME: `benchmark-1`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz`
24
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("dancelight-dev"), DB CACHE: 1024
25

            
26
// Executed Command:
27
// target/release/tanssi-relay
28
// benchmark
29
// pallet
30
// --execution=wasm
31
// --wasm-execution=compiled
32
// --pallet
33
// pallet_multisig
34
// --extrinsic
35
// *
36
// --chain=dancelight-dev
37
// --steps
38
// 50
39
// --repeat
40
// 20
41
// --template=benchmarking/frame-weight-runtime-template.hbs
42
// --json-file
43
// raw.json
44
// --output
45
// tmp/dancelight_weights/pallet_multisig.rs
46

            
47
#![cfg_attr(rustfmt, rustfmt_skip)]
48
#![allow(unused_parens)]
49
#![allow(unused_imports)]
50

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

            
54
/// Weights for pallet_multisig using the Substrate node and recommended hardware.
55
pub struct SubstrateWeight<T>(PhantomData<T>);
56
impl<T: frame_system::Config> pallet_multisig::WeightInfo for SubstrateWeight<T> {
57
	/// The range of component `z` is `[0, 10000]`.
58
	fn as_multi_threshold_1(z: u32, ) -> Weight {
59
		// Proof Size summary in bytes:
60
		//  Measured:  `0`
61
		//  Estimated: `0`
62
		// Minimum execution time: 18_786_000 picoseconds.
63
		Weight::from_parts(19_766_035, 0)
64
			// Standard Error: 2
65
			.saturating_add(Weight::from_parts(531, 0).saturating_mul(z.into()))
66
	}
67
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
68
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
69
	/// The range of component `s` is `[2, 100]`.
70
	/// The range of component `z` is `[0, 10000]`.
71
	fn as_multi_create(s: u32, z: u32, ) -> Weight {
72
		// Proof Size summary in bytes:
73
		//  Measured:  `367 + s * (2 ±0)`
74
		//  Estimated: `6811`
75
		// Minimum execution time: 58_672_000 picoseconds.
76
		Weight::from_parts(46_780_397, 6811)
77
			// Standard Error: 949
78
			.saturating_add(Weight::from_parts(136_612, 0).saturating_mul(s.into()))
79
			// Standard Error: 9
80
			.saturating_add(Weight::from_parts(1_963, 0).saturating_mul(z.into()))
81
			.saturating_add(T::DbWeight::get().reads(1_u64))
82
			.saturating_add(T::DbWeight::get().writes(1_u64))
83
	}
84
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
85
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
86
	/// The range of component `s` is `[3, 100]`.
87
	/// The range of component `z` is `[0, 10000]`.
88
	fn as_multi_approve(s: u32, z: u32, ) -> Weight {
89
		// Proof Size summary in bytes:
90
		//  Measured:  `386`
91
		//  Estimated: `6811`
92
		// Minimum execution time: 37_998_000 picoseconds.
93
		Weight::from_parts(28_056_337, 6811)
94
			// Standard Error: 789
95
			.saturating_add(Weight::from_parts(116_909, 0).saturating_mul(s.into()))
96
			// Standard Error: 7
97
			.saturating_add(Weight::from_parts(1_961, 0).saturating_mul(z.into()))
98
			.saturating_add(T::DbWeight::get().reads(1_u64))
99
			.saturating_add(T::DbWeight::get().writes(1_u64))
100
	}
101
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
102
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
103
	/// Storage: `System::Account` (r:1 w:1)
104
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
105
	/// The range of component `s` is `[2, 100]`.
106
	/// The range of component `z` is `[0, 10000]`.
107
	fn as_multi_complete(s: u32, z: u32, ) -> Weight {
108
		// Proof Size summary in bytes:
109
		//  Measured:  `492 + s * (33 ±0)`
110
		//  Estimated: `6811`
111
		// Minimum execution time: 64_615_000 picoseconds.
112
		Weight::from_parts(50_650_533, 6811)
113
			// Standard Error: 772
114
			.saturating_add(Weight::from_parts(159_827, 0).saturating_mul(s.into()))
115
			// Standard Error: 7
116
			.saturating_add(Weight::from_parts(2_007, 0).saturating_mul(z.into()))
117
			.saturating_add(T::DbWeight::get().reads(2_u64))
118
			.saturating_add(T::DbWeight::get().writes(2_u64))
119
	}
120
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
121
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
122
	/// The range of component `s` is `[2, 100]`.
123
	/// The range of component `z` is `[0, 10000]`.
124
	fn approve_as_multi_create(s: u32) -> Weight {
125
		// Proof Size summary in bytes:
126
		//  Measured:  `367 + s * (2 ±0)`
127
		//  Estimated: `6811`
128
		// Minimum execution time: 44_380_000 picoseconds.
129
		Weight::from_parts(45_076_091, 6811)
130
			// Standard Error: 818
131
			.saturating_add(Weight::from_parts(132_115, 0).saturating_mul(s.into()))
132
			.saturating_add(T::DbWeight::get().reads(1_u64))
133
			.saturating_add(T::DbWeight::get().writes(1_u64))
134
	}
135
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
136
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
137
	/// The range of component `s` is `[2, 100]`.
138
	/// The range of component `z` is `[0, 10000]`.
139
	fn approve_as_multi_approve(s: u32) -> Weight {
140
		// Proof Size summary in bytes:
141
		//  Measured:  `386`
142
		//  Estimated: `6811`
143
		// Minimum execution time: 25_334_000 picoseconds.
144
		Weight::from_parts(25_796_454, 6811)
145
			// Standard Error: 813
146
			.saturating_add(Weight::from_parts(113_159, 0).saturating_mul(s.into()))
147
			.saturating_add(T::DbWeight::get().reads(1_u64))
148
			.saturating_add(T::DbWeight::get().writes(1_u64))
149
	}
150
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
151
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
152
	/// The range of component `s` is `[2, 100]`.
153
	/// The range of component `z` is `[0, 10000]`.
154
	fn cancel_as_multi(s: u32) -> Weight {
155
		// Proof Size summary in bytes:
156
		//  Measured:  `558 + s * (1 ±0)`
157
		//  Estimated: `6811`
158
		// Minimum execution time: 44_880_000 picoseconds.
159
		Weight::from_parts(45_358_785, 6811)
160
			// Standard Error: 751
161
			.saturating_add(Weight::from_parts(123_746, 0).saturating_mul(s.into()))
162
			.saturating_add(T::DbWeight::get().reads(1_u64))
163
			.saturating_add(T::DbWeight::get().writes(1_u64))
164
	}
165
}