1
// Copyright 2025 Moonbeam foundation
2
// This file is part of Moonbeam.
3

            
4
// Moonbeam 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
// Moonbeam 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 Moonbeam.  If not, see <http://www.gnu.org/licenses/>.
16

            
17

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

            
26
// Executed Command:
27
// ./frame-omni-bencher
28
// v1
29
// benchmark
30
// pallet
31
// --runtime=./target/production/wbuild/moonbase-runtime/moonbase_runtime.wasm
32
// --genesis-builder=runtime
33
// --genesis-builder-preset=development
34
// --steps=50
35
// --repeat=20
36
// --pallet=pallet_xcm
37
// --extrinsic=*
38
// --wasm-execution=compiled
39
// --header=./file_header.txt
40
// --template=./benchmarking/frame-weight-template.hbs
41
// --output=./runtime/moonbase/src/weights
42

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

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

            
50
/// Weights for `pallet_xcm`.
51
pub struct WeightInfo<T>(PhantomData<T>);
52
impl<T: frame_system::Config> pallet_xcm::WeightInfo for WeightInfo<T> {
53
	/// Storage: `PolkadotXcm::SupportedVersion` (r:1 w:0)
54
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
55
	/// Storage: `PolkadotXcm::VersionDiscoveryQueue` (r:1 w:1)
56
	/// Proof: `PolkadotXcm::VersionDiscoveryQueue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
57
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:1 w:0)
58
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
59
	/// Storage: `ParachainSystem::HostConfiguration` (r:1 w:0)
60
	/// Proof: `ParachainSystem::HostConfiguration` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
61
	/// Storage: `ParachainSystem::PendingUpwardMessages` (r:1 w:1)
62
	/// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
63
	fn send() -> Weight {
64
		// Proof Size summary in bytes:
65
		//  Measured:  `145`
66
		//  Estimated: `3610`
67
		// Minimum execution time: 24_536_000 picoseconds.
68
		Weight::from_parts(25_179_000, 3610)
69
			.saturating_add(T::DbWeight::get().reads(5_u64))
70
			.saturating_add(T::DbWeight::get().writes(2_u64))
71
	}
72
	/// Storage: `Benchmark::Override` (r:0 w:0)
73
	/// Proof: `Benchmark::Override` (`max_values`: None, `max_size`: None, mode: `Measured`)
74
	fn teleport_assets() -> Weight {
75
		// Proof Size summary in bytes:
76
		//  Measured:  `0`
77
		//  Estimated: `0`
78
		// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
79
		Weight::from_parts(18_446_744_073_709_551_000, 0)
80
	}
81
	/// Storage: `PolkadotXcm::ShouldRecordXcm` (r:1 w:0)
82
	/// Proof: `PolkadotXcm::ShouldRecordXcm` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
83
	/// Storage: `System::Account` (r:1 w:1)
84
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(116), added: 2591, mode: `MaxEncodedLen`)
85
	/// Storage: `PolkadotXcm::SupportedVersion` (r:1 w:0)
86
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
87
	/// Storage: `PolkadotXcm::VersionDiscoveryQueue` (r:1 w:1)
88
	/// Proof: `PolkadotXcm::VersionDiscoveryQueue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
89
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:1 w:0)
90
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
91
	/// Storage: `ParachainSystem::RelevantMessagingState` (r:1 w:0)
92
	/// Proof: `ParachainSystem::RelevantMessagingState` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
93
	/// Storage: `XcmpQueue::OutboundXcmpStatus` (r:1 w:1)
94
	/// Proof: `XcmpQueue::OutboundXcmpStatus` (`max_values`: Some(1), `max_size`: Some(1282), added: 1777, mode: `MaxEncodedLen`)
95
	/// Storage: `XcmpQueue::OutboundXcmpMessages` (r:0 w:1)
96
	/// Proof: `XcmpQueue::OutboundXcmpMessages` (`max_values`: None, `max_size`: Some(105506), added: 107981, mode: `MaxEncodedLen`)
97
	fn reserve_transfer_assets() -> Weight {
98
		// Proof Size summary in bytes:
99
		//  Measured:  `519`
100
		//  Estimated: `3984`
101
		// Minimum execution time: 100_173_000 picoseconds.
102
		Weight::from_parts(103_303_000, 3984)
103
			.saturating_add(T::DbWeight::get().reads(7_u64))
104
			.saturating_add(T::DbWeight::get().writes(4_u64))
105
	}
106
	/// Storage: `PolkadotXcm::ShouldRecordXcm` (r:1 w:0)
107
	/// Proof: `PolkadotXcm::ShouldRecordXcm` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
108
	/// Storage: `System::Account` (r:1 w:1)
