1
// This file is part of Substrate.
2

            
3
// Copyright (C) Parity Technologies (UK) Ltd.
4
// SPDX-License-Identifier: Apache-2.0
5

            
6
// Licensed under the Apache License, Version 2.0 (the "License");
7
// you may not use this file except in compliance with the License.
8
// You may obtain a copy of the License at
9
//
10
// 	http://www.apache.org/licenses/LICENSE-2.0
11
//
12
// Unless required by applicable law or agreed to in writing, software
13
// distributed under the License is distributed on an "AS IS" BASIS,
14
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
// See the License for the specific language governing permissions and
16
// limitations under the License.
17

            
18
//! Autogenerated weights for `pallet_conviction_voting`
19
//!
20
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
21
//! DATE: 2024-04-08, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
22
//! WORST CASE MAP SIZE: `1000000`
23
//! HOSTNAME: `runner-anb7yjbi-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
24
//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("dev")`, DB CACHE: `1024`
25

            
26
// Executed Command:
27
// ./target/production/substrate-node
28
// benchmark
29
// pallet
30
// --chain=dev
31
// --steps=50
32
// --repeat=20
33
// --pallet=pallet_conviction_voting
34
// --no-storage-info
35
// --no-median-slopes
36
// --no-min-squares
37
// --extrinsic=*
38
// --wasm-execution=compiled
39
// --heap-pages=4096
40
// --output=./substrate/frame/conviction-voting/src/weights.rs
41
// --header=./substrate/HEADER-APACHE2
42
// --template=./substrate/.maintain/frame-weight-template.hbs
43

            
44
#![cfg_attr(rustfmt, rustfmt_skip)]
45
#![allow(unused_parens)]
46
#![allow(unused_imports)]
47
#![allow(missing_docs)]
48

            
49
use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}};
50
use core::marker::PhantomData;
51

            
52
/// Weight functions needed for `pallet_conviction_voting`.
53
pub trait WeightInfo {
54
	fn vote_new() -> Weight;
55
	fn vote_existing() -> Weight;
56
	fn remove_vote() -> Weight;
57
	fn remove_other_vote() -> Weight;
58
	fn delegate(r: u32, ) -> Weight;
59
	fn undelegate(r: u32, ) -> Weight;
60
	fn unlock() -> Weight;
61
}
62

            
63
/// Weights for `pallet_conviction_voting` using the Substrate node and recommended hardware.
64
pub struct SubstrateWeight<T>(PhantomData<T>);
65
impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
66
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
67
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
68
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
69
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
70
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
71
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
72
	/// Storage: `Balances::Locks` (r:1 w:1)
73
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
74
	/// Storage: `Balances::Freezes` (r:1 w:0)
75
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
76
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
77
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
78
	/// Storage: `Scheduler::Retries` (r:0 w:1)
79
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
80
	fn vote_new() -> Weight {
81
		// Proof Size summary in bytes:
82
		//  Measured:  `13141`
83
		//  Estimated: `219984`
84
		// Minimum execution time: 114_422_000 picoseconds.
85
		Weight::from_parts(118_642_000, 219984)
86
			.saturating_add(T::DbWeight::get().reads(7_u64))
87
			.saturating_add(T::DbWeight::get().writes(7_u64))
88
	}
89
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
90
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
91
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
92
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
93
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
94
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
95
	/// Storage: `Balances::Locks` (r:1 w:1)
96
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
97
	/// Storage: `Balances::Freezes` (r:1 w:0)
98
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
99
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
100
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
101
	/// Storage: `Scheduler::Retries` (r:0 w:1)
102
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
103
	fn vote_existing() -> Weight {
104
		// Proof Size summary in bytes:
105
		//  Measured:  `20283`
106
		//  Estimated: `219984`
107
		// Minimum execution time: 290_934_000 picoseconds.
108
		Weight::from_parts(303_286_000, 219984)
109
			.saturating_add(T::DbWeight::get().reads(7_u64))
110
			.saturating_add(T::DbWeight::get().writes(7_u64))
111
	}
112
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
113
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
114
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
115
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
116
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
117
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
118
	/// Storage: `Scheduler::Retries` (r:0 w:1)
119
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
120
	fn remove_vote() -> Weight {
121
		// Proof Size summary in bytes:
122
		//  Measured:  `20035`
123
		//  Estimated: `219984`
124
		// Minimum execution time: 277_464_000 picoseconds.
125
		Weight::from_parts(284_288_000, 219984)
126
			.saturating_add(T::DbWeight::get().reads(4_u64))
127
			.saturating_add(T::DbWeight::get().writes(5_u64))
128
	}
129
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
130
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
131
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:0)
132
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
133
	fn remove_other_vote() -> Weight {
134
		// Proof Size summary in bytes:
135
		//  Measured:  `12742`
136
		//  Estimated: `30706`
137
		// Minimum execution time: 54_538_000 picoseconds.
138
		Weight::from_parts(55_758_000, 30706)
139
			.saturating_add(T::DbWeight::get().reads(2_u64))
140
			.saturating_add(T::DbWeight::get().writes(1_u64))
141
	}