109
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(116), added: 2591, mode: `MaxEncodedLen`)
110
	/// Storage: `PolkadotXcm::SupportedVersion` (r:1 w:0)
111
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
112
	/// Storage: `PolkadotXcm::VersionDiscoveryQueue` (r:1 w:1)
113
	/// Proof: `PolkadotXcm::VersionDiscoveryQueue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
114
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:1 w:0)
115
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
116
	/// Storage: `ParachainSystem::HostConfiguration` (r:1 w:0)
117
	/// Proof: `ParachainSystem::HostConfiguration` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
118
	/// Storage: `ParachainSystem::PendingUpwardMessages` (r:1 w:1)
119
	/// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
120
21
	fn transfer_assets() -> Weight {
121
21
		// Proof Size summary in bytes:
122
21
		//  Measured:  `217`
123
21
		//  Estimated: `3682`
124
21
		// Minimum execution time: 87_797_000 picoseconds.
125
21
		Weight::from_parts(90_422_000, 3682)
126
21
			.saturating_add(T::DbWeight::get().reads(7_u64))
127
21
			.saturating_add(T::DbWeight::get().writes(3_u64))
128
21
	}
129
	/// Storage: `PolkadotXcm::ShouldRecordXcm` (r:1 w:0)
130
	/// Proof: `PolkadotXcm::ShouldRecordXcm` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
131
	fn execute() -> Weight {
132
		// Proof Size summary in bytes:
133
		//  Measured:  `69`
134
		//  Estimated: `1554`
135
		// Minimum execution time: 11_883_000 picoseconds.
136
		Weight::from_parts(12_131_000, 1554)
137
			.saturating_add(T::DbWeight::get().reads(1_u64))
138
	}
139
	/// Storage: `PolkadotXcm::SupportedVersion` (r:0 w:1)
140
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
141
	fn force_xcm_version() -> Weight {
142
		// Proof Size summary in bytes:
143
		//  Measured:  `0`
144
		//  Estimated: `0`
145
		// Minimum execution time: 7_208_000 picoseconds.
146
		Weight::from_parts(7_648_000, 0)
147
			.saturating_add(T::DbWeight::get().writes(1_u64))
148
	}
149
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:0 w:1)
150
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
151
	fn force_default_xcm_version() -> Weight {
152
		// Proof Size summary in bytes:
153
		//  Measured:  `0`
154
		//  Estimated: `0`
155
		// Minimum execution time: 2_225_000 picoseconds.
156
		Weight::from_parts(2_448_000, 0)
157
			.saturating_add(T::DbWeight::get().writes(1_u64))
158
	}
159
	/// Storage: `PolkadotXcm::VersionNotifiers` (r:1 w:1)
160
	/// Proof: `PolkadotXcm::VersionNotifiers` (`max_values`: None, `max_size`: None, mode: `Measured`)
161
	/// Storage: `PolkadotXcm::QueryCounter` (r:1 w:1)
162
	/// Proof: `PolkadotXcm::QueryCounter` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
163
	/// Storage: `PolkadotXcm::SupportedVersion` (r:1 w:0)
164
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
165
	/// Storage: `PolkadotXcm::VersionDiscoveryQueue` (r:1 w:1)
166
	/// Proof: `PolkadotXcm::VersionDiscoveryQueue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
167
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:1 w:0)
168
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
169
	/// Storage: `ParachainSystem::HostConfiguration` (r:1 w:0)
170
	/// Proof: `ParachainSystem::HostConfiguration` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
171
	/// Storage: `ParachainSystem::PendingUpwardMessages` (r:1 w:1)
172
	/// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
173
	/// Storage: `PolkadotXcm::Queries` (r:0 w:1)
174
	/// Proof: `PolkadotXcm::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`)
175
	fn force_subscribe_version_notify() -> Weight {
176
		// Proof Size summary in bytes:
177
		//  Measured:  `145`
178
		//  Estimated: `3610`
179
		// Minimum execution time: 30_266_000 picoseconds.
180
		Weight::from_parts(31_598_000, 3610)
181
			.saturating_add(T::DbWeight::get().reads(7_u64))
182
			.saturating_add(T::DbWeight::get().writes(5_u64))
183
	}
184
	/// Storage: `PolkadotXcm::VersionNotifiers` (r:1 w:1)
185
	/// Proof: `PolkadotXcm::VersionNotifiers` (`max_values`: None, `max_size`: None, mode: `Measured`)
186
	/// Storage: `PolkadotXcm::SupportedVersion` (r:1 w:0)
187
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
188
	/// Storage: `PolkadotXcm::VersionDiscoveryQueue` (r:1 w:1)
189
	/// Proof: `PolkadotXcm::VersionDiscoveryQueue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
190
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:1 w:0)
191
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
192
	/// Storage: `ParachainSystem::HostConfiguration` (r:1 w:0)
193
	/// Proof: `ParachainSystem::HostConfiguration` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
194
	/// Storage: `ParachainSystem::PendingUpwardMessages` (r:1 w:1)
195
	/// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
196
	/// Storage: `PolkadotXcm::Queries` (r:0 w:1)
197
	/// Proof: `PolkadotXcm::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`)
198
	fn force_unsubscribe_version_notify() -> Weight {
199
		// Proof Size summary in bytes:
200
		//  Measured:  `363`
201
		//  Estimated: `3828`
202
		// Minimum execution time: 37_343_000 picoseconds.
203
		Weight::from_parts(38_837_000, 3828)
204
			.saturating_add(T::DbWeight::get().reads(6_u64))
205
			.saturating_add(T::DbWeight::get().writes(4_u64))
206
	}
207
	/// Storage: `PolkadotXcm::XcmExecutionSuspended` (r:0 w:1)
208
	/// Proof: `PolkadotXcm::XcmExecutionSuspended` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
209
	fn force_suspension() -> Weight {
210
		// Proof Size summary in bytes:
211
		//  Measured:  `0`
212
		//  Estimated: `0`
213
		// Minimum execution time: 2_371_000 picoseconds.
214
		Weight::from_parts(2_487_000, 0)
215
			.saturating_add(T::DbWeight::get().writes(1_u64))
216
	}
217
	/// Storage: `PolkadotXcm::SupportedVersion` (r:6 w:2)
218
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
219
	fn migrate_supported_version() -> Weight {
220
		// Proof Size summary in bytes:
221
		//  Measured:  `125`
222
		//  Estimated: `15965`
223
		// Minimum execution time: 24_011_000 picoseconds.
224
		Weight::from_parts(24_294_000, 15965)
225
			.saturating_add(T::DbWeight::get().reads(6_u64))
226
			.saturating_add(T::DbWeight::get().writes(2_u64))
227
	}
228
	/// Storage: `PolkadotXcm::VersionNotifiers` (r:6 w:2)
229
	/// Proof: `PolkadotXcm::VersionNotifiers` (`max_values`: None, `max_size`: None, mode: `Measured`)
230
	fn migrate_version_notifiers() -> Weight {
231
		// Proof Size summary in bytes:
232
		//  Measured:  `129`
233
		//  Estimated: `15969`
234
		// Minimum execution time: 23_695_000 picoseconds.
235
		Weight::from_parts(24_048_000, 15969)
236
			.saturating_add(T::DbWeight::get().reads(6_u64))
237
			.saturating_add(T::DbWeight::get().writes(2_u64))
238
	}
239
	/// Storage: `PolkadotXcm::VersionNotifyTargets` (r:7 w:0)
240
	/// Proof: `PolkadotXcm::VersionNotifyTargets` (`max_values`: None, `max_size`: None, mode: `Measured`)
241
	fn already_notified_target() -> Weight {
242
		// Proof Size summary in bytes:
243
		//  Measured:  `178`
244
		//  Estimated: `18493`
245
		// Minimum execution time: 29_461_000 picoseconds.
246
		Weight::from_parts(29_887_000, 18493)
247
			.saturating_add(T::DbWeight::get().reads(7_u64))
248
	}
249
	/// Storage: `PolkadotXcm::VersionNotifyTargets` (r:2 w:1)
250
	/// Proof: `PolkadotXcm::VersionNotifyTargets` (`max_values`: None, `max_size`: None, mode: `Measured`)
251
	/// Storage: `PolkadotXcm::SupportedVersion` (r:1 w:0)
252
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
253
	/// Storage: `PolkadotXcm::VersionDiscoveryQueue` (r:1 w:1)
254
	/// Proof: `PolkadotXcm::VersionDiscoveryQueue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
255
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:1 w:0)
256
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
257
	/// Storage: `ParachainSystem::HostConfiguration` (r:1 w:0)
258
	/// Proof: `ParachainSystem::HostConfiguration` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
259
	/// Storage: `ParachainSystem::PendingUpwardMessages` (r:1 w:1)
260
	/// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
261
	fn notify_current_targets() -> Weight {
262
		// Proof Size summary in bytes:
263
		//  Measured:  `212`
264
		//  Estimated: `6152`
265
		// Minimum execution time: 28_629_000 picoseconds.
266
		Weight::from_parts(29_793_000, 6152)
267
			.saturating_add(T::DbWeight::get().reads(7_u64))
268
			.saturating_add(T::DbWeight::get().writes(3_u64))
269
	}
270
	/// Storage: `PolkadotXcm::VersionNotifyTargets` (r:5 w:0)
271
	/// Proof: `PolkadotXcm::VersionNotifyTargets` (`max_values`: None, `max_size`: None, mode: `Measured`)