142
	/// Storage: `ConvictionVoting::VotingFor` (r:2 w:2)
143
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
144
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
145
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
146
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
147
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
148
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
149
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
150
	/// Storage: `Balances::Locks` (r:1 w:1)
151
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
152
	/// Storage: `Balances::Freezes` (r:1 w:0)
153
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
154
	/// Storage: `Scheduler::Retries` (r:0 w:1)
155
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
156
	/// The range of component `r` is `[0, 1]`.
157
	fn delegate(r: u32, ) -> Weight {
158
		// Proof Size summary in bytes:
159
		//  Measured:  `306 + r * (1628 ±0)`
160
		//  Estimated: `109992 + r * (109992 ±0)`
161
		// Minimum execution time: 47_243_000 picoseconds.
162
		Weight::from_parts(50_023_534, 109992)
163
			// Standard Error: 228_993
164
			.saturating_add(Weight::from_parts(43_173_465, 0).saturating_mul(r.into()))
165
			.saturating_add(T::DbWeight::get().reads(5_u64))
166
			.saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(r.into())))
167
			.saturating_add(T::DbWeight::get().writes(4_u64))
168
			.saturating_add(T::DbWeight::get().writes((4_u64).saturating_mul(r.into())))
169
			.saturating_add(Weight::from_parts(0, 109992).saturating_mul(r.into()))
170
	}
171
	/// Storage: `ConvictionVoting::VotingFor` (r:2 w:2)
172
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
173
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
174
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
175
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
176
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
177
	/// Storage: `Scheduler::Retries` (r:0 w:1)
178
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
179
	/// The range of component `r` is `[0, 1]`.
180
	fn undelegate(r: u32, ) -> Weight {
181
		// Proof Size summary in bytes:
182
		//  Measured:  `472 + r * (1377 ±0)`
183
		//  Estimated: `109992 + r * (109992 ±0)`
184
		// Minimum execution time: 23_529_000 picoseconds.
185
		Weight::from_parts(25_071_526, 109992)
186
			// Standard Error: 138_190
187
			.saturating_add(Weight::from_parts(40_350_973, 0).saturating_mul(r.into()))
188
			.saturating_add(T::DbWeight::get().reads(2_u64))
189
			.saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(r.into())))
190
			.saturating_add(T::DbWeight::get().writes(2_u64))
191
			.saturating_add(T::DbWeight::get().writes((4_u64).saturating_mul(r.into())))
192
			.saturating_add(Weight::from_parts(0, 109992).saturating_mul(r.into()))
193
	}
194
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
195
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
196
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
197
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
198
	/// Storage: `Balances::Locks` (r:1 w:1)
199
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
200
	/// Storage: `Balances::Freezes` (r:1 w:0)
201
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
202
	fn unlock() -> Weight {
203
		// Proof Size summary in bytes:
204
		//  Measured:  `11800`
205
		//  Estimated: `30706`
206
		// Minimum execution time: 69_473_000 picoseconds.
207
		Weight::from_parts(71_519_000, 30706)
208
			.saturating_add(T::DbWeight::get().reads(4_u64))
209
			.saturating_add(T::DbWeight::get().writes(3_u64))
210
	}
211
}
212

            
213
// For backwards compatibility and tests.
214
impl WeightInfo for () {
215
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
216
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
217
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
218
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
219
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
220
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
221
	/// Storage: `Balances::Locks` (r:1 w:1)
222
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
223
	/// Storage: `Balances::Freezes` (r:1 w:0)
224
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
225
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
226
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
227
	/// Storage: `Scheduler::Retries` (r:0 w:1)
228
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
229
	fn vote_new() -> Weight {
230
		// Proof Size summary in bytes:
231
		//  Measured:  `13141`
232
		//  Estimated: `219984`
233
		// Minimum execution time: 114_422_000 picoseconds.
234
		Weight::from_parts(118_642_000, 219984)
235
			.saturating_add(RocksDbWeight::get().reads(7_u64))
236
			.saturating_add(RocksDbWeight::get().writes(7_u64))
237
	}
238
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
239
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
240
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
241
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
242
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
243
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
244
	/// Storage: `Balances::Locks` (r:1 w:1)
245
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
246
	/// Storage: `Balances::Freezes` (r:1 w:0)
247
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
248
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
249
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
250
	/// Storage: `Scheduler::Retries` (r:0 w:1)
251
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
252
	fn vote_existing() -> Weight {
253
		// Proof Size summary in bytes:
254
		//  Measured:  `20283`
255
		//  Estimated: `219984`
256
		// Minimum execution time: 290_934_000 picoseconds.
257
		Weight::from_parts(303_286_000, 219984)
258
			.saturating_add(RocksDbWeight::get().reads(7_u64))
259
			.saturating_add(RocksDbWeight::get().writes(7_u64))
260
	}
261
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
262
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
263
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
264
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
265
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
266
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
267
	/// Storage: `Scheduler::Retries` (r:0 w:1)
268
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
269
	fn remove_vote() -> Weight {
270
		// Proof Size summary in bytes:
271
		//  Measured:  `20035`
272
		//  Estimated: `219984`
273
		// Minimum execution time: 277_464_000 picoseconds.
274
		Weight::from_parts(284_288_000, 219984)
275
			.saturating_add(RocksDbWeight::get().reads(4_u64))
276
			.saturating_add(RocksDbWeight::get().writes(5_u64))
277
	}
278
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
279
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
280
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:0)
281
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
282
	fn remove_other_vote() -> Weight {
283
		// Proof Size summary in bytes:
284
		//  Measured:  `12742`
285
		//  Estimated: `30706`
286
		// Minimum execution time: 54_538_000 picoseconds.
287
		Weight::from_parts(55_758_000, 30706)
288
			.saturating_add(RocksDbWeight::get().reads(2_u64))
289
			.saturating_add(RocksDbWeight::get().writes(1_u64))
290
	}