272
	fn notify_target_migration_fail() -> Weight {
273
		// Proof Size summary in bytes:
274
		//  Measured:  `181`
275
		//  Estimated: `13546`
276
		// Minimum execution time: 19_218_000 picoseconds.
277
		Weight::from_parts(19_527_000, 13546)
278
			.saturating_add(T::DbWeight::get().reads(5_u64))
279
	}
280
	/// Storage: `PolkadotXcm::VersionNotifyTargets` (r:6 w:2)
281
	/// Proof: `PolkadotXcm::VersionNotifyTargets` (`max_values`: None, `max_size`: None, mode: `Measured`)
282
	fn migrate_version_notify_targets() -> Weight {
283
		// Proof Size summary in bytes:
284
		//  Measured:  `136`
285
		//  Estimated: `15976`
286
		// Minimum execution time: 24_471_000 picoseconds.
287
		Weight::from_parts(24_960_000, 15976)
288
			.saturating_add(T::DbWeight::get().reads(6_u64))
289
			.saturating_add(T::DbWeight::get().writes(2_u64))
290
	}
291
	/// Storage: `PolkadotXcm::VersionNotifyTargets` (r:6 w:2)
292
	/// Proof: `PolkadotXcm::VersionNotifyTargets` (`max_values`: None, `max_size`: None, mode: `Measured`)
293
	/// Storage: `PolkadotXcm::SupportedVersion` (r:1 w:0)
294
	/// Proof: `PolkadotXcm::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`)
295
	/// Storage: `PolkadotXcm::VersionDiscoveryQueue` (r:1 w:1)
296
	/// Proof: `PolkadotXcm::VersionDiscoveryQueue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
297
	/// Storage: `PolkadotXcm::SafeXcmVersion` (r:1 w:0)
298
	/// Proof: `PolkadotXcm::SafeXcmVersion` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
299
	/// Storage: `ParachainSystem::HostConfiguration` (r:1 w:0)
300
	/// Proof: `ParachainSystem::HostConfiguration` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
301
	/// Storage: `ParachainSystem::PendingUpwardMessages` (r:1 w:1)
302
	/// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
303
	fn migrate_and_notify_old_targets() -> Weight {
304
		// Proof Size summary in bytes:
305
		//  Measured:  `212`
306
		//  Estimated: `16052`
307
		// Minimum execution time: 42_300_000 picoseconds.
308
		Weight::from_parts(43_091_000, 16052)
309
			.saturating_add(T::DbWeight::get().reads(11_u64))
310
			.saturating_add(T::DbWeight::get().writes(4_u64))
311
	}
312
	/// Storage: `PolkadotXcm::QueryCounter` (r:1 w:1)
313
	/// Proof: `PolkadotXcm::QueryCounter` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
314
	/// Storage: `PolkadotXcm::Queries` (r:0 w:1)
315
	/// Proof: `PolkadotXcm::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`)
316
	fn new_query() -> Weight {
317
		// Proof Size summary in bytes:
318
		//  Measured:  `69`
319
		//  Estimated: `1554`
320
		// Minimum execution time: 5_369_000 picoseconds.
321
		Weight::from_parts(5_647_000, 1554)
322
			.saturating_add(T::DbWeight::get().reads(1_u64))
323
			.saturating_add(T::DbWeight::get().writes(2_u64))
324
	}
325
	/// Storage: `PolkadotXcm::Queries` (r:1 w:1)
326
	/// Proof: `PolkadotXcm::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`)
327
	fn take_response() -> Weight {
328
		// Proof Size summary in bytes:
329
		//  Measured:  `7706`
330
		//  Estimated: `11171`
331
		// Minimum execution time: 28_604_000 picoseconds.
332
		Weight::from_parts(29_136_000, 11171)
333
			.saturating_add(T::DbWeight::get().reads(1_u64))
334
			.saturating_add(T::DbWeight::get().writes(1_u64))
335
	}
336
	/// Storage: `PolkadotXcm::ShouldRecordXcm` (r:1 w:0)
337
	/// Proof: `PolkadotXcm::ShouldRecordXcm` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
338
	/// Storage: `PolkadotXcm::AssetTraps` (r:1 w:1)
339
	/// Proof: `PolkadotXcm::AssetTraps` (`max_values`: None, `max_size`: None, mode: `Measured`)
340
	fn claim_assets() -> Weight {
341
		// Proof Size summary in bytes:
342
		//  Measured:  `126`
343
		//  Estimated: `3591`
344
		// Minimum execution time: 41_816_000 picoseconds.
345
		Weight::from_parts(43_381_000, 3591)
346
			.saturating_add(T::DbWeight::get().reads(2_u64))
347
			.saturating_add(T::DbWeight::get().writes(1_u64))
348
	}
349
}