291
	/// Storage: `ConvictionVoting::VotingFor` (r:2 w:2)
292
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
293
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
294
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
295
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
296
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
297
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
298
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
299
	/// Storage: `Balances::Locks` (r:1 w:1)
300
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
301
	/// Storage: `Balances::Freezes` (r:1 w:0)
302
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
303
	/// Storage: `Scheduler::Retries` (r:0 w:1)
304
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
305
	/// The range of component `r` is `[0, 1]`.
306
	fn delegate(r: u32, ) -> Weight {
307
		// Proof Size summary in bytes:
308
		//  Measured:  `306 + r * (1628 ±0)`
309
		//  Estimated: `109992 + r * (109992 ±0)`
310
		// Minimum execution time: 47_243_000 picoseconds.
311
		Weight::from_parts(50_023_534, 109992)
312
			// Standard Error: 228_993
313
			.saturating_add(Weight::from_parts(43_173_465, 0).saturating_mul(r.into()))
314
			.saturating_add(RocksDbWeight::get().reads(5_u64))
315
			.saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(r.into())))
316
			.saturating_add(RocksDbWeight::get().writes(4_u64))
317
			.saturating_add(RocksDbWeight::get().writes((4_u64).saturating_mul(r.into())))
318
			.saturating_add(Weight::from_parts(0, 109992).saturating_mul(r.into()))
319
	}
320
	/// Storage: `ConvictionVoting::VotingFor` (r:2 w:2)
321
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
322
	/// Storage: `Referenda::ReferendumInfoFor` (r:1 w:1)
323
	/// Proof: `Referenda::ReferendumInfoFor` (`max_values`: None, `max_size`: Some(366), added: 2841, mode: `MaxEncodedLen`)
324
	/// Storage: `Scheduler::Agenda` (r:2 w:2)
325
	/// Proof: `Scheduler::Agenda` (`max_values`: None, `max_size`: Some(107022), added: 109497, mode: `MaxEncodedLen`)
326
	/// Storage: `Scheduler::Retries` (r:0 w:1)
327
	/// Proof: `Scheduler::Retries` (`max_values`: None, `max_size`: Some(30), added: 2505, mode: `MaxEncodedLen`)
328
	/// The range of component `r` is `[0, 1]`.
329
	fn undelegate(r: u32, ) -> Weight {
330
		// Proof Size summary in bytes:
331
		//  Measured:  `472 + r * (1377 ±0)`
332
		//  Estimated: `109992 + r * (109992 ±0)`
333
		// Minimum execution time: 23_529_000 picoseconds.
334
		Weight::from_parts(25_071_526, 109992)
335
			// Standard Error: 138_190
336
			.saturating_add(Weight::from_parts(40_350_973, 0).saturating_mul(r.into()))
337
			.saturating_add(RocksDbWeight::get().reads(2_u64))
338
			.saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(r.into())))
339
			.saturating_add(RocksDbWeight::get().writes(2_u64))
340
			.saturating_add(RocksDbWeight::get().writes((4_u64).saturating_mul(r.into())))
341
			.saturating_add(Weight::from_parts(0, 109992).saturating_mul(r.into()))
342
	}
343
	/// Storage: `ConvictionVoting::VotingFor` (r:1 w:1)
344
	/// Proof: `ConvictionVoting::VotingFor` (`max_values`: None, `max_size`: Some(27241), added: 29716, mode: `MaxEncodedLen`)
345
	/// Storage: `ConvictionVoting::ClassLocksFor` (r:1 w:1)
346
	/// Proof: `ConvictionVoting::ClassLocksFor` (`max_values`: None, `max_size`: Some(59), added: 2534, mode: `MaxEncodedLen`)
347
	/// Storage: `Balances::Locks` (r:1 w:1)
348
	/// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`)
349
	/// Storage: `Balances::Freezes` (r:1 w:0)
350
	/// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`)
351
	fn unlock() -> Weight {
352
		// Proof Size summary in bytes:
353
		//  Measured:  `11800`
354
		//  Estimated: `30706`
355
		// Minimum execution time: 69_473_000 picoseconds.
356
		Weight::from_parts(71_519_000, 30706)
357
			.saturating_add(RocksDbWeight::get().reads(4_u64))
358
			.saturating_add(RocksDbWeight::get().writes(3_u64))
359
	}
360
}