Line data Source code
1 : // This is an auto-generated file. To add entries, edit fd_types.json
2 : #ifndef HEADER_FD_RUNTIME_TYPES
3 : #define HEADER_FD_RUNTIME_TYPES
4 :
5 : #include "fd_bincode.h"
6 : #include "../../ballet/utf8/fd_utf8.h"
7 : #include "fd_types_custom.h"
8 5090391 : #define FD_ACCOUNT_META_MAGIC 9823
9 :
10 : /* sdk/program/src/feature.rs#L22 */
11 : /* Encoded Size: Dynamic */
12 : struct __attribute__((aligned(8UL))) fd_feature {
13 : ulong activated_at;
14 : uchar has_activated_at;
15 : };
16 : typedef struct fd_feature fd_feature_t;
17 0 : #define FD_FEATURE_FOOTPRINT sizeof(fd_feature_t)
18 0 : #define FD_FEATURE_ALIGN (8UL)
19 :
20 : struct __attribute__((aligned(8UL))) fd_feature_off {
21 : uint activated_at_off;
22 : };
23 : typedef struct fd_feature_off fd_feature_off_t;
24 : #define FD_FEATURE_OFF_FOOTPRINT sizeof(fd_feature_off_t)
25 : #define FD_FEATURE_OFF_ALIGN (8UL)
26 :
27 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/fee_calculator.rs#L9 */
28 : /* Encoded Size: Fixed (8 bytes) */
29 : struct __attribute__((aligned(8UL))) fd_fee_calculator {
30 : ulong lamports_per_signature;
31 : };
32 : typedef struct fd_fee_calculator fd_fee_calculator_t;
33 0 : #define FD_FEE_CALCULATOR_FOOTPRINT sizeof(fd_fee_calculator_t)
34 0 : #define FD_FEE_CALCULATOR_ALIGN (8UL)
35 :
36 : struct __attribute__((aligned(8UL))) fd_fee_calculator_off {
37 : uint lamports_per_signature_off;
38 : };
39 : typedef struct fd_fee_calculator_off fd_fee_calculator_off_t;
40 : #define FD_FEE_CALCULATOR_OFF_FOOTPRINT sizeof(fd_fee_calculator_off_t)
41 : #define FD_FEE_CALCULATOR_OFF_ALIGN (8UL)
42 :
43 : /* Encoded Size: Dynamic */
44 : struct __attribute__((aligned(8UL))) fd_hash_age {
45 : fd_fee_calculator_t fee_calculator;
46 : ulong hash_index;
47 : ulong timestamp;
48 : };
49 : typedef struct fd_hash_age fd_hash_age_t;
50 0 : #define FD_HASH_AGE_FOOTPRINT sizeof(fd_hash_age_t)
51 0 : #define FD_HASH_AGE_ALIGN (8UL)
52 :
53 : struct __attribute__((aligned(8UL))) fd_hash_age_off {
54 : uint fee_calculator_off;
55 : uint hash_index_off;
56 : uint timestamp_off;
57 : };
58 : typedef struct fd_hash_age_off fd_hash_age_off_t;
59 : #define FD_HASH_AGE_OFF_FOOTPRINT sizeof(fd_hash_age_off_t)
60 : #define FD_HASH_AGE_OFF_ALIGN (8UL)
61 :
62 : /* Encoded Size: Dynamic */
63 : struct __attribute__((aligned(8UL))) fd_hash_hash_age_pair {
64 : fd_hash_t key;
65 : fd_hash_age_t val;
66 : };
67 : typedef struct fd_hash_hash_age_pair fd_hash_hash_age_pair_t;
68 0 : #define FD_HASH_HASH_AGE_PAIR_FOOTPRINT sizeof(fd_hash_hash_age_pair_t)
69 0 : #define FD_HASH_HASH_AGE_PAIR_ALIGN (8UL)
70 :
71 : struct __attribute__((aligned(8UL))) fd_hash_hash_age_pair_off {
72 : uint key_off;
73 : uint val_off;
74 : };
75 : typedef struct fd_hash_hash_age_pair_off fd_hash_hash_age_pair_off_t;
76 : #define FD_HASH_HASH_AGE_PAIR_OFF_FOOTPRINT sizeof(fd_hash_hash_age_pair_off_t)
77 : #define FD_HASH_HASH_AGE_PAIR_OFF_ALIGN (8UL)
78 :
79 : /* Encoded Size: Dynamic */
80 : struct __attribute__((aligned(8UL))) fd_block_hash_vec {
81 : ulong last_hash_index;
82 : fd_hash_t * last_hash;
83 : ulong ages_len;
84 : fd_hash_hash_age_pair_t * ages;
85 : ulong max_age;
86 : };
87 : typedef struct fd_block_hash_vec fd_block_hash_vec_t;
88 0 : #define FD_BLOCK_HASH_VEC_FOOTPRINT sizeof(fd_block_hash_vec_t)
89 0 : #define FD_BLOCK_HASH_VEC_ALIGN (8UL)
90 :
91 : struct __attribute__((aligned(8UL))) fd_block_hash_vec_off {
92 : uint last_hash_index_off;
93 : uint last_hash_off;
94 : uint ages_off;
95 : uint max_age_off;
96 : };
97 : typedef struct fd_block_hash_vec_off fd_block_hash_vec_off_t;
98 : #define FD_BLOCK_HASH_VEC_OFF_FOOTPRINT sizeof(fd_block_hash_vec_off_t)
99 : #define FD_BLOCK_HASH_VEC_OFF_ALIGN (8UL)
100 :
101 : typedef struct fd_hash_hash_age_pair_t_mapnode fd_hash_hash_age_pair_t_mapnode_t;
102 : #define REDBLK_T fd_hash_hash_age_pair_t_mapnode_t
103 : #define REDBLK_NAME fd_hash_hash_age_pair_t_map
104 : #define REDBLK_IMPL_STYLE 1
105 : #include "../../util/tmpl/fd_redblack.c"
106 : #undef REDBLK_T
107 : #undef REDBLK_NAME
108 : struct fd_hash_hash_age_pair_t_mapnode {
109 : fd_hash_hash_age_pair_t elem;
110 : ulong redblack_parent;
111 : ulong redblack_left;
112 : ulong redblack_right;
113 : int redblack_color;
114 : };
115 : static inline fd_hash_hash_age_pair_t_mapnode_t *
116 11370 : fd_hash_hash_age_pair_t_map_alloc( fd_valloc_t valloc, ulong len ) {
117 11370 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
118 11370 : void * mem = fd_valloc_malloc( valloc, fd_hash_hash_age_pair_t_map_align(), fd_hash_hash_age_pair_t_map_footprint(len));
119 11370 : return fd_hash_hash_age_pair_t_map_join(fd_hash_hash_age_pair_t_map_new(mem, len));
120 11370 : }
121 : /* Encoded Size: Dynamic */
122 : struct __attribute__((aligned(8UL))) fd_block_hash_queue {
123 : ulong last_hash_index;
124 : fd_hash_t * last_hash;
125 : fd_hash_hash_age_pair_t_mapnode_t * ages_pool;
126 : fd_hash_hash_age_pair_t_mapnode_t * ages_root;
127 : ulong max_age;
128 : };
129 : typedef struct fd_block_hash_queue fd_block_hash_queue_t;
130 0 : #define FD_BLOCK_HASH_QUEUE_FOOTPRINT sizeof(fd_block_hash_queue_t)
131 0 : #define FD_BLOCK_HASH_QUEUE_ALIGN (8UL)
132 :
133 : struct __attribute__((aligned(8UL))) fd_block_hash_queue_off {
134 : uint last_hash_index_off;
135 : uint last_hash_off;
136 : uint ages_off;
137 : uint max_age_off;
138 : };
139 : typedef struct fd_block_hash_queue_off fd_block_hash_queue_off_t;
140 : #define FD_BLOCK_HASH_QUEUE_OFF_FOOTPRINT sizeof(fd_block_hash_queue_off_t)
141 : #define FD_BLOCK_HASH_QUEUE_OFF_ALIGN (8UL)
142 :
143 : /* Encoded Size: Fixed (33 bytes) */
144 : struct __attribute__((aligned(8UL))) fd_fee_rate_governor {
145 : ulong target_lamports_per_signature;
146 : ulong target_signatures_per_slot;
147 : ulong min_lamports_per_signature;
148 : ulong max_lamports_per_signature;
149 : uchar burn_percent;
150 : };
151 : typedef struct fd_fee_rate_governor fd_fee_rate_governor_t;
152 0 : #define FD_FEE_RATE_GOVERNOR_FOOTPRINT sizeof(fd_fee_rate_governor_t)
153 0 : #define FD_FEE_RATE_GOVERNOR_ALIGN (8UL)
154 :
155 : struct __attribute__((aligned(8UL))) fd_fee_rate_governor_off {
156 : uint target_lamports_per_signature_off;
157 : uint target_signatures_per_slot_off;
158 : uint min_lamports_per_signature_off;
159 : uint max_lamports_per_signature_off;
160 : uint burn_percent_off;
161 : };
162 : typedef struct fd_fee_rate_governor_off fd_fee_rate_governor_off_t;
163 : #define FD_FEE_RATE_GOVERNOR_OFF_FOOTPRINT sizeof(fd_fee_rate_governor_off_t)
164 : #define FD_FEE_RATE_GOVERNOR_OFF_ALIGN (8UL)
165 :
166 : /* Encoded Size: Fixed (16 bytes) */
167 : struct __attribute__((aligned(8UL))) fd_slot_pair {
168 : ulong slot;
169 : ulong val;
170 : };
171 : typedef struct fd_slot_pair fd_slot_pair_t;
172 0 : #define FD_SLOT_PAIR_FOOTPRINT sizeof(fd_slot_pair_t)
173 0 : #define FD_SLOT_PAIR_ALIGN (8UL)
174 :
175 : struct __attribute__((aligned(8UL))) fd_slot_pair_off {
176 : uint slot_off;
177 : uint val_off;
178 : };
179 : typedef struct fd_slot_pair_off fd_slot_pair_off_t;
180 : #define FD_SLOT_PAIR_OFF_FOOTPRINT sizeof(fd_slot_pair_off_t)
181 : #define FD_SLOT_PAIR_OFF_ALIGN (8UL)
182 :
183 : /* Encoded Size: Dynamic */
184 : struct __attribute__((aligned(8UL))) fd_hard_forks {
185 : ulong hard_forks_len;
186 : fd_slot_pair_t * hard_forks;
187 : };
188 : typedef struct fd_hard_forks fd_hard_forks_t;
189 0 : #define FD_HARD_FORKS_FOOTPRINT sizeof(fd_hard_forks_t)
190 0 : #define FD_HARD_FORKS_ALIGN (8UL)
191 :
192 : struct __attribute__((aligned(8UL))) fd_hard_forks_off {
193 : uint hard_forks_off;
194 : };
195 : typedef struct fd_hard_forks_off fd_hard_forks_off_t;
196 : #define FD_HARD_FORKS_OFF_FOOTPRINT sizeof(fd_hard_forks_off_t)
197 : #define FD_HARD_FORKS_OFF_ALIGN (8UL)
198 :
199 : /* Encoded Size: Fixed (48 bytes) */
200 : struct __attribute__((aligned(8UL))) fd_inflation {
201 : double initial;
202 : double terminal;
203 : double taper;
204 : double foundation;
205 : double foundation_term;
206 : double unused;
207 : };
208 : typedef struct fd_inflation fd_inflation_t;
209 0 : #define FD_INFLATION_FOOTPRINT sizeof(fd_inflation_t)
210 0 : #define FD_INFLATION_ALIGN (8UL)
211 :
212 : struct __attribute__((aligned(8UL))) fd_inflation_off {
213 : uint initial_off;
214 : uint terminal_off;
215 : uint taper_off;
216 : uint foundation_off;
217 : uint foundation_term_off;
218 : uint unused_off;
219 : };
220 : typedef struct fd_inflation_off fd_inflation_off_t;
221 : #define FD_INFLATION_OFF_FOOTPRINT sizeof(fd_inflation_off_t)
222 : #define FD_INFLATION_OFF_ALIGN (8UL)
223 :
224 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/rent.rs#L11 */
225 : /* Encoded Size: Fixed (17 bytes) */
226 : struct __attribute__((aligned(8UL))) fd_rent {
227 : ulong lamports_per_uint8_year;
228 : double exemption_threshold;
229 : uchar burn_percent;
230 : };
231 : typedef struct fd_rent fd_rent_t;
232 0 : #define FD_RENT_FOOTPRINT sizeof(fd_rent_t)
233 0 : #define FD_RENT_ALIGN (8UL)
234 :
235 : struct __attribute__((aligned(8UL))) fd_rent_off {
236 : uint lamports_per_uint8_year_off;
237 : uint exemption_threshold_off;
238 : uint burn_percent_off;
239 : };
240 : typedef struct fd_rent_off fd_rent_off_t;
241 : #define FD_RENT_OFF_FOOTPRINT sizeof(fd_rent_off_t)
242 : #define FD_RENT_OFF_ALIGN (8UL)
243 :
244 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/epoch_schedule.rs#L26 */
245 : /* Encoded Size: Fixed (33 bytes) */
246 : struct __attribute__((aligned(1UL))) fd_epoch_schedule {
247 : ulong slots_per_epoch;
248 : ulong leader_schedule_slot_offset;
249 : uchar warmup;
250 : ulong first_normal_epoch;
251 : ulong first_normal_slot;
252 : };
253 : typedef struct fd_epoch_schedule fd_epoch_schedule_t;
254 6 : #define FD_EPOCH_SCHEDULE_FOOTPRINT sizeof(fd_epoch_schedule_t)
255 0 : #define FD_EPOCH_SCHEDULE_ALIGN (1UL)
256 :
257 : struct __attribute__((aligned(1UL))) fd_epoch_schedule_off {
258 : uint slots_per_epoch_off;
259 : uint leader_schedule_slot_offset_off;
260 : uint warmup_off;
261 : uint first_normal_epoch_off;
262 : uint first_normal_slot_off;
263 : };
264 : typedef struct fd_epoch_schedule_off fd_epoch_schedule_off_t;
265 : #define FD_EPOCH_SCHEDULE_OFF_FOOTPRINT sizeof(fd_epoch_schedule_off_t)
266 : #define FD_EPOCH_SCHEDULE_OFF_ALIGN (1UL)
267 :
268 : /* Encoded Size: Dynamic */
269 : struct __attribute__((aligned(8UL))) fd_rent_collector {
270 : ulong epoch;
271 : fd_epoch_schedule_t epoch_schedule;
272 : double slots_per_year;
273 : fd_rent_t rent;
274 : };
275 : typedef struct fd_rent_collector fd_rent_collector_t;
276 0 : #define FD_RENT_COLLECTOR_FOOTPRINT sizeof(fd_rent_collector_t)
277 0 : #define FD_RENT_COLLECTOR_ALIGN (8UL)
278 :
279 : struct __attribute__((aligned(8UL))) fd_rent_collector_off {
280 : uint epoch_off;
281 : uint epoch_schedule_off;
282 : uint slots_per_year_off;
283 : uint rent_off;
284 : };
285 : typedef struct fd_rent_collector_off fd_rent_collector_off_t;
286 : #define FD_RENT_COLLECTOR_OFF_FOOTPRINT sizeof(fd_rent_collector_off_t)
287 : #define FD_RENT_COLLECTOR_OFF_ALIGN (8UL)
288 :
289 : /* Encoded Size: Fixed (64 bytes) */
290 : struct __attribute__((aligned(8UL))) fd_stake_history_entry {
291 : ulong epoch;
292 : ulong effective;
293 : ulong activating;
294 : ulong deactivating;
295 : ulong parent;
296 : ulong left;
297 : ulong right;
298 : ulong prio;
299 : };
300 : typedef struct fd_stake_history_entry fd_stake_history_entry_t;
301 0 : #define FD_STAKE_HISTORY_ENTRY_FOOTPRINT sizeof(fd_stake_history_entry_t)
302 0 : #define FD_STAKE_HISTORY_ENTRY_ALIGN (8UL)
303 :
304 : struct __attribute__((aligned(8UL))) fd_stake_history_entry_off {
305 : uint epoch_off;
306 : uint effective_off;
307 : uint activating_off;
308 : uint deactivating_off;
309 : uint parent_off;
310 : uint left_off;
311 : uint right_off;
312 : uint prio_off;
313 : };
314 : typedef struct fd_stake_history_entry_off fd_stake_history_entry_off_t;
315 : #define FD_STAKE_HISTORY_ENTRY_OFF_FOOTPRINT sizeof(fd_stake_history_entry_off_t)
316 : #define FD_STAKE_HISTORY_ENTRY_OFF_ALIGN (8UL)
317 :
318 36510 : #define FD_STAKE_HISTORY_MIN 512
319 : #define POOL_NAME fd_stake_history_pool
320 348924 : #define POOL_T fd_stake_history_entry_t
321 82185666 : #define POOL_NEXT parent
322 : #include "../../util/tmpl/fd_pool.c"
323 : static inline fd_stake_history_entry_t *
324 47424 : fd_stake_history_pool_alloc( fd_valloc_t valloc, ulong num ) {
325 47424 : if( FD_UNLIKELY( 0 == num ) ) num = 1; // prevent underflow
326 47424 : return fd_stake_history_pool_join( fd_stake_history_pool_new(
327 47424 : fd_valloc_malloc( valloc,
328 47424 : fd_stake_history_pool_align(),
329 47424 : fd_stake_history_pool_footprint( num ) ),
330 47424 : num ) );
331 47424 : }
332 : #define TREAP_NAME fd_stake_history_treap
333 : #define TREAP_T fd_stake_history_entry_t
334 : #define TREAP_QUERY_T ulong
335 67434 : #define TREAP_CMP(q,e) ((q == (e)->epoch) ? 0 : ((q < (e)->epoch) ? -1 : 1 ) )
336 3331416 : #define TREAP_LT(e0,e1) ((e0)->epoch<(e1)->epoch)
337 : #include "../../util/tmpl/fd_treap.c"
338 : static inline fd_stake_history_treap_t *
339 47424 : fd_stake_history_treap_alloc( fd_valloc_t valloc, ulong num ) {
340 47424 : if( FD_UNLIKELY( 0 == num ) ) num = 1; // prevent underflow
341 47424 : return fd_stake_history_treap_join( fd_stake_history_treap_new(
342 47424 : fd_valloc_malloc( valloc,
343 47424 : fd_stake_history_treap_align(),
344 47424 : fd_stake_history_treap_footprint( num ) ),
345 47424 : num ) );
346 47424 : }
347 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake_history.rs#L12-L75 */
348 : /* Encoded Size: Dynamic */
349 : struct __attribute__((aligned(8UL))) fd_stake_history {
350 : fd_stake_history_entry_t * pool;
351 : fd_stake_history_treap_t * treap;
352 : };
353 : typedef struct fd_stake_history fd_stake_history_t;
354 0 : #define FD_STAKE_HISTORY_FOOTPRINT sizeof(fd_stake_history_t)
355 0 : #define FD_STAKE_HISTORY_ALIGN (8UL)
356 :
357 : struct __attribute__((aligned(8UL))) fd_stake_history_off {
358 : uint fd_stake_history_off;
359 : };
360 : typedef struct fd_stake_history_off fd_stake_history_off_t;
361 : #define FD_STAKE_HISTORY_OFF_FOOTPRINT sizeof(fd_stake_history_off_t)
362 : #define FD_STAKE_HISTORY_OFF_ALIGN (8UL)
363 :
364 : /* https://github.com/anza-xyz/agave/blob/6ac4fe32e28d8ceb4085072b61fa0c6cb09baac1/sdk/src/account.rs#L37 */
365 : /* Encoded Size: Dynamic */
366 : struct __attribute__((aligned(8UL))) fd_solana_account {
367 : ulong lamports;
368 : ulong data_len;
369 : uchar* data;
370 : fd_pubkey_t owner;
371 : uchar executable;
372 : ulong rent_epoch;
373 : };
374 : typedef struct fd_solana_account fd_solana_account_t;
375 0 : #define FD_SOLANA_ACCOUNT_FOOTPRINT sizeof(fd_solana_account_t)
376 0 : #define FD_SOLANA_ACCOUNT_ALIGN (8UL)
377 :
378 : struct __attribute__((aligned(8UL))) fd_solana_account_off {
379 : uint lamports_off;
380 : uint data_off;
381 : uint owner_off;
382 : uint executable_off;
383 : uint rent_epoch_off;
384 : };
385 : typedef struct fd_solana_account_off fd_solana_account_off_t;
386 : #define FD_SOLANA_ACCOUNT_OFF_FOOTPRINT sizeof(fd_solana_account_off_t)
387 : #define FD_SOLANA_ACCOUNT_OFF_ALIGN (8UL)
388 :
389 : /* Encoded Size: Fixed (48 bytes) */
390 : struct __attribute__((packed)) fd_solana_account_stored_meta {
391 : ulong write_version_obsolete;
392 : ulong data_len;
393 : uchar pubkey[32];
394 : };
395 : typedef struct fd_solana_account_stored_meta fd_solana_account_stored_meta_t;
396 : #define FD_SOLANA_ACCOUNT_STORED_META_FOOTPRINT sizeof(fd_solana_account_stored_meta_t)
397 : #define FD_SOLANA_ACCOUNT_STORED_META_ALIGN (8UL)
398 :
399 : struct __attribute__((packed)) fd_solana_account_stored_meta_off {
400 : uint write_version_obsolete_off;
401 : uint data_len_off;
402 : uint pubkey_off;
403 : };
404 : typedef struct fd_solana_account_stored_meta_off fd_solana_account_stored_meta_off_t;
405 : #define FD_SOLANA_ACCOUNT_STORED_META_OFF_FOOTPRINT sizeof(fd_solana_account_stored_meta_off_t)
406 : #define FD_SOLANA_ACCOUNT_STORED_META_OFF_ALIGN (8UL)
407 :
408 : /* Encoded Size: Fixed (52 bytes) */
409 : struct __attribute__((packed)) fd_solana_account_meta {
410 : ulong lamports;
411 : ulong rent_epoch;
412 : uchar owner[32];
413 : uchar executable;
414 : uchar padding[3];
415 : };
416 : typedef struct fd_solana_account_meta fd_solana_account_meta_t;
417 : #define FD_SOLANA_ACCOUNT_META_FOOTPRINT sizeof(fd_solana_account_meta_t)
418 : #define FD_SOLANA_ACCOUNT_META_ALIGN (8UL)
419 :
420 : struct __attribute__((packed)) fd_solana_account_meta_off {
421 : uint lamports_off;
422 : uint rent_epoch_off;
423 : uint owner_off;
424 : uint executable_off;
425 : uint padding_off;
426 : };
427 : typedef struct fd_solana_account_meta_off fd_solana_account_meta_off_t;
428 : #define FD_SOLANA_ACCOUNT_META_OFF_FOOTPRINT sizeof(fd_solana_account_meta_off_t)
429 : #define FD_SOLANA_ACCOUNT_META_OFF_ALIGN (8UL)
430 :
431 : /* Encoded Size: Dynamic */
432 : struct __attribute__((packed)) fd_solana_account_hdr {
433 : fd_solana_account_stored_meta_t meta;
434 : fd_solana_account_meta_t info;
435 : uchar padding[4];
436 : fd_hash_t hash;
437 : };
438 : typedef struct fd_solana_account_hdr fd_solana_account_hdr_t;
439 : #define FD_SOLANA_ACCOUNT_HDR_FOOTPRINT sizeof(fd_solana_account_hdr_t)
440 : #define FD_SOLANA_ACCOUNT_HDR_ALIGN (8UL)
441 :
442 : struct __attribute__((packed)) fd_solana_account_hdr_off {
443 : uint meta_off;
444 : uint info_off;
445 : uint padding_off;
446 : uint hash_off;
447 : };
448 : typedef struct fd_solana_account_hdr_off fd_solana_account_hdr_off_t;
449 : #define FD_SOLANA_ACCOUNT_HDR_OFF_FOOTPRINT sizeof(fd_solana_account_hdr_off_t)
450 : #define FD_SOLANA_ACCOUNT_HDR_OFF_ALIGN (8UL)
451 :
452 : /* Encoded Size: Dynamic */
453 : struct __attribute__((packed)) fd_account_meta {
454 : ushort magic;
455 : ushort hlen;
456 : ulong dlen;
457 : uchar hash[32];
458 : ulong slot;
459 : fd_solana_account_meta_t info;
460 : };
461 : typedef struct fd_account_meta fd_account_meta_t;
462 1192767 : #define FD_ACCOUNT_META_FOOTPRINT sizeof(fd_account_meta_t)
463 0 : #define FD_ACCOUNT_META_ALIGN (8UL)
464 :
465 : struct __attribute__((packed)) fd_account_meta_off {
466 : uint magic_off;
467 : uint hlen_off;
468 : uint dlen_off;
469 : uint hash_off;
470 : uint slot_off;
471 : uint info_off;
472 : };
473 : typedef struct fd_account_meta_off fd_account_meta_off_t;
474 : #define FD_ACCOUNT_META_OFF_FOOTPRINT sizeof(fd_account_meta_off_t)
475 : #define FD_ACCOUNT_META_OFF_ALIGN (8UL)
476 :
477 : /* Encoded Size: Dynamic */
478 : struct __attribute__((aligned(8UL))) fd_vote_accounts_pair {
479 : fd_pubkey_t key;
480 : ulong stake;
481 : fd_solana_vote_account_t value;
482 : };
483 : typedef struct fd_vote_accounts_pair fd_vote_accounts_pair_t;
484 0 : #define FD_VOTE_ACCOUNTS_PAIR_FOOTPRINT sizeof(fd_vote_accounts_pair_t)
485 0 : #define FD_VOTE_ACCOUNTS_PAIR_ALIGN (8UL)
486 :
487 : struct __attribute__((aligned(8UL))) fd_vote_accounts_pair_off {
488 : uint key_off;
489 : uint stake_off;
490 : uint value_off;
491 : };
492 : typedef struct fd_vote_accounts_pair_off fd_vote_accounts_pair_off_t;
493 : #define FD_VOTE_ACCOUNTS_PAIR_OFF_FOOTPRINT sizeof(fd_vote_accounts_pair_off_t)
494 : #define FD_VOTE_ACCOUNTS_PAIR_OFF_ALIGN (8UL)
495 :
496 : typedef struct fd_vote_accounts_pair_t_mapnode fd_vote_accounts_pair_t_mapnode_t;
497 : #define REDBLK_T fd_vote_accounts_pair_t_mapnode_t
498 : #define REDBLK_NAME fd_vote_accounts_pair_t_map
499 : #define REDBLK_IMPL_STYLE 1
500 : #include "../../util/tmpl/fd_redblack.c"
501 : #undef REDBLK_T
502 : #undef REDBLK_NAME
503 : struct fd_vote_accounts_pair_t_mapnode {
504 : fd_vote_accounts_pair_t elem;
505 : ulong redblack_parent;
506 : ulong redblack_left;
507 : ulong redblack_right;
508 : int redblack_color;
509 : };
510 : static inline fd_vote_accounts_pair_t_mapnode_t *
511 6 : fd_vote_accounts_pair_t_map_alloc( fd_valloc_t valloc, ulong len ) {
512 6 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
513 6 : void * mem = fd_valloc_malloc( valloc, fd_vote_accounts_pair_t_map_align(), fd_vote_accounts_pair_t_map_footprint(len));
514 6 : return fd_vote_accounts_pair_t_map_join(fd_vote_accounts_pair_t_map_new(mem, len));
515 6 : }
516 : /* Encoded Size: Dynamic */
517 : struct __attribute__((aligned(8UL))) fd_vote_accounts {
518 : fd_vote_accounts_pair_t_mapnode_t * vote_accounts_pool;
519 : fd_vote_accounts_pair_t_mapnode_t * vote_accounts_root;
520 : };
521 : typedef struct fd_vote_accounts fd_vote_accounts_t;
522 0 : #define FD_VOTE_ACCOUNTS_FOOTPRINT sizeof(fd_vote_accounts_t)
523 0 : #define FD_VOTE_ACCOUNTS_ALIGN (8UL)
524 :
525 : struct __attribute__((aligned(8UL))) fd_vote_accounts_off {
526 : uint vote_accounts_off;
527 : };
528 : typedef struct fd_vote_accounts_off fd_vote_accounts_off_t;
529 : #define FD_VOTE_ACCOUNTS_OFF_FOOTPRINT sizeof(fd_vote_accounts_off_t)
530 : #define FD_VOTE_ACCOUNTS_OFF_ALIGN (8UL)
531 :
532 : /* Encoded Size: Fixed (36 bytes) */
533 : struct __attribute__((aligned(8UL))) fd_stake_accounts_pair {
534 : fd_pubkey_t key;
535 : uint exists;
536 : };
537 : typedef struct fd_stake_accounts_pair fd_stake_accounts_pair_t;
538 0 : #define FD_STAKE_ACCOUNTS_PAIR_FOOTPRINT sizeof(fd_stake_accounts_pair_t)
539 0 : #define FD_STAKE_ACCOUNTS_PAIR_ALIGN (8UL)
540 :
541 : struct __attribute__((aligned(8UL))) fd_stake_accounts_pair_off {
542 : uint key_off;
543 : uint exists_off;
544 : };
545 : typedef struct fd_stake_accounts_pair_off fd_stake_accounts_pair_off_t;
546 : #define FD_STAKE_ACCOUNTS_PAIR_OFF_FOOTPRINT sizeof(fd_stake_accounts_pair_off_t)
547 : #define FD_STAKE_ACCOUNTS_PAIR_OFF_ALIGN (8UL)
548 :
549 : typedef struct fd_stake_accounts_pair_t_mapnode fd_stake_accounts_pair_t_mapnode_t;
550 : #define REDBLK_T fd_stake_accounts_pair_t_mapnode_t
551 : #define REDBLK_NAME fd_stake_accounts_pair_t_map
552 : #define REDBLK_IMPL_STYLE 1
553 : #include "../../util/tmpl/fd_redblack.c"
554 : #undef REDBLK_T
555 : #undef REDBLK_NAME
556 : struct fd_stake_accounts_pair_t_mapnode {
557 : fd_stake_accounts_pair_t elem;
558 : ulong redblack_parent;
559 : ulong redblack_left;
560 : ulong redblack_right;
561 : int redblack_color;
562 : };
563 : static inline fd_stake_accounts_pair_t_mapnode_t *
564 0 : fd_stake_accounts_pair_t_map_alloc( fd_valloc_t valloc, ulong len ) {
565 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
566 0 : void * mem = fd_valloc_malloc( valloc, fd_stake_accounts_pair_t_map_align(), fd_stake_accounts_pair_t_map_footprint(len));
567 0 : return fd_stake_accounts_pair_t_map_join(fd_stake_accounts_pair_t_map_new(mem, len));
568 0 : }
569 : /* Encoded Size: Dynamic */
570 : struct __attribute__((aligned(8UL))) fd_stake_accounts {
571 : fd_stake_accounts_pair_t_mapnode_t * stake_accounts_pool;
572 : fd_stake_accounts_pair_t_mapnode_t * stake_accounts_root;
573 : };
574 : typedef struct fd_stake_accounts fd_stake_accounts_t;
575 0 : #define FD_STAKE_ACCOUNTS_FOOTPRINT sizeof(fd_stake_accounts_t)
576 0 : #define FD_STAKE_ACCOUNTS_ALIGN (8UL)
577 :
578 : struct __attribute__((aligned(8UL))) fd_stake_accounts_off {
579 : uint stake_accounts_off;
580 : };
581 : typedef struct fd_stake_accounts_off fd_stake_accounts_off_t;
582 : #define FD_STAKE_ACCOUNTS_OFF_FOOTPRINT sizeof(fd_stake_accounts_off_t)
583 : #define FD_STAKE_ACCOUNTS_OFF_ALIGN (8UL)
584 :
585 : /* fd_stake_weight_t assigns an Ed25519 public key (node identity) a stake weight number measured in lamports */
586 : /* Encoded Size: Fixed (40 bytes) */
587 : struct __attribute__((aligned(8UL))) fd_stake_weight {
588 : fd_pubkey_t key;
589 : ulong stake;
590 : };
591 : typedef struct fd_stake_weight fd_stake_weight_t;
592 0 : #define FD_STAKE_WEIGHT_FOOTPRINT sizeof(fd_stake_weight_t)
593 0 : #define FD_STAKE_WEIGHT_ALIGN (8UL)
594 :
595 : struct __attribute__((aligned(8UL))) fd_stake_weight_off {
596 : uint key_off;
597 : uint stake_off;
598 : };
599 : typedef struct fd_stake_weight_off fd_stake_weight_off_t;
600 : #define FD_STAKE_WEIGHT_OFF_FOOTPRINT sizeof(fd_stake_weight_off_t)
601 : #define FD_STAKE_WEIGHT_OFF_ALIGN (8UL)
602 :
603 : typedef struct fd_stake_weight_t_mapnode fd_stake_weight_t_mapnode_t;
604 : #define REDBLK_T fd_stake_weight_t_mapnode_t
605 : #define REDBLK_NAME fd_stake_weight_t_map
606 : #define REDBLK_IMPL_STYLE 1
607 : #include "../../util/tmpl/fd_redblack.c"
608 : #undef REDBLK_T
609 : #undef REDBLK_NAME
610 : struct fd_stake_weight_t_mapnode {
611 : fd_stake_weight_t elem;
612 : ulong redblack_parent;
613 : ulong redblack_left;
614 : ulong redblack_right;
615 : int redblack_color;
616 : };
617 : static inline fd_stake_weight_t_mapnode_t *
618 0 : fd_stake_weight_t_map_alloc( fd_valloc_t valloc, ulong len ) {
619 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
620 0 : void * mem = fd_valloc_malloc( valloc, fd_stake_weight_t_map_align(), fd_stake_weight_t_map_footprint(len));
621 0 : return fd_stake_weight_t_map_join(fd_stake_weight_t_map_new(mem, len));
622 0 : }
623 : /* Encoded Size: Dynamic */
624 : struct __attribute__((aligned(8UL))) fd_stake_weights {
625 : fd_stake_weight_t_mapnode_t * stake_weights_pool;
626 : fd_stake_weight_t_mapnode_t * stake_weights_root;
627 : };
628 : typedef struct fd_stake_weights fd_stake_weights_t;
629 0 : #define FD_STAKE_WEIGHTS_FOOTPRINT sizeof(fd_stake_weights_t)
630 0 : #define FD_STAKE_WEIGHTS_ALIGN (8UL)
631 :
632 : struct __attribute__((aligned(8UL))) fd_stake_weights_off {
633 : uint stake_weights_off;
634 : };
635 : typedef struct fd_stake_weights_off fd_stake_weights_off_t;
636 : #define FD_STAKE_WEIGHTS_OFF_FOOTPRINT sizeof(fd_stake_weights_off_t)
637 : #define FD_STAKE_WEIGHTS_OFF_ALIGN (8UL)
638 :
639 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L303 */
640 : /* Encoded Size: Fixed (64 bytes) */
641 : struct __attribute__((aligned(8UL))) fd_delegation {
642 : fd_pubkey_t voter_pubkey;
643 : ulong stake;
644 : ulong activation_epoch;
645 : ulong deactivation_epoch;
646 : double warmup_cooldown_rate;
647 : };
648 : typedef struct fd_delegation fd_delegation_t;
649 0 : #define FD_DELEGATION_FOOTPRINT sizeof(fd_delegation_t)
650 0 : #define FD_DELEGATION_ALIGN (8UL)
651 :
652 : struct __attribute__((aligned(8UL))) fd_delegation_off {
653 : uint voter_pubkey_off;
654 : uint stake_off;
655 : uint activation_epoch_off;
656 : uint deactivation_epoch_off;
657 : uint warmup_cooldown_rate_off;
658 : };
659 : typedef struct fd_delegation_off fd_delegation_off_t;
660 : #define FD_DELEGATION_OFF_FOOTPRINT sizeof(fd_delegation_off_t)
661 : #define FD_DELEGATION_OFF_ALIGN (8UL)
662 :
663 : /* Encoded Size: Dynamic */
664 : struct __attribute__((aligned(8UL))) fd_delegation_pair {
665 : fd_pubkey_t account;
666 : fd_delegation_t delegation;
667 : };
668 : typedef struct fd_delegation_pair fd_delegation_pair_t;
669 0 : #define FD_DELEGATION_PAIR_FOOTPRINT sizeof(fd_delegation_pair_t)
670 0 : #define FD_DELEGATION_PAIR_ALIGN (8UL)
671 :
672 : struct __attribute__((aligned(8UL))) fd_delegation_pair_off {
673 : uint account_off;
674 : uint delegation_off;
675 : };
676 : typedef struct fd_delegation_pair_off fd_delegation_pair_off_t;
677 : #define FD_DELEGATION_PAIR_OFF_FOOTPRINT sizeof(fd_delegation_pair_off_t)
678 : #define FD_DELEGATION_PAIR_OFF_ALIGN (8UL)
679 :
680 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L539 */
681 : /* Encoded Size: Dynamic */
682 : struct __attribute__((aligned(8UL))) fd_stake {
683 : fd_delegation_t delegation;
684 : ulong credits_observed;
685 : };
686 : typedef struct fd_stake fd_stake_t;
687 0 : #define FD_STAKE_FOOTPRINT sizeof(fd_stake_t)
688 0 : #define FD_STAKE_ALIGN (8UL)
689 :
690 : struct __attribute__((aligned(8UL))) fd_stake_off {
691 : uint delegation_off;
692 : uint credits_observed_off;
693 : };
694 : typedef struct fd_stake_off fd_stake_off_t;
695 : #define FD_STAKE_OFF_FOOTPRINT sizeof(fd_stake_off_t)
696 : #define FD_STAKE_OFF_ALIGN (8UL)
697 :
698 : /* Encoded Size: Dynamic */
699 : struct __attribute__((aligned(8UL))) fd_stake_pair {
700 : fd_pubkey_t account;
701 : fd_stake_t stake;
702 : };
703 : typedef struct fd_stake_pair fd_stake_pair_t;
704 0 : #define FD_STAKE_PAIR_FOOTPRINT sizeof(fd_stake_pair_t)
705 0 : #define FD_STAKE_PAIR_ALIGN (8UL)
706 :
707 : struct __attribute__((aligned(8UL))) fd_stake_pair_off {
708 : uint account_off;
709 : uint stake_off;
710 : };
711 : typedef struct fd_stake_pair_off fd_stake_pair_off_t;
712 : #define FD_STAKE_PAIR_OFF_FOOTPRINT sizeof(fd_stake_pair_off_t)
713 : #define FD_STAKE_PAIR_OFF_ALIGN (8UL)
714 :
715 : typedef struct fd_delegation_pair_t_mapnode fd_delegation_pair_t_mapnode_t;
716 : #define REDBLK_T fd_delegation_pair_t_mapnode_t
717 : #define REDBLK_NAME fd_delegation_pair_t_map
718 : #define REDBLK_IMPL_STYLE 1
719 : #include "../../util/tmpl/fd_redblack.c"
720 : #undef REDBLK_T
721 : #undef REDBLK_NAME
722 : struct fd_delegation_pair_t_mapnode {
723 : fd_delegation_pair_t elem;
724 : ulong redblack_parent;
725 : ulong redblack_left;
726 : ulong redblack_right;
727 : int redblack_color;
728 : };
729 : static inline fd_delegation_pair_t_mapnode_t *
730 6 : fd_delegation_pair_t_map_alloc( fd_valloc_t valloc, ulong len ) {
731 6 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
732 6 : void * mem = fd_valloc_malloc( valloc, fd_delegation_pair_t_map_align(), fd_delegation_pair_t_map_footprint(len));
733 6 : return fd_delegation_pair_t_map_join(fd_delegation_pair_t_map_new(mem, len));
734 6 : }
735 : /* https://github.com/anza-xyz/agave/blob/beb3f582f784a96e59e06ef8f34e855258bcd98c/runtime/src/stakes.rs#L202 */
736 : /* Encoded Size: Dynamic */
737 : struct __attribute__((aligned(8UL))) fd_stakes {
738 : fd_vote_accounts_t vote_accounts;
739 : fd_delegation_pair_t_mapnode_t * stake_delegations_pool;
740 : fd_delegation_pair_t_mapnode_t * stake_delegations_root;
741 : ulong unused;
742 : ulong epoch;
743 : fd_stake_history_t stake_history;
744 : };
745 : typedef struct fd_stakes fd_stakes_t;
746 0 : #define FD_STAKES_FOOTPRINT sizeof(fd_stakes_t)
747 0 : #define FD_STAKES_ALIGN (8UL)
748 :
749 : struct __attribute__((aligned(8UL))) fd_stakes_off {
750 : uint vote_accounts_off;
751 : uint stake_delegations_off;
752 : uint unused_off;
753 : uint epoch_off;
754 : uint stake_history_off;
755 : };
756 : typedef struct fd_stakes_off fd_stakes_off_t;
757 : #define FD_STAKES_OFF_FOOTPRINT sizeof(fd_stakes_off_t)
758 : #define FD_STAKES_OFF_ALIGN (8UL)
759 :
760 : typedef struct fd_stake_pair_t_mapnode fd_stake_pair_t_mapnode_t;
761 : #define REDBLK_T fd_stake_pair_t_mapnode_t
762 : #define REDBLK_NAME fd_stake_pair_t_map
763 : #define REDBLK_IMPL_STYLE 1
764 : #include "../../util/tmpl/fd_redblack.c"
765 : #undef REDBLK_T
766 : #undef REDBLK_NAME
767 : struct fd_stake_pair_t_mapnode {
768 : fd_stake_pair_t elem;
769 : ulong redblack_parent;
770 : ulong redblack_left;
771 : ulong redblack_right;
772 : int redblack_color;
773 : };
774 : static inline fd_stake_pair_t_mapnode_t *
775 0 : fd_stake_pair_t_map_alloc( fd_valloc_t valloc, ulong len ) {
776 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
777 0 : void * mem = fd_valloc_malloc( valloc, fd_stake_pair_t_map_align(), fd_stake_pair_t_map_footprint(len));
778 0 : return fd_stake_pair_t_map_join(fd_stake_pair_t_map_new(mem, len));
779 0 : }
780 : /* https://github.com/anza-xyz/agave/blob/beb3f582f784a96e59e06ef8f34e855258bcd98c/runtime/src/stakes.rs#L202 */
781 : /* Encoded Size: Dynamic */
782 : struct __attribute__((aligned(8UL))) fd_stakes_stake {
783 : fd_vote_accounts_t vote_accounts;
784 : fd_stake_pair_t_mapnode_t * stake_delegations_pool;
785 : fd_stake_pair_t_mapnode_t * stake_delegations_root;
786 : ulong unused;
787 : ulong epoch;
788 : fd_stake_history_t stake_history;
789 : };
790 : typedef struct fd_stakes_stake fd_stakes_stake_t;
791 0 : #define FD_STAKES_STAKE_FOOTPRINT sizeof(fd_stakes_stake_t)
792 0 : #define FD_STAKES_STAKE_ALIGN (8UL)
793 :
794 : struct __attribute__((aligned(8UL))) fd_stakes_stake_off {
795 : uint vote_accounts_off;
796 : uint stake_delegations_off;
797 : uint unused_off;
798 : uint epoch_off;
799 : uint stake_history_off;
800 : };
801 : typedef struct fd_stakes_stake_off fd_stakes_stake_off_t;
802 : #define FD_STAKES_STAKE_OFF_FOOTPRINT sizeof(fd_stakes_stake_off_t)
803 : #define FD_STAKES_STAKE_OFF_ALIGN (8UL)
804 :
805 : /* Encoded Size: Dynamic */
806 : struct __attribute__((aligned(8UL))) fd_bank_incremental_snapshot_persistence {
807 : ulong full_slot;
808 : fd_hash_t full_hash;
809 : ulong full_capitalization;
810 : fd_hash_t incremental_hash;
811 : ulong incremental_capitalization;
812 : };
813 : typedef struct fd_bank_incremental_snapshot_persistence fd_bank_incremental_snapshot_persistence_t;
814 0 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_FOOTPRINT sizeof(fd_bank_incremental_snapshot_persistence_t)
815 0 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_ALIGN (8UL)
816 :
817 : struct __attribute__((aligned(8UL))) fd_bank_incremental_snapshot_persistence_off {
818 : uint full_slot_off;
819 : uint full_hash_off;
820 : uint full_capitalization_off;
821 : uint incremental_hash_off;
822 : uint incremental_capitalization_off;
823 : };
824 : typedef struct fd_bank_incremental_snapshot_persistence_off fd_bank_incremental_snapshot_persistence_off_t;
825 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_OFF_FOOTPRINT sizeof(fd_bank_incremental_snapshot_persistence_off_t)
826 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_OFF_ALIGN (8UL)
827 :
828 : /* Encoded Size: Dynamic */
829 : struct __attribute__((aligned(8UL))) fd_node_vote_accounts {
830 : ulong vote_accounts_len;
831 : fd_pubkey_t * vote_accounts;
832 : ulong total_stake;
833 : };
834 : typedef struct fd_node_vote_accounts fd_node_vote_accounts_t;
835 0 : #define FD_NODE_VOTE_ACCOUNTS_FOOTPRINT sizeof(fd_node_vote_accounts_t)
836 0 : #define FD_NODE_VOTE_ACCOUNTS_ALIGN (8UL)
837 :
838 : struct __attribute__((aligned(8UL))) fd_node_vote_accounts_off {
839 : uint vote_accounts_off;
840 : uint total_stake_off;
841 : };
842 : typedef struct fd_node_vote_accounts_off fd_node_vote_accounts_off_t;
843 : #define FD_NODE_VOTE_ACCOUNTS_OFF_FOOTPRINT sizeof(fd_node_vote_accounts_off_t)
844 : #define FD_NODE_VOTE_ACCOUNTS_OFF_ALIGN (8UL)
845 :
846 : /* Encoded Size: Dynamic */
847 : struct __attribute__((aligned(8UL))) fd_pubkey_node_vote_accounts_pair {
848 : fd_pubkey_t key;
849 : fd_node_vote_accounts_t value;
850 : };
851 : typedef struct fd_pubkey_node_vote_accounts_pair fd_pubkey_node_vote_accounts_pair_t;
852 0 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_FOOTPRINT sizeof(fd_pubkey_node_vote_accounts_pair_t)
853 0 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_ALIGN (8UL)
854 :
855 : struct __attribute__((aligned(8UL))) fd_pubkey_node_vote_accounts_pair_off {
856 : uint key_off;
857 : uint value_off;
858 : };
859 : typedef struct fd_pubkey_node_vote_accounts_pair_off fd_pubkey_node_vote_accounts_pair_off_t;
860 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_OFF_FOOTPRINT sizeof(fd_pubkey_node_vote_accounts_pair_off_t)
861 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_OFF_ALIGN (8UL)
862 :
863 : /* Encoded Size: Fixed (64 bytes) */
864 : struct __attribute__((aligned(8UL))) fd_pubkey_pubkey_pair {
865 : fd_pubkey_t key;
866 : fd_pubkey_t value;
867 : };
868 : typedef struct fd_pubkey_pubkey_pair fd_pubkey_pubkey_pair_t;
869 0 : #define FD_PUBKEY_PUBKEY_PAIR_FOOTPRINT sizeof(fd_pubkey_pubkey_pair_t)
870 0 : #define FD_PUBKEY_PUBKEY_PAIR_ALIGN (8UL)
871 :
872 : struct __attribute__((aligned(8UL))) fd_pubkey_pubkey_pair_off {
873 : uint key_off;
874 : uint value_off;
875 : };
876 : typedef struct fd_pubkey_pubkey_pair_off fd_pubkey_pubkey_pair_off_t;
877 : #define FD_PUBKEY_PUBKEY_PAIR_OFF_FOOTPRINT sizeof(fd_pubkey_pubkey_pair_off_t)
878 : #define FD_PUBKEY_PUBKEY_PAIR_OFF_ALIGN (8UL)
879 :
880 : /* Encoded Size: Dynamic */
881 : struct __attribute__((aligned(8UL))) fd_epoch_stakes {
882 : fd_stakes_t stakes;
883 : ulong total_stake;
884 : ulong node_id_to_vote_accounts_len;
885 : fd_pubkey_node_vote_accounts_pair_t * node_id_to_vote_accounts;
886 : ulong epoch_authorized_voters_len;
887 : fd_pubkey_pubkey_pair_t * epoch_authorized_voters;
888 : };
889 : typedef struct fd_epoch_stakes fd_epoch_stakes_t;
890 0 : #define FD_EPOCH_STAKES_FOOTPRINT sizeof(fd_epoch_stakes_t)
891 0 : #define FD_EPOCH_STAKES_ALIGN (8UL)
892 :
893 : struct __attribute__((aligned(8UL))) fd_epoch_stakes_off {
894 : uint stakes_off;
895 : uint total_stake_off;
896 : uint node_id_to_vote_accounts_off;
897 : uint epoch_authorized_voters_off;
898 : };
899 : typedef struct fd_epoch_stakes_off fd_epoch_stakes_off_t;
900 : #define FD_EPOCH_STAKES_OFF_FOOTPRINT sizeof(fd_epoch_stakes_off_t)
901 : #define FD_EPOCH_STAKES_OFF_ALIGN (8UL)
902 :
903 : /* Encoded Size: Dynamic */
904 : struct __attribute__((aligned(8UL))) fd_epoch_epoch_stakes_pair {
905 : ulong key;
906 : fd_epoch_stakes_t value;
907 : };
908 : typedef struct fd_epoch_epoch_stakes_pair fd_epoch_epoch_stakes_pair_t;
909 0 : #define FD_EPOCH_EPOCH_STAKES_PAIR_FOOTPRINT sizeof(fd_epoch_epoch_stakes_pair_t)
910 0 : #define FD_EPOCH_EPOCH_STAKES_PAIR_ALIGN (8UL)
911 :
912 : struct __attribute__((aligned(8UL))) fd_epoch_epoch_stakes_pair_off {
913 : uint key_off;
914 : uint value_off;
915 : };
916 : typedef struct fd_epoch_epoch_stakes_pair_off fd_epoch_epoch_stakes_pair_off_t;
917 : #define FD_EPOCH_EPOCH_STAKES_PAIR_OFF_FOOTPRINT sizeof(fd_epoch_epoch_stakes_pair_off_t)
918 : #define FD_EPOCH_EPOCH_STAKES_PAIR_OFF_ALIGN (8UL)
919 :
920 : /* Encoded Size: Fixed (40 bytes) */
921 : struct __attribute__((aligned(8UL))) fd_pubkey_u64_pair {
922 : fd_pubkey_t _0;
923 : ulong _1;
924 : };
925 : typedef struct fd_pubkey_u64_pair fd_pubkey_u64_pair_t;
926 0 : #define FD_PUBKEY_U64_PAIR_FOOTPRINT sizeof(fd_pubkey_u64_pair_t)
927 0 : #define FD_PUBKEY_U64_PAIR_ALIGN (8UL)
928 :
929 : struct __attribute__((aligned(8UL))) fd_pubkey_u64_pair_off {
930 : uint _0_off;
931 : uint _1_off;
932 : };
933 : typedef struct fd_pubkey_u64_pair_off fd_pubkey_u64_pair_off_t;
934 : #define FD_PUBKEY_U64_PAIR_OFF_FOOTPRINT sizeof(fd_pubkey_u64_pair_off_t)
935 : #define FD_PUBKEY_U64_PAIR_OFF_ALIGN (8UL)
936 :
937 : /* Encoded Size: Dynamic */
938 : struct __attribute__((aligned(8UL))) fd_unused_accounts {
939 : ulong unused1_len;
940 : fd_pubkey_t * unused1;
941 : ulong unused2_len;
942 : fd_pubkey_t * unused2;
943 : ulong unused3_len;
944 : fd_pubkey_u64_pair_t * unused3;
945 : };
946 : typedef struct fd_unused_accounts fd_unused_accounts_t;
947 0 : #define FD_UNUSED_ACCOUNTS_FOOTPRINT sizeof(fd_unused_accounts_t)
948 0 : #define FD_UNUSED_ACCOUNTS_ALIGN (8UL)
949 :
950 : struct __attribute__((aligned(8UL))) fd_unused_accounts_off {
951 : uint unused1_off;
952 : uint unused2_off;
953 : uint unused3_off;
954 : };
955 : typedef struct fd_unused_accounts_off fd_unused_accounts_off_t;
956 : #define FD_UNUSED_ACCOUNTS_OFF_FOOTPRINT sizeof(fd_unused_accounts_off_t)
957 : #define FD_UNUSED_ACCOUNTS_OFF_ALIGN (8UL)
958 :
959 : /* https://github.com/solana-labs/solana/blob/88aeaa82a856fc807234e7da0b31b89f2dc0e091/runtime/src/bank.rs#L967 */
960 : /* Encoded Size: Dynamic */
961 : struct __attribute__((aligned(16UL))) fd_deserializable_versioned_bank {
962 : fd_block_hash_vec_t blockhash_queue;
963 : ulong ancestors_len;
964 : fd_slot_pair_t * ancestors;
965 : fd_hash_t hash;
966 : fd_hash_t parent_hash;
967 : ulong parent_slot;
968 : fd_hard_forks_t hard_forks;
969 : ulong transaction_count;
970 : ulong tick_height;
971 : ulong signature_count;
972 : ulong capitalization;
973 : ulong max_tick_height;
974 : ulong* hashes_per_tick;
975 : ulong ticks_per_slot;
976 : uint128 ns_per_slot;
977 : ulong genesis_creation_time;
978 : double slots_per_year;
979 : ulong accounts_data_len;
980 : ulong slot;
981 : ulong epoch;
982 : ulong block_height;
983 : fd_pubkey_t collector_id;
984 : ulong collector_fees;
985 : fd_fee_calculator_t fee_calculator;
986 : fd_fee_rate_governor_t fee_rate_governor;
987 : ulong collected_rent;
988 : fd_rent_collector_t rent_collector;
989 : fd_epoch_schedule_t epoch_schedule;
990 : fd_inflation_t inflation;
991 : fd_stakes_t stakes;
992 : fd_unused_accounts_t unused_accounts;
993 : ulong epoch_stakes_len;
994 : fd_epoch_epoch_stakes_pair_t * epoch_stakes;
995 : uchar is_delta;
996 : };
997 : typedef struct fd_deserializable_versioned_bank fd_deserializable_versioned_bank_t;
998 0 : #define FD_DESERIALIZABLE_VERSIONED_BANK_FOOTPRINT sizeof(fd_deserializable_versioned_bank_t)
999 0 : #define FD_DESERIALIZABLE_VERSIONED_BANK_ALIGN (16UL)
1000 :
1001 : struct __attribute__((aligned(16UL))) fd_deserializable_versioned_bank_off {
1002 : uint blockhash_queue_off;
1003 : uint ancestors_off;
1004 : uint hash_off;
1005 : uint parent_hash_off;
1006 : uint parent_slot_off;
1007 : uint hard_forks_off;
1008 : uint transaction_count_off;
1009 : uint tick_height_off;
1010 : uint signature_count_off;
1011 : uint capitalization_off;
1012 : uint max_tick_height_off;
1013 : uint hashes_per_tick_off;
1014 : uint ticks_per_slot_off;
1015 : uint ns_per_slot_off;
1016 : uint genesis_creation_time_off;
1017 : uint slots_per_year_off;
1018 : uint accounts_data_len_off;
1019 : uint slot_off;
1020 : uint epoch_off;
1021 : uint block_height_off;
1022 : uint collector_id_off;
1023 : uint collector_fees_off;
1024 : uint fee_calculator_off;
1025 : uint fee_rate_governor_off;
1026 : uint collected_rent_off;
1027 : uint rent_collector_off;
1028 : uint epoch_schedule_off;
1029 : uint inflation_off;
1030 : uint stakes_off;
1031 : uint unused_accounts_off;
1032 : uint epoch_stakes_off;
1033 : uint is_delta_off;
1034 : };
1035 : typedef struct fd_deserializable_versioned_bank_off fd_deserializable_versioned_bank_off_t;
1036 : #define FD_DESERIALIZABLE_VERSIONED_BANK_OFF_FOOTPRINT sizeof(fd_deserializable_versioned_bank_off_t)
1037 : #define FD_DESERIALIZABLE_VERSIONED_BANK_OFF_ALIGN (16UL)
1038 :
1039 : /* Encoded Size: Fixed (40 bytes) */
1040 : struct __attribute__((aligned(8UL))) fd_bank_hash_stats {
1041 : ulong num_updated_accounts;
1042 : ulong num_removed_accounts;
1043 : ulong num_lamports_stored;
1044 : ulong total_data_len;
1045 : ulong num_executable_accounts;
1046 : };
1047 : typedef struct fd_bank_hash_stats fd_bank_hash_stats_t;
1048 0 : #define FD_BANK_HASH_STATS_FOOTPRINT sizeof(fd_bank_hash_stats_t)
1049 0 : #define FD_BANK_HASH_STATS_ALIGN (8UL)
1050 :
1051 : struct __attribute__((aligned(8UL))) fd_bank_hash_stats_off {
1052 : uint num_updated_accounts_off;
1053 : uint num_removed_accounts_off;
1054 : uint num_lamports_stored_off;
1055 : uint total_data_len_off;
1056 : uint num_executable_accounts_off;
1057 : };
1058 : typedef struct fd_bank_hash_stats_off fd_bank_hash_stats_off_t;
1059 : #define FD_BANK_HASH_STATS_OFF_FOOTPRINT sizeof(fd_bank_hash_stats_off_t)
1060 : #define FD_BANK_HASH_STATS_OFF_ALIGN (8UL)
1061 :
1062 : /* Encoded Size: Dynamic */
1063 : struct __attribute__((aligned(8UL))) fd_bank_hash_info {
1064 : fd_hash_t hash;
1065 : fd_hash_t snapshot_hash;
1066 : fd_bank_hash_stats_t stats;
1067 : };
1068 : typedef struct fd_bank_hash_info fd_bank_hash_info_t;
1069 0 : #define FD_BANK_HASH_INFO_FOOTPRINT sizeof(fd_bank_hash_info_t)
1070 0 : #define FD_BANK_HASH_INFO_ALIGN (8UL)
1071 :
1072 : struct __attribute__((aligned(8UL))) fd_bank_hash_info_off {
1073 : uint hash_off;
1074 : uint snapshot_hash_off;
1075 : uint stats_off;
1076 : };
1077 : typedef struct fd_bank_hash_info_off fd_bank_hash_info_off_t;
1078 : #define FD_BANK_HASH_INFO_OFF_FOOTPRINT sizeof(fd_bank_hash_info_off_t)
1079 : #define FD_BANK_HASH_INFO_OFF_ALIGN (8UL)
1080 :
1081 : /* Encoded Size: Dynamic */
1082 : struct __attribute__((aligned(8UL))) fd_slot_map_pair {
1083 : ulong slot;
1084 : fd_hash_t hash;
1085 : };
1086 : typedef struct fd_slot_map_pair fd_slot_map_pair_t;
1087 0 : #define FD_SLOT_MAP_PAIR_FOOTPRINT sizeof(fd_slot_map_pair_t)
1088 0 : #define FD_SLOT_MAP_PAIR_ALIGN (8UL)
1089 :
1090 : struct __attribute__((aligned(8UL))) fd_slot_map_pair_off {
1091 : uint slot_off;
1092 : uint hash_off;
1093 : };
1094 : typedef struct fd_slot_map_pair_off fd_slot_map_pair_off_t;
1095 : #define FD_SLOT_MAP_PAIR_OFF_FOOTPRINT sizeof(fd_slot_map_pair_off_t)
1096 : #define FD_SLOT_MAP_PAIR_OFF_ALIGN (8UL)
1097 :
1098 : /* Encoded Size: Fixed (16 bytes) */
1099 : struct __attribute__((aligned(8UL))) fd_snapshot_acc_vec {
1100 : ulong id;
1101 : ulong file_sz;
1102 : };
1103 : typedef struct fd_snapshot_acc_vec fd_snapshot_acc_vec_t;
1104 0 : #define FD_SNAPSHOT_ACC_VEC_FOOTPRINT sizeof(fd_snapshot_acc_vec_t)
1105 0 : #define FD_SNAPSHOT_ACC_VEC_ALIGN (8UL)
1106 :
1107 : struct __attribute__((aligned(8UL))) fd_snapshot_acc_vec_off {
1108 : uint id_off;
1109 : uint file_sz_off;
1110 : };
1111 : typedef struct fd_snapshot_acc_vec_off fd_snapshot_acc_vec_off_t;
1112 : #define FD_SNAPSHOT_ACC_VEC_OFF_FOOTPRINT sizeof(fd_snapshot_acc_vec_off_t)
1113 : #define FD_SNAPSHOT_ACC_VEC_OFF_ALIGN (8UL)
1114 :
1115 : /* Encoded Size: Dynamic */
1116 : struct __attribute__((aligned(8UL))) fd_snapshot_slot_acc_vecs {
1117 : ulong slot;
1118 : ulong account_vecs_len;
1119 : fd_snapshot_acc_vec_t * account_vecs;
1120 : };
1121 : typedef struct fd_snapshot_slot_acc_vecs fd_snapshot_slot_acc_vecs_t;
1122 0 : #define FD_SNAPSHOT_SLOT_ACC_VECS_FOOTPRINT sizeof(fd_snapshot_slot_acc_vecs_t)
1123 0 : #define FD_SNAPSHOT_SLOT_ACC_VECS_ALIGN (8UL)
1124 :
1125 : struct __attribute__((aligned(8UL))) fd_snapshot_slot_acc_vecs_off {
1126 : uint slot_off;
1127 : uint account_vecs_off;
1128 : };
1129 : typedef struct fd_snapshot_slot_acc_vecs_off fd_snapshot_slot_acc_vecs_off_t;
1130 : #define FD_SNAPSHOT_SLOT_ACC_VECS_OFF_FOOTPRINT sizeof(fd_snapshot_slot_acc_vecs_off_t)
1131 : #define FD_SNAPSHOT_SLOT_ACC_VECS_OFF_ALIGN (8UL)
1132 :
1133 : union fd_reward_type_inner {
1134 : uchar nonempty; /* Hack to support enums with no inner structures */
1135 : };
1136 : typedef union fd_reward_type_inner fd_reward_type_inner_t;
1137 :
1138 : /* https://github.com/anza-xyz/agave/blob/7117ed9653ce19e8b2dea108eff1f3eb6a3378a7/sdk/src/reward_type.rs#L7 */
1139 : struct fd_reward_type {
1140 : uint discriminant;
1141 : fd_reward_type_inner_t inner;
1142 : };
1143 : typedef struct fd_reward_type fd_reward_type_t;
1144 0 : #define FD_REWARD_TYPE_FOOTPRINT sizeof(fd_reward_type_t)
1145 0 : #define FD_REWARD_TYPE_ALIGN (8UL)
1146 :
1147 : /* Accounts DB related fields in a snapshot */
1148 : /* Encoded Size: Dynamic */
1149 : struct __attribute__((aligned(8UL))) fd_solana_accounts_db_fields {
1150 : ulong storages_len;
1151 : fd_snapshot_slot_acc_vecs_t * storages;
1152 : ulong version;
1153 : ulong slot;
1154 : fd_bank_hash_info_t bank_hash_info;
1155 : ulong historical_roots_len;
1156 : ulong* historical_roots;
1157 : ulong historical_roots_with_hash_len;
1158 : fd_slot_map_pair_t * historical_roots_with_hash;
1159 : };
1160 : typedef struct fd_solana_accounts_db_fields fd_solana_accounts_db_fields_t;
1161 0 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_FOOTPRINT sizeof(fd_solana_accounts_db_fields_t)
1162 0 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_ALIGN (8UL)
1163 :
1164 : struct __attribute__((aligned(8UL))) fd_solana_accounts_db_fields_off {
1165 : uint storages_off;
1166 : uint version_off;
1167 : uint slot_off;
1168 : uint bank_hash_info_off;
1169 : uint historical_roots_off;
1170 : uint historical_roots_with_hash_off;
1171 : };
1172 : typedef struct fd_solana_accounts_db_fields_off fd_solana_accounts_db_fields_off_t;
1173 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_OFF_FOOTPRINT sizeof(fd_solana_accounts_db_fields_off_t)
1174 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_OFF_ALIGN (8UL)
1175 :
1176 : /* Encoded Size: Dynamic */
1177 : struct __attribute__((aligned(8UL))) fd_epoch_stakes_current {
1178 : fd_stakes_stake_t stakes;
1179 : ulong total_stake;
1180 : ulong node_id_to_vote_accounts_len;
1181 : fd_pubkey_node_vote_accounts_pair_t * node_id_to_vote_accounts;
1182 : ulong epoch_authorized_voters_len;
1183 : fd_pubkey_pubkey_pair_t * epoch_authorized_voters;
1184 : };
1185 : typedef struct fd_epoch_stakes_current fd_epoch_stakes_current_t;
1186 0 : #define FD_EPOCH_STAKES_CURRENT_FOOTPRINT sizeof(fd_epoch_stakes_current_t)
1187 0 : #define FD_EPOCH_STAKES_CURRENT_ALIGN (8UL)
1188 :
1189 : struct __attribute__((aligned(8UL))) fd_epoch_stakes_current_off {
1190 : uint stakes_off;
1191 : uint total_stake_off;
1192 : uint node_id_to_vote_accounts_off;
1193 : uint epoch_authorized_voters_off;
1194 : };
1195 : typedef struct fd_epoch_stakes_current_off fd_epoch_stakes_current_off_t;
1196 : #define FD_EPOCH_STAKES_CURRENT_OFF_FOOTPRINT sizeof(fd_epoch_stakes_current_off_t)
1197 : #define FD_EPOCH_STAKES_CURRENT_OFF_ALIGN (8UL)
1198 :
1199 : union fd_versioned_epoch_stakes_inner {
1200 : fd_epoch_stakes_current_t Current;
1201 : };
1202 : typedef union fd_versioned_epoch_stakes_inner fd_versioned_epoch_stakes_inner_t;
1203 :
1204 : struct fd_versioned_epoch_stakes {
1205 : uint discriminant;
1206 : fd_versioned_epoch_stakes_inner_t inner;
1207 : };
1208 : typedef struct fd_versioned_epoch_stakes fd_versioned_epoch_stakes_t;
1209 0 : #define FD_VERSIONED_EPOCH_STAKES_FOOTPRINT sizeof(fd_versioned_epoch_stakes_t)
1210 0 : #define FD_VERSIONED_EPOCH_STAKES_ALIGN (8UL)
1211 :
1212 : /* Encoded Size: Dynamic */
1213 : struct __attribute__((aligned(8UL))) fd_versioned_epoch_stakes_pair {
1214 : ulong epoch;
1215 : fd_versioned_epoch_stakes_t val;
1216 : };
1217 : typedef struct fd_versioned_epoch_stakes_pair fd_versioned_epoch_stakes_pair_t;
1218 0 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_FOOTPRINT sizeof(fd_versioned_epoch_stakes_pair_t)
1219 0 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_ALIGN (8UL)
1220 :
1221 : struct __attribute__((aligned(8UL))) fd_versioned_epoch_stakes_pair_off {
1222 : uint epoch_off;
1223 : uint val_off;
1224 : };
1225 : typedef struct fd_versioned_epoch_stakes_pair_off fd_versioned_epoch_stakes_pair_off_t;
1226 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_OFF_FOOTPRINT sizeof(fd_versioned_epoch_stakes_pair_off_t)
1227 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_OFF_ALIGN (8UL)
1228 :
1229 : /* https://github.com/anza-xyz/agave/blob/7117ed9653ce19e8b2dea108eff1f3eb6a3378a7/sdk/src/reward_info.rs#L5 */
1230 : /* Encoded Size: Dynamic */
1231 : struct __attribute__((aligned(8UL))) fd_reward_info {
1232 : fd_reward_type_t reward_type;
1233 : ulong lamports;
1234 : ulong post_balance;
1235 : ulong commission;
1236 : };
1237 : typedef struct fd_reward_info fd_reward_info_t;
1238 0 : #define FD_REWARD_INFO_FOOTPRINT sizeof(fd_reward_info_t)
1239 0 : #define FD_REWARD_INFO_ALIGN (8UL)
1240 :
1241 : struct __attribute__((aligned(8UL))) fd_reward_info_off {
1242 : uint reward_type_off;
1243 : uint lamports_off;
1244 : uint post_balance_off;
1245 : uint commission_off;
1246 : };
1247 : typedef struct fd_reward_info_off fd_reward_info_off_t;
1248 : #define FD_REWARD_INFO_OFF_FOOTPRINT sizeof(fd_reward_info_off_t)
1249 : #define FD_REWARD_INFO_OFF_ALIGN (8UL)
1250 :
1251 : /* You can cast this to a (fd_lthash_value_t *) and use it directly since the alignment is preserved */
1252 : /* Encoded Size: Fixed (2048 bytes) */
1253 : struct __attribute__((aligned(128UL))) fd_slot_lthash {
1254 : uchar lthash[2048];
1255 : };
1256 : typedef struct fd_slot_lthash fd_slot_lthash_t;
1257 0 : #define FD_SLOT_LTHASH_FOOTPRINT sizeof(fd_slot_lthash_t)
1258 0 : #define FD_SLOT_LTHASH_ALIGN (128UL)
1259 :
1260 : struct __attribute__((aligned(128UL))) fd_slot_lthash_off {
1261 : uint lthash_off;
1262 : };
1263 : typedef struct fd_slot_lthash_off fd_slot_lthash_off_t;
1264 : #define FD_SLOT_LTHASH_OFF_FOOTPRINT sizeof(fd_slot_lthash_off_t)
1265 : #define FD_SLOT_LTHASH_OFF_ALIGN (128UL)
1266 :
1267 : /* Encoded Size: Dynamic */
1268 : struct __attribute__((aligned(16UL))) fd_solana_manifest {
1269 : fd_deserializable_versioned_bank_t bank;
1270 : fd_solana_accounts_db_fields_t accounts_db;
1271 : ulong lamports_per_signature;
1272 : fd_bank_incremental_snapshot_persistence_t * bank_incremental_snapshot_persistence;
1273 : fd_hash_t * epoch_account_hash;
1274 : ulong versioned_epoch_stakes_len;
1275 : fd_versioned_epoch_stakes_pair_t * versioned_epoch_stakes;
1276 : fd_slot_lthash_t * lthash;
1277 : };
1278 : typedef struct fd_solana_manifest fd_solana_manifest_t;
1279 0 : #define FD_SOLANA_MANIFEST_FOOTPRINT sizeof(fd_solana_manifest_t)
1280 0 : #define FD_SOLANA_MANIFEST_ALIGN (16UL)
1281 :
1282 : struct __attribute__((aligned(16UL))) fd_solana_manifest_off {
1283 : uint bank_off;
1284 : uint accounts_db_off;
1285 : uint lamports_per_signature_off;
1286 : uint bank_incremental_snapshot_persistence_off;
1287 : uint epoch_account_hash_off;
1288 : uint versioned_epoch_stakes_off;
1289 : uint lthash_off;
1290 : };
1291 : typedef struct fd_solana_manifest_off fd_solana_manifest_off_t;
1292 : #define FD_SOLANA_MANIFEST_OFF_FOOTPRINT sizeof(fd_solana_manifest_off_t)
1293 : #define FD_SOLANA_MANIFEST_OFF_ALIGN (16UL)
1294 :
1295 : /* Encoded Size: Fixed (12 bytes) */
1296 : struct __attribute__((aligned(8UL))) fd_rust_duration {
1297 : ulong seconds;
1298 : uint nanoseconds;
1299 : };
1300 : typedef struct fd_rust_duration fd_rust_duration_t;
1301 0 : #define FD_RUST_DURATION_FOOTPRINT sizeof(fd_rust_duration_t)
1302 0 : #define FD_RUST_DURATION_ALIGN (8UL)
1303 :
1304 : struct __attribute__((aligned(8UL))) fd_rust_duration_off {
1305 : uint seconds_off;
1306 : uint nanoseconds_off;
1307 : };
1308 : typedef struct fd_rust_duration_off fd_rust_duration_off_t;
1309 : #define FD_RUST_DURATION_OFF_FOOTPRINT sizeof(fd_rust_duration_off_t)
1310 : #define FD_RUST_DURATION_OFF_ALIGN (8UL)
1311 :
1312 : /* Encoded Size: Dynamic */
1313 : struct __attribute__((aligned(8UL))) fd_poh_config {
1314 : fd_rust_duration_t target_tick_duration;
1315 : ulong* target_tick_count;
1316 : ulong hashes_per_tick;
1317 : uchar has_hashes_per_tick;
1318 : };
1319 : typedef struct fd_poh_config fd_poh_config_t;
1320 0 : #define FD_POH_CONFIG_FOOTPRINT sizeof(fd_poh_config_t)
1321 0 : #define FD_POH_CONFIG_ALIGN (8UL)
1322 :
1323 : struct __attribute__((aligned(8UL))) fd_poh_config_off {
1324 : uint target_tick_duration_off;
1325 : uint target_tick_count_off;
1326 : uint hashes_per_tick_off;
1327 : };
1328 : typedef struct fd_poh_config_off fd_poh_config_off_t;
1329 : #define FD_POH_CONFIG_OFF_FOOTPRINT sizeof(fd_poh_config_off_t)
1330 : #define FD_POH_CONFIG_OFF_ALIGN (8UL)
1331 :
1332 : /* Encoded Size: Dynamic */
1333 : struct __attribute__((aligned(8UL))) fd_string_pubkey_pair {
1334 : ulong string_len;
1335 : uchar* string;
1336 : fd_pubkey_t pubkey;
1337 : };
1338 : typedef struct fd_string_pubkey_pair fd_string_pubkey_pair_t;
1339 0 : #define FD_STRING_PUBKEY_PAIR_FOOTPRINT sizeof(fd_string_pubkey_pair_t)
1340 0 : #define FD_STRING_PUBKEY_PAIR_ALIGN (8UL)
1341 :
1342 : struct __attribute__((aligned(8UL))) fd_string_pubkey_pair_off {
1343 : uint string_off;
1344 : uint pubkey_off;
1345 : };
1346 : typedef struct fd_string_pubkey_pair_off fd_string_pubkey_pair_off_t;
1347 : #define FD_STRING_PUBKEY_PAIR_OFF_FOOTPRINT sizeof(fd_string_pubkey_pair_off_t)
1348 : #define FD_STRING_PUBKEY_PAIR_OFF_ALIGN (8UL)
1349 :
1350 : /* Encoded Size: Dynamic */
1351 : struct __attribute__((aligned(8UL))) fd_pubkey_account_pair {
1352 : fd_pubkey_t key;
1353 : fd_solana_account_t account;
1354 : };
1355 : typedef struct fd_pubkey_account_pair fd_pubkey_account_pair_t;
1356 0 : #define FD_PUBKEY_ACCOUNT_PAIR_FOOTPRINT sizeof(fd_pubkey_account_pair_t)
1357 0 : #define FD_PUBKEY_ACCOUNT_PAIR_ALIGN (8UL)
1358 :
1359 : struct __attribute__((aligned(8UL))) fd_pubkey_account_pair_off {
1360 : uint key_off;
1361 : uint account_off;
1362 : };
1363 : typedef struct fd_pubkey_account_pair_off fd_pubkey_account_pair_off_t;
1364 : #define FD_PUBKEY_ACCOUNT_PAIR_OFF_FOOTPRINT sizeof(fd_pubkey_account_pair_off_t)
1365 : #define FD_PUBKEY_ACCOUNT_PAIR_OFF_ALIGN (8UL)
1366 :
1367 : /* Encoded Size: Dynamic */
1368 : struct __attribute__((aligned(8UL))) fd_genesis_solana {
1369 : ulong creation_time;
1370 : ulong accounts_len;
1371 : fd_pubkey_account_pair_t * accounts;
1372 : ulong native_instruction_processors_len;
1373 : fd_string_pubkey_pair_t * native_instruction_processors;
1374 : ulong rewards_pools_len;
1375 : fd_pubkey_account_pair_t * rewards_pools;
1376 : ulong ticks_per_slot;
1377 : ulong unused;
1378 : fd_poh_config_t poh_config;
1379 : ulong __backwards_compat_with_v0_23;
1380 : fd_fee_rate_governor_t fee_rate_governor;
1381 : fd_rent_t rent;
1382 : fd_inflation_t inflation;
1383 : fd_epoch_schedule_t epoch_schedule;
1384 : uint cluster_type;
1385 : };
1386 : typedef struct fd_genesis_solana fd_genesis_solana_t;
1387 0 : #define FD_GENESIS_SOLANA_FOOTPRINT sizeof(fd_genesis_solana_t)
1388 0 : #define FD_GENESIS_SOLANA_ALIGN (8UL)
1389 :
1390 : struct __attribute__((aligned(8UL))) fd_genesis_solana_off {
1391 : uint creation_time_off;
1392 : uint accounts_off;
1393 : uint native_instruction_processors_off;
1394 : uint rewards_pools_off;
1395 : uint ticks_per_slot_off;
1396 : uint unused_off;
1397 : uint poh_config_off;
1398 : uint __backwards_compat_with_v0_23_off;
1399 : uint fee_rate_governor_off;
1400 : uint rent_off;
1401 : uint inflation_off;
1402 : uint epoch_schedule_off;
1403 : uint cluster_type_off;
1404 : };
1405 : typedef struct fd_genesis_solana_off fd_genesis_solana_off_t;
1406 : #define FD_GENESIS_SOLANA_OFF_FOOTPRINT sizeof(fd_genesis_solana_off_t)
1407 : #define FD_GENESIS_SOLANA_OFF_ALIGN (8UL)
1408 :
1409 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/clock.rs#L114 */
1410 : /* Encoded Size: Fixed (40 bytes) */
1411 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_clock {
1412 : ulong slot;
1413 : long epoch_start_timestamp;
1414 : ulong epoch;
1415 : ulong leader_schedule_epoch;
1416 : long unix_timestamp;
1417 : };
1418 : typedef struct fd_sol_sysvar_clock fd_sol_sysvar_clock_t;
1419 90 : #define FD_SOL_SYSVAR_CLOCK_FOOTPRINT sizeof(fd_sol_sysvar_clock_t)
1420 0 : #define FD_SOL_SYSVAR_CLOCK_ALIGN (8UL)
1421 :
1422 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_clock_off {
1423 : uint slot_off;
1424 : uint epoch_start_timestamp_off;
1425 : uint epoch_off;
1426 : uint leader_schedule_epoch_off;
1427 : uint unix_timestamp_off;
1428 : };
1429 : typedef struct fd_sol_sysvar_clock_off fd_sol_sysvar_clock_off_t;
1430 : #define FD_SOL_SYSVAR_CLOCK_OFF_FOOTPRINT sizeof(fd_sol_sysvar_clock_off_t)
1431 : #define FD_SOL_SYSVAR_CLOCK_OFF_ALIGN (8UL)
1432 :
1433 : /* https://github.com/solana-labs/solana/blob/30531d7a5b74f914dde53bfbb0bc2144f2ac92bb/sdk/program/src/last_restart_slot.rs#L7 */
1434 : /* Encoded Size: Fixed (8 bytes) */
1435 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_last_restart_slot {
1436 : ulong slot;
1437 : };
1438 : typedef struct fd_sol_sysvar_last_restart_slot fd_sol_sysvar_last_restart_slot_t;
1439 0 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_FOOTPRINT sizeof(fd_sol_sysvar_last_restart_slot_t)
1440 0 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_ALIGN (8UL)
1441 :
1442 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_last_restart_slot_off {
1443 : uint slot_off;
1444 : };
1445 : typedef struct fd_sol_sysvar_last_restart_slot_off fd_sol_sysvar_last_restart_slot_off_t;
1446 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_OFF_FOOTPRINT sizeof(fd_sol_sysvar_last_restart_slot_off_t)
1447 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_OFF_ALIGN (8UL)
1448 :
1449 : /* Encoded Size: Fixed (12 bytes) */
1450 : struct __attribute__((aligned(8UL))) fd_vote_lockout {
1451 : ulong slot;
1452 : uint confirmation_count;
1453 : };
1454 : typedef struct fd_vote_lockout fd_vote_lockout_t;
1455 0 : #define FD_VOTE_LOCKOUT_FOOTPRINT sizeof(fd_vote_lockout_t)
1456 0 : #define FD_VOTE_LOCKOUT_ALIGN (8UL)
1457 :
1458 : struct __attribute__((aligned(8UL))) fd_vote_lockout_off {
1459 : uint slot_off;
1460 : uint confirmation_count_off;
1461 : };
1462 : typedef struct fd_vote_lockout_off fd_vote_lockout_off_t;
1463 : #define FD_VOTE_LOCKOUT_OFF_FOOTPRINT sizeof(fd_vote_lockout_off_t)
1464 : #define FD_VOTE_LOCKOUT_OFF_ALIGN (8UL)
1465 :
1466 : /* Encoded Size: Dynamic */
1467 : struct __attribute__((aligned(8UL))) fd_lockout_offset {
1468 : ulong offset;
1469 : uchar confirmation_count;
1470 : };
1471 : typedef struct fd_lockout_offset fd_lockout_offset_t;
1472 336 : #define FD_LOCKOUT_OFFSET_FOOTPRINT sizeof(fd_lockout_offset_t)
1473 336 : #define FD_LOCKOUT_OFFSET_ALIGN (8UL)
1474 :
1475 : struct __attribute__((aligned(8UL))) fd_lockout_offset_off {
1476 : uint offset_off;
1477 : uint confirmation_count_off;
1478 : };
1479 : typedef struct fd_lockout_offset_off fd_lockout_offset_off_t;
1480 : #define FD_LOCKOUT_OFFSET_OFF_FOOTPRINT sizeof(fd_lockout_offset_off_t)
1481 : #define FD_LOCKOUT_OFFSET_OFF_ALIGN (8UL)
1482 :
1483 : /* https://github.com/firedancer-io/solana/blob/da470eef4652b3b22598a1f379cacfe82bd5928d/sdk/program/src/vote/authorized_voters.rs#L9 */
1484 : /* Encoded Size: Fixed (72 bytes) */
1485 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voter {
1486 : ulong epoch;
1487 : fd_pubkey_t pubkey;
1488 : ulong parent;
1489 : ulong left;
1490 : ulong right;
1491 : ulong prio;
1492 : };
1493 : typedef struct fd_vote_authorized_voter fd_vote_authorized_voter_t;
1494 0 : #define FD_VOTE_AUTHORIZED_VOTER_FOOTPRINT sizeof(fd_vote_authorized_voter_t)
1495 0 : #define FD_VOTE_AUTHORIZED_VOTER_ALIGN (8UL)
1496 :
1497 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voter_off {
1498 : uint epoch_off;
1499 : uint pubkey_off;
1500 : uint parent_off;
1501 : uint left_off;
1502 : uint right_off;
1503 : uint prio_off;
1504 : };
1505 : typedef struct fd_vote_authorized_voter_off fd_vote_authorized_voter_off_t;
1506 : #define FD_VOTE_AUTHORIZED_VOTER_OFF_FOOTPRINT sizeof(fd_vote_authorized_voter_off_t)
1507 : #define FD_VOTE_AUTHORIZED_VOTER_OFF_ALIGN (8UL)
1508 :
1509 : /* Encoded Size: Fixed (48 bytes) */
1510 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter {
1511 : fd_pubkey_t pubkey;
1512 : ulong epoch_start;
1513 : ulong epoch_end;
1514 : };
1515 : typedef struct fd_vote_prior_voter fd_vote_prior_voter_t;
1516 0 : #define FD_VOTE_PRIOR_VOTER_FOOTPRINT sizeof(fd_vote_prior_voter_t)
1517 0 : #define FD_VOTE_PRIOR_VOTER_ALIGN (8UL)
1518 :
1519 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter_off {
1520 : uint pubkey_off;
1521 : uint epoch_start_off;
1522 : uint epoch_end_off;
1523 : };
1524 : typedef struct fd_vote_prior_voter_off fd_vote_prior_voter_off_t;
1525 : #define FD_VOTE_PRIOR_VOTER_OFF_FOOTPRINT sizeof(fd_vote_prior_voter_off_t)
1526 : #define FD_VOTE_PRIOR_VOTER_OFF_ALIGN (8UL)
1527 :
1528 : /* Encoded Size: Fixed (56 bytes) */
1529 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter_0_23_5 {
1530 : fd_pubkey_t pubkey;
1531 : ulong epoch_start;
1532 : ulong epoch_end;
1533 : ulong slot;
1534 : };
1535 : typedef struct fd_vote_prior_voter_0_23_5 fd_vote_prior_voter_0_23_5_t;
1536 0 : #define FD_VOTE_PRIOR_VOTER_0_23_5_FOOTPRINT sizeof(fd_vote_prior_voter_0_23_5_t)
1537 0 : #define FD_VOTE_PRIOR_VOTER_0_23_5_ALIGN (8UL)
1538 :
1539 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter_0_23_5_off {
1540 : uint pubkey_off;
1541 : uint epoch_start_off;
1542 : uint epoch_end_off;
1543 : uint slot_off;
1544 : };
1545 : typedef struct fd_vote_prior_voter_0_23_5_off fd_vote_prior_voter_0_23_5_off_t;
1546 : #define FD_VOTE_PRIOR_VOTER_0_23_5_OFF_FOOTPRINT sizeof(fd_vote_prior_voter_0_23_5_off_t)
1547 : #define FD_VOTE_PRIOR_VOTER_0_23_5_OFF_ALIGN (8UL)
1548 :
1549 : /* Encoded Size: Fixed (24 bytes) */
1550 : struct __attribute__((aligned(8UL))) fd_vote_epoch_credits {
1551 : ulong epoch;
1552 : ulong credits;
1553 : ulong prev_credits;
1554 : };
1555 : typedef struct fd_vote_epoch_credits fd_vote_epoch_credits_t;
1556 0 : #define FD_VOTE_EPOCH_CREDITS_FOOTPRINT sizeof(fd_vote_epoch_credits_t)
1557 0 : #define FD_VOTE_EPOCH_CREDITS_ALIGN (8UL)
1558 :
1559 : struct __attribute__((aligned(8UL))) fd_vote_epoch_credits_off {
1560 : uint epoch_off;
1561 : uint credits_off;
1562 : uint prev_credits_off;
1563 : };
1564 : typedef struct fd_vote_epoch_credits_off fd_vote_epoch_credits_off_t;
1565 : #define FD_VOTE_EPOCH_CREDITS_OFF_FOOTPRINT sizeof(fd_vote_epoch_credits_off_t)
1566 : #define FD_VOTE_EPOCH_CREDITS_OFF_ALIGN (8UL)
1567 :
1568 : /* Encoded Size: Fixed (16 bytes) */
1569 : struct __attribute__((aligned(8UL))) fd_vote_block_timestamp {
1570 : ulong slot;
1571 : long timestamp;
1572 : };
1573 : typedef struct fd_vote_block_timestamp fd_vote_block_timestamp_t;
1574 0 : #define FD_VOTE_BLOCK_TIMESTAMP_FOOTPRINT sizeof(fd_vote_block_timestamp_t)
1575 0 : #define FD_VOTE_BLOCK_TIMESTAMP_ALIGN (8UL)
1576 :
1577 : struct __attribute__((aligned(8UL))) fd_vote_block_timestamp_off {
1578 : uint slot_off;
1579 : uint timestamp_off;
1580 : };
1581 : typedef struct fd_vote_block_timestamp_off fd_vote_block_timestamp_off_t;
1582 : #define FD_VOTE_BLOCK_TIMESTAMP_OFF_FOOTPRINT sizeof(fd_vote_block_timestamp_off_t)
1583 : #define FD_VOTE_BLOCK_TIMESTAMP_OFF_ALIGN (8UL)
1584 :
1585 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L268 */
1586 : /* Encoded Size: Dynamic */
1587 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters {
1588 : fd_vote_prior_voter_t buf[32];
1589 : ulong idx;
1590 : uchar is_empty;
1591 : };
1592 : typedef struct fd_vote_prior_voters fd_vote_prior_voters_t;
1593 0 : #define FD_VOTE_PRIOR_VOTERS_FOOTPRINT sizeof(fd_vote_prior_voters_t)
1594 0 : #define FD_VOTE_PRIOR_VOTERS_ALIGN (8UL)
1595 :
1596 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters_off {
1597 : uint buf_off;
1598 : uint idx_off;
1599 : uint is_empty_off;
1600 : };
1601 : typedef struct fd_vote_prior_voters_off fd_vote_prior_voters_off_t;
1602 : #define FD_VOTE_PRIOR_VOTERS_OFF_FOOTPRINT sizeof(fd_vote_prior_voters_off_t)
1603 : #define FD_VOTE_PRIOR_VOTERS_OFF_ALIGN (8UL)
1604 :
1605 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L268 */
1606 : /* Encoded Size: Dynamic */
1607 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters_0_23_5 {
1608 : fd_vote_prior_voter_0_23_5_t buf[32];
1609 : ulong idx;
1610 : };
1611 : typedef struct fd_vote_prior_voters_0_23_5 fd_vote_prior_voters_0_23_5_t;
1612 0 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_FOOTPRINT sizeof(fd_vote_prior_voters_0_23_5_t)
1613 0 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_ALIGN (8UL)
1614 :
1615 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters_0_23_5_off {
1616 : uint buf_off;
1617 : uint idx_off;
1618 : };
1619 : typedef struct fd_vote_prior_voters_0_23_5_off fd_vote_prior_voters_0_23_5_off_t;
1620 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_OFF_FOOTPRINT sizeof(fd_vote_prior_voters_0_23_5_off_t)
1621 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_OFF_ALIGN (8UL)
1622 :
1623 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L268 */
1624 : /* Encoded Size: Dynamic */
1625 : struct __attribute__((aligned(8UL))) fd_landed_vote {
1626 : uchar latency;
1627 : fd_vote_lockout_t lockout;
1628 : };
1629 : typedef struct fd_landed_vote fd_landed_vote_t;
1630 0 : #define FD_LANDED_VOTE_FOOTPRINT sizeof(fd_landed_vote_t)
1631 0 : #define FD_LANDED_VOTE_ALIGN (8UL)
1632 :
1633 : struct __attribute__((aligned(8UL))) fd_landed_vote_off {
1634 : uint latency_off;
1635 : uint lockout_off;
1636 : };
1637 : typedef struct fd_landed_vote_off fd_landed_vote_off_t;
1638 : #define FD_LANDED_VOTE_OFF_FOOTPRINT sizeof(fd_landed_vote_off_t)
1639 : #define FD_LANDED_VOTE_OFF_ALIGN (8UL)
1640 :
1641 : #define DEQUE_NAME deq_fd_vote_lockout_t
1642 179181 : #define DEQUE_T fd_vote_lockout_t
1643 : #include "../../util/tmpl/fd_deque_dynamic.c"
1644 : #undef DEQUE_NAME
1645 : #undef DEQUE_T
1646 : #undef DEQUE_MAX
1647 : static inline fd_vote_lockout_t *
1648 7095 : deq_fd_vote_lockout_t_alloc( fd_valloc_t valloc, ulong max ) {
1649 7095 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1650 7095 : void * mem = fd_valloc_malloc( valloc, deq_fd_vote_lockout_t_align(), deq_fd_vote_lockout_t_footprint( max ) );
1651 7095 : return deq_fd_vote_lockout_t_join( deq_fd_vote_lockout_t_new( mem, max ) );
1652 7095 : }
1653 : #define DEQUE_NAME deq_fd_vote_epoch_credits_t
1654 120768 : #define DEQUE_T fd_vote_epoch_credits_t
1655 : #include "../../util/tmpl/fd_deque_dynamic.c"
1656 : #undef DEQUE_NAME
1657 : #undef DEQUE_T
1658 : #undef DEQUE_MAX
1659 : static inline fd_vote_epoch_credits_t *
1660 8085 : deq_fd_vote_epoch_credits_t_alloc( fd_valloc_t valloc, ulong max ) {
1661 8085 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1662 8085 : void * mem = fd_valloc_malloc( valloc, deq_fd_vote_epoch_credits_t_align(), deq_fd_vote_epoch_credits_t_footprint( max ) );
1663 8085 : return deq_fd_vote_epoch_credits_t_join( deq_fd_vote_epoch_credits_t_new( mem, max ) );
1664 8085 : }
1665 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/vote_state_0_23_5.rs#L6 */
1666 : /* Encoded Size: Dynamic */
1667 : struct __attribute__((aligned(8UL))) fd_vote_state_0_23_5 {
1668 : fd_pubkey_t node_pubkey;
1669 : fd_pubkey_t authorized_voter;
1670 : ulong authorized_voter_epoch;
1671 : fd_vote_prior_voters_0_23_5_t prior_voters;
1672 : fd_pubkey_t authorized_withdrawer;
1673 : uchar commission;
1674 : fd_vote_lockout_t * votes; /* fd_deque_dynamic (min cnt 32) */
1675 : ulong root_slot;
1676 : uchar has_root_slot;
1677 : fd_vote_epoch_credits_t * epoch_credits; /* fd_deque_dynamic (min cnt 64) */
1678 : fd_vote_block_timestamp_t last_timestamp;
1679 : };
1680 : typedef struct fd_vote_state_0_23_5 fd_vote_state_0_23_5_t;
1681 0 : #define FD_VOTE_STATE_0_23_5_FOOTPRINT sizeof(fd_vote_state_0_23_5_t)
1682 0 : #define FD_VOTE_STATE_0_23_5_ALIGN (8UL)
1683 :
1684 : struct __attribute__((aligned(8UL))) fd_vote_state_0_23_5_off {
1685 : uint node_pubkey_off;
1686 : uint authorized_voter_off;
1687 : uint authorized_voter_epoch_off;
1688 : uint prior_voters_off;
1689 : uint authorized_withdrawer_off;
1690 : uint commission_off;
1691 : uint votes_off;
1692 : uint root_slot_off;
1693 : uint epoch_credits_off;
1694 : uint last_timestamp_off;
1695 : };
1696 : typedef struct fd_vote_state_0_23_5_off fd_vote_state_0_23_5_off_t;
1697 : #define FD_VOTE_STATE_0_23_5_OFF_FOOTPRINT sizeof(fd_vote_state_0_23_5_off_t)
1698 : #define FD_VOTE_STATE_0_23_5_OFF_ALIGN (8UL)
1699 :
1700 9816 : #define FD_VOTE_AUTHORIZED_VOTERS_MIN 64
1701 : #define POOL_NAME fd_vote_authorized_voters_pool
1702 15786 : #define POOL_T fd_vote_authorized_voter_t
1703 668505 : #define POOL_NEXT parent
1704 : #include "../../util/tmpl/fd_pool.c"
1705 : static inline fd_vote_authorized_voter_t *
1706 7893 : fd_vote_authorized_voters_pool_alloc( fd_valloc_t valloc, ulong num ) {
1707 7893 : if( FD_UNLIKELY( 0 == num ) ) num = 1; // prevent underflow
1708 7893 : return fd_vote_authorized_voters_pool_join( fd_vote_authorized_voters_pool_new(
1709 7893 : fd_valloc_malloc( valloc,
1710 7893 : fd_vote_authorized_voters_pool_align(),
1711 7893 : fd_vote_authorized_voters_pool_footprint( num ) ),
1712 7893 : num ) );
1713 7893 : }
1714 : #define TREAP_NAME fd_vote_authorized_voters_treap
1715 : #define TREAP_T fd_vote_authorized_voter_t
1716 : #define TREAP_QUERY_T ulong
1717 1011765 : #define TREAP_CMP(q,e) ( (q == (e)->epoch) ? 0 : ( (q < (e)->epoch) ? -1 : 1 ) )
1718 220815 : #define TREAP_LT(e0,e1) ((e0)->epoch<(e1)->epoch)
1719 : #include "../../util/tmpl/fd_treap.c"
1720 : static inline fd_vote_authorized_voters_treap_t *
1721 7893 : fd_vote_authorized_voters_treap_alloc( fd_valloc_t valloc, ulong num ) {
1722 7893 : if( FD_UNLIKELY( 0 == num ) ) num = 1; // prevent underflow
1723 7893 : return fd_vote_authorized_voters_treap_join( fd_vote_authorized_voters_treap_new(
1724 7893 : fd_valloc_malloc( valloc,
1725 7893 : fd_vote_authorized_voters_treap_align(),
1726 7893 : fd_vote_authorized_voters_treap_footprint( num ) ),
1727 7893 : num ) );
1728 7893 : }
1729 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L310 */
1730 : /* Encoded Size: Dynamic */
1731 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voters {
1732 : fd_vote_authorized_voter_t * pool;
1733 : fd_vote_authorized_voters_treap_t * treap;
1734 : };
1735 : typedef struct fd_vote_authorized_voters fd_vote_authorized_voters_t;
1736 0 : #define FD_VOTE_AUTHORIZED_VOTERS_FOOTPRINT sizeof(fd_vote_authorized_voters_t)
1737 0 : #define FD_VOTE_AUTHORIZED_VOTERS_ALIGN (8UL)
1738 :
1739 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voters_off {
1740 : uint fd_vote_authorized_voters_off;
1741 : };
1742 : typedef struct fd_vote_authorized_voters_off fd_vote_authorized_voters_off_t;
1743 : #define FD_VOTE_AUTHORIZED_VOTERS_OFF_FOOTPRINT sizeof(fd_vote_authorized_voters_off_t)
1744 : #define FD_VOTE_AUTHORIZED_VOTERS_OFF_ALIGN (8UL)
1745 :
1746 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L310 */
1747 : /* Encoded Size: Dynamic */
1748 : struct __attribute__((aligned(8UL))) fd_vote_state_1_14_11 {
1749 : fd_pubkey_t node_pubkey;
1750 : fd_pubkey_t authorized_withdrawer;
1751 : uchar commission;
1752 : fd_vote_lockout_t * votes; /* fd_deque_dynamic (min cnt 32) */
1753 : ulong root_slot;
1754 : uchar has_root_slot;
1755 : fd_vote_authorized_voters_t authorized_voters;
1756 : fd_vote_prior_voters_t prior_voters;
1757 : fd_vote_epoch_credits_t * epoch_credits; /* fd_deque_dynamic (min cnt 64) */
1758 : fd_vote_block_timestamp_t last_timestamp;
1759 : };
1760 : typedef struct fd_vote_state_1_14_11 fd_vote_state_1_14_11_t;
1761 0 : #define FD_VOTE_STATE_1_14_11_FOOTPRINT sizeof(fd_vote_state_1_14_11_t)
1762 0 : #define FD_VOTE_STATE_1_14_11_ALIGN (8UL)
1763 :
1764 : struct __attribute__((aligned(8UL))) fd_vote_state_1_14_11_off {
1765 : uint node_pubkey_off;
1766 : uint authorized_withdrawer_off;
1767 : uint commission_off;
1768 : uint votes_off;
1769 : uint root_slot_off;
1770 : uint authorized_voters_off;
1771 : uint prior_voters_off;
1772 : uint epoch_credits_off;
1773 : uint last_timestamp_off;
1774 : };
1775 : typedef struct fd_vote_state_1_14_11_off fd_vote_state_1_14_11_off_t;
1776 : #define FD_VOTE_STATE_1_14_11_OFF_FOOTPRINT sizeof(fd_vote_state_1_14_11_off_t)
1777 : #define FD_VOTE_STATE_1_14_11_OFF_ALIGN (8UL)
1778 :
1779 : #define DEQUE_NAME deq_fd_landed_vote_t
1780 174210 : #define DEQUE_T fd_landed_vote_t
1781 : #include "../../util/tmpl/fd_deque_dynamic.c"
1782 : #undef DEQUE_NAME
1783 : #undef DEQUE_T
1784 : #undef DEQUE_MAX
1785 : static inline fd_landed_vote_t *
1786 7821 : deq_fd_landed_vote_t_alloc( fd_valloc_t valloc, ulong max ) {
1787 7821 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1788 7821 : void * mem = fd_valloc_malloc( valloc, deq_fd_landed_vote_t_align(), deq_fd_landed_vote_t_footprint( max ) );
1789 7821 : return deq_fd_landed_vote_t_join( deq_fd_landed_vote_t_new( mem, max ) );
1790 7821 : }
1791 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L310 */
1792 : /* Encoded Size: Dynamic */
1793 : struct __attribute__((aligned(8UL))) fd_vote_state {
1794 : fd_pubkey_t node_pubkey;
1795 : fd_pubkey_t authorized_withdrawer;
1796 : uchar commission;
1797 : fd_landed_vote_t * votes; /* fd_deque_dynamic (min cnt 32) */
1798 : ulong root_slot;
1799 : uchar has_root_slot;
1800 : fd_vote_authorized_voters_t authorized_voters;
1801 : fd_vote_prior_voters_t prior_voters;
1802 : fd_vote_epoch_credits_t * epoch_credits; /* fd_deque_dynamic (min cnt 64) */
1803 : fd_vote_block_timestamp_t last_timestamp;
1804 : };
1805 : typedef struct fd_vote_state fd_vote_state_t;
1806 0 : #define FD_VOTE_STATE_FOOTPRINT sizeof(fd_vote_state_t)
1807 0 : #define FD_VOTE_STATE_ALIGN (8UL)
1808 :
1809 : struct __attribute__((aligned(8UL))) fd_vote_state_off {
1810 : uint node_pubkey_off;
1811 : uint authorized_withdrawer_off;
1812 : uint commission_off;
1813 : uint votes_off;
1814 : uint root_slot_off;
1815 : uint authorized_voters_off;
1816 : uint prior_voters_off;
1817 : uint epoch_credits_off;
1818 : uint last_timestamp_off;
1819 : };
1820 : typedef struct fd_vote_state_off fd_vote_state_off_t;
1821 : #define FD_VOTE_STATE_OFF_FOOTPRINT sizeof(fd_vote_state_off_t)
1822 : #define FD_VOTE_STATE_OFF_ALIGN (8UL)
1823 :
1824 : union fd_vote_state_versioned_inner {
1825 : fd_vote_state_0_23_5_t v0_23_5;
1826 : fd_vote_state_1_14_11_t v1_14_11;
1827 : fd_vote_state_t current;
1828 : };
1829 : typedef union fd_vote_state_versioned_inner fd_vote_state_versioned_inner_t;
1830 :
1831 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/vote_state_versions.rs#L4 */
1832 : struct fd_vote_state_versioned {
1833 : uint discriminant;
1834 : fd_vote_state_versioned_inner_t inner;
1835 : };
1836 : typedef struct fd_vote_state_versioned fd_vote_state_versioned_t;
1837 0 : #define FD_VOTE_STATE_VERSIONED_FOOTPRINT sizeof(fd_vote_state_versioned_t)
1838 0 : #define FD_VOTE_STATE_VERSIONED_ALIGN (8UL)
1839 :
1840 : union fd_vote_state_versioned_off_inner {
1841 : fd_vote_state_0_23_5_off_t v0_23_5_off;
1842 : fd_vote_state_1_14_11_off_t v1_14_11_off;
1843 : fd_vote_state_off_t current_off;
1844 : };
1845 : typedef union fd_vote_state_versioned_off_inner fd_vote_state_versioned_off_inner_t;
1846 :
1847 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/vote_state_versions.rs#L4 */
1848 : struct fd_vote_state_versioned_off {
1849 : uint discriminant;
1850 : fd_vote_state_versioned_off_inner_t inner;
1851 : };
1852 : typedef struct fd_vote_state_versioned_off fd_vote_state_versioned_off_t;
1853 : #define FD_VOTE_STATE_VERSIONED_OFF_FOOTPRINT sizeof(fd_vote_state_versioned_off_t)
1854 : #define FD_VOTE_STATE_VERSIONED_OFF_ALIGN (8UL)
1855 :
1856 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L185 */
1857 : /* Encoded Size: Dynamic */
1858 : struct __attribute__((aligned(8UL))) fd_vote_state_update {
1859 : fd_vote_lockout_t * lockouts; /* fd_deque_dynamic (min cnt 32) */
1860 : ulong root;
1861 : uchar has_root;
1862 : fd_hash_t hash;
1863 : long timestamp;
1864 : uchar has_timestamp;
1865 : };
1866 : typedef struct fd_vote_state_update fd_vote_state_update_t;
1867 0 : #define FD_VOTE_STATE_UPDATE_FOOTPRINT sizeof(fd_vote_state_update_t)
1868 0 : #define FD_VOTE_STATE_UPDATE_ALIGN (8UL)
1869 :
1870 : struct __attribute__((aligned(8UL))) fd_vote_state_update_off {
1871 : uint lockouts_off;
1872 : uint root_off;
1873 : uint hash_off;
1874 : uint timestamp_off;
1875 : };
1876 : typedef struct fd_vote_state_update_off fd_vote_state_update_off_t;
1877 : #define FD_VOTE_STATE_UPDATE_OFF_FOOTPRINT sizeof(fd_vote_state_update_off_t)
1878 : #define FD_VOTE_STATE_UPDATE_OFF_ALIGN (8UL)
1879 :
1880 : /* Encoded Size: Dynamic */
1881 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update {
1882 : ulong root;
1883 : ushort lockouts_len;
1884 : fd_lockout_offset_t * lockouts;
1885 : fd_hash_t hash;
1886 : long timestamp;
1887 : uchar has_timestamp;
1888 : };
1889 : typedef struct fd_compact_vote_state_update fd_compact_vote_state_update_t;
1890 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_FOOTPRINT sizeof(fd_compact_vote_state_update_t)
1891 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_ALIGN (8UL)
1892 :
1893 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update_off {
1894 : uint root_off;
1895 : uint lockouts_off;
1896 : uint hash_off;
1897 : uint timestamp_off;
1898 : };
1899 : typedef struct fd_compact_vote_state_update_off fd_compact_vote_state_update_off_t;
1900 : #define FD_COMPACT_VOTE_STATE_UPDATE_OFF_FOOTPRINT sizeof(fd_compact_vote_state_update_off_t)
1901 : #define FD_COMPACT_VOTE_STATE_UPDATE_OFF_ALIGN (8UL)
1902 :
1903 : /* https://github.com/solana-labs/solana/blob/252438e28fbfb2c695fe1215171b83456e4b761c/programs/vote/src/vote_instruction.rs#L143 */
1904 : /* Encoded Size: Dynamic */
1905 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update_switch {
1906 : fd_compact_vote_state_update_t compact_vote_state_update;
1907 : fd_hash_t hash;
1908 : };
1909 : typedef struct fd_compact_vote_state_update_switch fd_compact_vote_state_update_switch_t;
1910 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_FOOTPRINT sizeof(fd_compact_vote_state_update_switch_t)
1911 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_ALIGN (8UL)
1912 :
1913 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update_switch_off {
1914 : uint compact_vote_state_update_off;
1915 : uint hash_off;
1916 : };
1917 : typedef struct fd_compact_vote_state_update_switch_off fd_compact_vote_state_update_switch_off_t;
1918 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_OFF_FOOTPRINT sizeof(fd_compact_vote_state_update_switch_off_t)
1919 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_OFF_ALIGN (8UL)
1920 :
1921 : #define DEQUE_NAME deq_fd_lockout_offset_t
1922 4659 : #define DEQUE_T fd_lockout_offset_t
1923 : #include "../../util/tmpl/fd_deque_dynamic.c"
1924 : #undef DEQUE_NAME
1925 : #undef DEQUE_T
1926 : #undef DEQUE_MAX
1927 : static inline fd_lockout_offset_t *
1928 285 : deq_fd_lockout_offset_t_alloc( fd_valloc_t valloc, ulong max ) {
1929 285 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1930 285 : void * mem = fd_valloc_malloc( valloc, deq_fd_lockout_offset_t_align(), deq_fd_lockout_offset_t_footprint( max ) );
1931 285 : return deq_fd_lockout_offset_t_join( deq_fd_lockout_offset_t_new( mem, max ) );
1932 285 : }
1933 : /* https://github.com/anza-xyz/agave/blob/20ee70cd1829cd414d09040460defecf9792a370/sdk/program/src/vote/state/mod.rs#L990 */
1934 : /* Encoded Size: Dynamic */
1935 : struct __attribute__((aligned(8UL))) fd_compact_tower_sync {
1936 : ulong root;
1937 : fd_lockout_offset_t * lockout_offsets; /* fd_deque_dynamic (min cnt 32) */
1938 : fd_hash_t hash;
1939 : long timestamp;
1940 : uchar has_timestamp;
1941 : fd_hash_t block_id;
1942 : };
1943 : typedef struct fd_compact_tower_sync fd_compact_tower_sync_t;
1944 0 : #define FD_COMPACT_TOWER_SYNC_FOOTPRINT sizeof(fd_compact_tower_sync_t)
1945 0 : #define FD_COMPACT_TOWER_SYNC_ALIGN (8UL)
1946 :
1947 : struct __attribute__((aligned(8UL))) fd_compact_tower_sync_off {
1948 : uint root_off;
1949 : uint lockout_offsets_off;
1950 : uint hash_off;
1951 : uint timestamp_off;
1952 : uint block_id_off;
1953 : };
1954 : typedef struct fd_compact_tower_sync_off fd_compact_tower_sync_off_t;
1955 : #define FD_COMPACT_TOWER_SYNC_OFF_FOOTPRINT sizeof(fd_compact_tower_sync_off_t)
1956 : #define FD_COMPACT_TOWER_SYNC_OFF_ALIGN (8UL)
1957 :
1958 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L185 */
1959 : /* Encoded Size: Dynamic */
1960 : struct __attribute__((aligned(8UL))) fd_tower_sync {
1961 : fd_vote_lockout_t * lockouts; /* fd_deque_dynamic */
1962 : ulong lockouts_cnt;
1963 : ulong root;
1964 : uchar has_root;
1965 : fd_hash_t hash;
1966 : long timestamp;
1967 : uchar has_timestamp;
1968 : fd_hash_t block_id;
1969 : };
1970 : typedef struct fd_tower_sync fd_tower_sync_t;
1971 0 : #define FD_TOWER_SYNC_FOOTPRINT sizeof(fd_tower_sync_t)
1972 0 : #define FD_TOWER_SYNC_ALIGN (8UL)
1973 :
1974 : struct __attribute__((aligned(8UL))) fd_tower_sync_off {
1975 : uint lockouts_off;
1976 : uint lockouts_cnt_off;
1977 : uint root_off;
1978 : uint hash_off;
1979 : uint timestamp_off;
1980 : uint block_id_off;
1981 : };
1982 : typedef struct fd_tower_sync_off fd_tower_sync_off_t;
1983 : #define FD_TOWER_SYNC_OFF_FOOTPRINT sizeof(fd_tower_sync_off_t)
1984 : #define FD_TOWER_SYNC_OFF_ALIGN (8UL)
1985 :
1986 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L104 */
1987 : /* Encoded Size: Dynamic */
1988 : struct __attribute__((aligned(8UL))) fd_tower_sync_switch {
1989 : fd_tower_sync_t tower_sync;
1990 : fd_hash_t hash;
1991 : };
1992 : typedef struct fd_tower_sync_switch fd_tower_sync_switch_t;
1993 0 : #define FD_TOWER_SYNC_SWITCH_FOOTPRINT sizeof(fd_tower_sync_switch_t)
1994 0 : #define FD_TOWER_SYNC_SWITCH_ALIGN (8UL)
1995 :
1996 : struct __attribute__((aligned(8UL))) fd_tower_sync_switch_off {
1997 : uint tower_sync_off;
1998 : uint hash_off;
1999 : };
2000 : typedef struct fd_tower_sync_switch_off fd_tower_sync_switch_off_t;
2001 : #define FD_TOWER_SYNC_SWITCH_OFF_FOOTPRINT sizeof(fd_tower_sync_switch_off_t)
2002 : #define FD_TOWER_SYNC_SWITCH_OFF_ALIGN (8UL)
2003 :
2004 : /* Encoded Size: Dynamic */
2005 : struct __attribute__((aligned(8UL))) fd_slot_history_inner {
2006 : ulong blocks_len;
2007 : ulong* blocks;
2008 : };
2009 : typedef struct fd_slot_history_inner fd_slot_history_inner_t;
2010 0 : #define FD_SLOT_HISTORY_INNER_FOOTPRINT sizeof(fd_slot_history_inner_t)
2011 0 : #define FD_SLOT_HISTORY_INNER_ALIGN (8UL)
2012 :
2013 : struct __attribute__((aligned(8UL))) fd_slot_history_inner_off {
2014 : uint blocks_off;
2015 : };
2016 : typedef struct fd_slot_history_inner_off fd_slot_history_inner_off_t;
2017 : #define FD_SLOT_HISTORY_INNER_OFF_FOOTPRINT sizeof(fd_slot_history_inner_off_t)
2018 : #define FD_SLOT_HISTORY_INNER_OFF_ALIGN (8UL)
2019 :
2020 : /* https://github.com/tov/bv-rs/blob/107be3e9c45324e55844befa4c4239d4d3d092c6/src/bit_vec/inner.rs#L8 */
2021 : /* Encoded Size: Dynamic */
2022 : struct __attribute__((aligned(8UL))) fd_slot_history_bitvec {
2023 : fd_slot_history_inner_t * bits;
2024 : ulong len;
2025 : };
2026 : typedef struct fd_slot_history_bitvec fd_slot_history_bitvec_t;
2027 0 : #define FD_SLOT_HISTORY_BITVEC_FOOTPRINT sizeof(fd_slot_history_bitvec_t)
2028 0 : #define FD_SLOT_HISTORY_BITVEC_ALIGN (8UL)
2029 :
2030 : struct __attribute__((aligned(8UL))) fd_slot_history_bitvec_off {
2031 : uint bits_off;
2032 : uint len_off;
2033 : };
2034 : typedef struct fd_slot_history_bitvec_off fd_slot_history_bitvec_off_t;
2035 : #define FD_SLOT_HISTORY_BITVEC_OFF_FOOTPRINT sizeof(fd_slot_history_bitvec_off_t)
2036 : #define FD_SLOT_HISTORY_BITVEC_OFF_ALIGN (8UL)
2037 :
2038 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/slot_history.rs#L11 */
2039 : /* Encoded Size: Dynamic */
2040 : struct __attribute__((aligned(8UL))) fd_slot_history {
2041 : fd_slot_history_bitvec_t bits;
2042 : ulong next_slot;
2043 : };
2044 : typedef struct fd_slot_history fd_slot_history_t;
2045 0 : #define FD_SLOT_HISTORY_FOOTPRINT sizeof(fd_slot_history_t)
2046 0 : #define FD_SLOT_HISTORY_ALIGN (8UL)
2047 :
2048 : struct __attribute__((aligned(8UL))) fd_slot_history_off {
2049 : uint bits_off;
2050 : uint next_slot_off;
2051 : };
2052 : typedef struct fd_slot_history_off fd_slot_history_off_t;
2053 : #define FD_SLOT_HISTORY_OFF_FOOTPRINT sizeof(fd_slot_history_off_t)
2054 : #define FD_SLOT_HISTORY_OFF_ALIGN (8UL)
2055 :
2056 : /* Encoded Size: Dynamic */
2057 : struct __attribute__((aligned(8UL))) fd_slot_hash {
2058 : ulong slot;
2059 : fd_hash_t hash;
2060 : };
2061 : typedef struct fd_slot_hash fd_slot_hash_t;
2062 3 : #define FD_SLOT_HASH_FOOTPRINT sizeof(fd_slot_hash_t)
2063 3 : #define FD_SLOT_HASH_ALIGN (8UL)
2064 :
2065 : struct __attribute__((aligned(8UL))) fd_slot_hash_off {
2066 : uint slot_off;
2067 : uint hash_off;
2068 : };
2069 : typedef struct fd_slot_hash_off fd_slot_hash_off_t;
2070 : #define FD_SLOT_HASH_OFF_FOOTPRINT sizeof(fd_slot_hash_off_t)
2071 : #define FD_SLOT_HASH_OFF_ALIGN (8UL)
2072 :
2073 : #define DEQUE_NAME deq_fd_slot_hash_t
2074 2225628 : #define DEQUE_T fd_slot_hash_t
2075 : #include "../../util/tmpl/fd_deque_dynamic.c"
2076 : #undef DEQUE_NAME
2077 : #undef DEQUE_T
2078 : #undef DEQUE_MAX
2079 : static inline fd_slot_hash_t *
2080 32745 : deq_fd_slot_hash_t_alloc( fd_valloc_t valloc, ulong max ) {
2081 32745 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
2082 32745 : void * mem = fd_valloc_malloc( valloc, deq_fd_slot_hash_t_align(), deq_fd_slot_hash_t_footprint( max ) );
2083 32745 : return deq_fd_slot_hash_t_join( deq_fd_slot_hash_t_new( mem, max ) );
2084 32745 : }
2085 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/slot_hashes.rs#L31 */
2086 : /* Encoded Size: Dynamic */
2087 : struct __attribute__((aligned(8UL))) fd_slot_hashes {
2088 : fd_slot_hash_t * hashes; /* fd_deque_dynamic (min cnt 512) */
2089 : };
2090 : typedef struct fd_slot_hashes fd_slot_hashes_t;
2091 0 : #define FD_SLOT_HASHES_FOOTPRINT sizeof(fd_slot_hashes_t)
2092 0 : #define FD_SLOT_HASHES_ALIGN (8UL)
2093 :
2094 : struct __attribute__((aligned(8UL))) fd_slot_hashes_off {
2095 : uint hashes_off;
2096 : };
2097 : typedef struct fd_slot_hashes_off fd_slot_hashes_off_t;
2098 : #define FD_SLOT_HASHES_OFF_FOOTPRINT sizeof(fd_slot_hashes_off_t)
2099 : #define FD_SLOT_HASHES_OFF_ALIGN (8UL)
2100 :
2101 : /* Encoded Size: Dynamic */
2102 : struct __attribute__((aligned(8UL))) fd_block_block_hash_entry {
2103 : fd_hash_t blockhash;
2104 : fd_fee_calculator_t fee_calculator;
2105 : };
2106 : typedef struct fd_block_block_hash_entry fd_block_block_hash_entry_t;
2107 0 : #define FD_BLOCK_BLOCK_HASH_ENTRY_FOOTPRINT sizeof(fd_block_block_hash_entry_t)
2108 0 : #define FD_BLOCK_BLOCK_HASH_ENTRY_ALIGN (8UL)
2109 :
2110 : struct __attribute__((aligned(8UL))) fd_block_block_hash_entry_off {
2111 : uint blockhash_off;
2112 : uint fee_calculator_off;
2113 : };
2114 : typedef struct fd_block_block_hash_entry_off fd_block_block_hash_entry_off_t;
2115 : #define FD_BLOCK_BLOCK_HASH_ENTRY_OFF_FOOTPRINT sizeof(fd_block_block_hash_entry_off_t)
2116 : #define FD_BLOCK_BLOCK_HASH_ENTRY_OFF_ALIGN (8UL)
2117 :
2118 : #define DEQUE_NAME deq_fd_block_block_hash_entry_t
2119 1227015 : #define DEQUE_T fd_block_block_hash_entry_t
2120 : #include "../../util/tmpl/fd_deque_dynamic.c"
2121 : #undef DEQUE_NAME
2122 : #undef DEQUE_T
2123 : #undef DEQUE_MAX
2124 : static inline fd_block_block_hash_entry_t *
2125 115509 : deq_fd_block_block_hash_entry_t_alloc( fd_valloc_t valloc, ulong max ) {
2126 115509 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
2127 115509 : void * mem = fd_valloc_malloc( valloc, deq_fd_block_block_hash_entry_t_align(), deq_fd_block_block_hash_entry_t_footprint( max ) );
2128 115509 : return deq_fd_block_block_hash_entry_t_join( deq_fd_block_block_hash_entry_t_new( mem, max ) );
2129 115509 : }
2130 : /* Encoded Size: Dynamic */
2131 : struct __attribute__((aligned(8UL))) fd_recent_block_hashes {
2132 : fd_block_block_hash_entry_t * hashes; /* fd_deque_dynamic (min cnt 151) */
2133 : };
2134 : typedef struct fd_recent_block_hashes fd_recent_block_hashes_t;
2135 0 : #define FD_RECENT_BLOCK_HASHES_FOOTPRINT sizeof(fd_recent_block_hashes_t)
2136 0 : #define FD_RECENT_BLOCK_HASHES_ALIGN (8UL)
2137 :
2138 : struct __attribute__((aligned(8UL))) fd_recent_block_hashes_off {
2139 : uint hashes_off;
2140 : };
2141 : typedef struct fd_recent_block_hashes_off fd_recent_block_hashes_off_t;
2142 : #define FD_RECENT_BLOCK_HASHES_OFF_FOOTPRINT sizeof(fd_recent_block_hashes_off_t)
2143 : #define FD_RECENT_BLOCK_HASHES_OFF_ALIGN (8UL)
2144 :
2145 : /* Encoded Size: Dynamic */
2146 : struct __attribute__((aligned(8UL))) fd_slot_meta {
2147 : ulong slot;
2148 : ulong consumed;
2149 : ulong received;
2150 : long first_shred_timestamp;
2151 : ulong last_index;
2152 : ulong parent_slot;
2153 : ulong next_slot_len;
2154 : ulong* next_slot;
2155 : uchar is_connected;
2156 : ulong entry_end_indexes_len;
2157 : uint* entry_end_indexes;
2158 : };
2159 : typedef struct fd_slot_meta fd_slot_meta_t;
2160 0 : #define FD_SLOT_META_FOOTPRINT sizeof(fd_slot_meta_t)
2161 0 : #define FD_SLOT_META_ALIGN (8UL)
2162 :
2163 : struct __attribute__((aligned(8UL))) fd_slot_meta_off {
2164 : uint slot_off;
2165 : uint consumed_off;
2166 : uint received_off;
2167 : uint first_shred_timestamp_off;
2168 : uint last_index_off;
2169 : uint parent_slot_off;
2170 : uint next_slot_off;
2171 : uint is_connected_off;
2172 : uint entry_end_indexes_off;
2173 : };
2174 : typedef struct fd_slot_meta_off fd_slot_meta_off_t;
2175 : #define FD_SLOT_META_OFF_FOOTPRINT sizeof(fd_slot_meta_off_t)
2176 : #define FD_SLOT_META_OFF_ALIGN (8UL)
2177 :
2178 : /* A validator timestamp oracle vote received from a voting node */
2179 : /* Encoded Size: Fixed (48 bytes) */
2180 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_vote {
2181 : fd_pubkey_t pubkey;
2182 : long timestamp;
2183 : ulong slot;
2184 : };
2185 : typedef struct fd_clock_timestamp_vote fd_clock_timestamp_vote_t;
2186 0 : #define FD_CLOCK_TIMESTAMP_VOTE_FOOTPRINT sizeof(fd_clock_timestamp_vote_t)
2187 0 : #define FD_CLOCK_TIMESTAMP_VOTE_ALIGN (8UL)
2188 :
2189 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_vote_off {
2190 : uint pubkey_off;
2191 : uint timestamp_off;
2192 : uint slot_off;
2193 : };
2194 : typedef struct fd_clock_timestamp_vote_off fd_clock_timestamp_vote_off_t;
2195 : #define FD_CLOCK_TIMESTAMP_VOTE_OFF_FOOTPRINT sizeof(fd_clock_timestamp_vote_off_t)
2196 : #define FD_CLOCK_TIMESTAMP_VOTE_OFF_ALIGN (8UL)
2197 :
2198 : typedef struct fd_clock_timestamp_vote_t_mapnode fd_clock_timestamp_vote_t_mapnode_t;
2199 : #define REDBLK_T fd_clock_timestamp_vote_t_mapnode_t
2200 : #define REDBLK_NAME fd_clock_timestamp_vote_t_map
2201 : #define REDBLK_IMPL_STYLE 1
2202 : #include "../../util/tmpl/fd_redblack.c"
2203 : #undef REDBLK_T
2204 : #undef REDBLK_NAME
2205 : struct fd_clock_timestamp_vote_t_mapnode {
2206 : fd_clock_timestamp_vote_t elem;
2207 : ulong redblack_parent;
2208 : ulong redblack_left;
2209 : ulong redblack_right;
2210 : int redblack_color;
2211 : };
2212 : static inline fd_clock_timestamp_vote_t_mapnode_t *
2213 0 : fd_clock_timestamp_vote_t_map_alloc( fd_valloc_t valloc, ulong len ) {
2214 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
2215 0 : void * mem = fd_valloc_malloc( valloc, fd_clock_timestamp_vote_t_map_align(), fd_clock_timestamp_vote_t_map_footprint(len));
2216 0 : return fd_clock_timestamp_vote_t_map_join(fd_clock_timestamp_vote_t_map_new(mem, len));
2217 0 : }
2218 : /* Validator timestamp oracle votes received from voting nodes. TODO: make this a map */
2219 : /* Encoded Size: Dynamic */
2220 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_votes {
2221 : fd_clock_timestamp_vote_t_mapnode_t * votes_pool;
2222 : fd_clock_timestamp_vote_t_mapnode_t * votes_root;
2223 : };
2224 : typedef struct fd_clock_timestamp_votes fd_clock_timestamp_votes_t;
2225 0 : #define FD_CLOCK_TIMESTAMP_VOTES_FOOTPRINT sizeof(fd_clock_timestamp_votes_t)
2226 0 : #define FD_CLOCK_TIMESTAMP_VOTES_ALIGN (8UL)
2227 :
2228 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_votes_off {
2229 : uint votes_off;
2230 : };
2231 : typedef struct fd_clock_timestamp_votes_off fd_clock_timestamp_votes_off_t;
2232 : #define FD_CLOCK_TIMESTAMP_VOTES_OFF_FOOTPRINT sizeof(fd_clock_timestamp_votes_off_t)
2233 : #define FD_CLOCK_TIMESTAMP_VOTES_OFF_ALIGN (8UL)
2234 :
2235 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/sysvar/fees.rs#L21 */
2236 : /* Encoded Size: Dynamic */
2237 : struct __attribute__((aligned(8UL))) fd_sysvar_fees {
2238 : fd_fee_calculator_t fee_calculator;
2239 : };
2240 : typedef struct fd_sysvar_fees fd_sysvar_fees_t;
2241 0 : #define FD_SYSVAR_FEES_FOOTPRINT sizeof(fd_sysvar_fees_t)
2242 0 : #define FD_SYSVAR_FEES_ALIGN (8UL)
2243 :
2244 : struct __attribute__((aligned(8UL))) fd_sysvar_fees_off {
2245 : uint fee_calculator_off;
2246 : };
2247 : typedef struct fd_sysvar_fees_off fd_sysvar_fees_off_t;
2248 : #define FD_SYSVAR_FEES_OFF_FOOTPRINT sizeof(fd_sysvar_fees_off_t)
2249 : #define FD_SYSVAR_FEES_OFF_ALIGN (8UL)
2250 :
2251 : /* https://github.com/anza-xyz/agave/blob/cbc8320d35358da14d79ebcada4dfb6756ffac79/sdk/program/src/epoch_rewards.rs#L14 */
2252 : /* Encoded Size: Dynamic */
2253 : struct __attribute__((aligned(8UL))) fd_sysvar_epoch_rewards {
2254 : ulong distribution_starting_block_height;
2255 : ulong num_partitions;
2256 : fd_hash_t parent_blockhash;
2257 : uint128 total_points;
2258 : ulong total_rewards;
2259 : ulong distributed_rewards;
2260 : uchar active;
2261 : };
2262 : typedef struct fd_sysvar_epoch_rewards fd_sysvar_epoch_rewards_t;
2263 0 : #define FD_SYSVAR_EPOCH_REWARDS_FOOTPRINT sizeof(fd_sysvar_epoch_rewards_t)
2264 0 : #define FD_SYSVAR_EPOCH_REWARDS_ALIGN (8UL)
2265 :
2266 : struct __attribute__((aligned(8UL))) fd_sysvar_epoch_rewards_off {
2267 : uint distribution_starting_block_height_off;
2268 : uint num_partitions_off;
2269 : uint parent_blockhash_off;
2270 : uint total_points_off;
2271 : uint total_rewards_off;
2272 : uint distributed_rewards_off;
2273 : uint active_off;
2274 : };
2275 : typedef struct fd_sysvar_epoch_rewards_off fd_sysvar_epoch_rewards_off_t;
2276 : #define FD_SYSVAR_EPOCH_REWARDS_OFF_FOOTPRINT sizeof(fd_sysvar_epoch_rewards_off_t)
2277 : #define FD_SYSVAR_EPOCH_REWARDS_OFF_ALIGN (8UL)
2278 :
2279 : /* Encoded Size: Fixed (33 bytes) */
2280 : struct __attribute__((aligned(8UL))) fd_config_keys_pair {
2281 : fd_pubkey_t key;
2282 : uchar signer;
2283 : };
2284 : typedef struct fd_config_keys_pair fd_config_keys_pair_t;
2285 8511 : #define FD_CONFIG_KEYS_PAIR_FOOTPRINT sizeof(fd_config_keys_pair_t)
2286 8511 : #define FD_CONFIG_KEYS_PAIR_ALIGN (8UL)
2287 :
2288 : struct __attribute__((aligned(8UL))) fd_config_keys_pair_off {
2289 : uint key_off;
2290 : uint signer_off;
2291 : };
2292 : typedef struct fd_config_keys_pair_off fd_config_keys_pair_off_t;
2293 : #define FD_CONFIG_KEYS_PAIR_OFF_FOOTPRINT sizeof(fd_config_keys_pair_off_t)
2294 : #define FD_CONFIG_KEYS_PAIR_OFF_ALIGN (8UL)
2295 :
2296 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/config.rs#L14 */
2297 : /* Encoded Size: Dynamic */
2298 : struct __attribute__((aligned(8UL))) fd_stake_config {
2299 : ushort config_keys_len;
2300 : fd_config_keys_pair_t * config_keys;
2301 : double warmup_cooldown_rate;
2302 : uchar slash_penalty;
2303 : };
2304 : typedef struct fd_stake_config fd_stake_config_t;
2305 0 : #define FD_STAKE_CONFIG_FOOTPRINT sizeof(fd_stake_config_t)
2306 0 : #define FD_STAKE_CONFIG_ALIGN (8UL)
2307 :
2308 : struct __attribute__((aligned(8UL))) fd_stake_config_off {
2309 : uint config_keys_off;
2310 : uint warmup_cooldown_rate_off;
2311 : uint slash_penalty_off;
2312 : };
2313 : typedef struct fd_stake_config_off fd_stake_config_off_t;
2314 : #define FD_STAKE_CONFIG_OFF_FOOTPRINT sizeof(fd_stake_config_off_t)
2315 : #define FD_STAKE_CONFIG_OFF_ALIGN (8UL)
2316 :
2317 : /* Encoded Size: Dynamic */
2318 : struct __attribute__((aligned(8UL))) fd_feature_entry {
2319 : fd_pubkey_t pubkey;
2320 : ulong description_len;
2321 : uchar* description;
2322 : ulong since_slot;
2323 : };
2324 : typedef struct fd_feature_entry fd_feature_entry_t;
2325 0 : #define FD_FEATURE_ENTRY_FOOTPRINT sizeof(fd_feature_entry_t)
2326 0 : #define FD_FEATURE_ENTRY_ALIGN (8UL)
2327 :
2328 : struct __attribute__((aligned(8UL))) fd_feature_entry_off {
2329 : uint pubkey_off;
2330 : uint description_off;
2331 : uint since_slot_off;
2332 : };
2333 : typedef struct fd_feature_entry_off fd_feature_entry_off_t;
2334 : #define FD_FEATURE_ENTRY_OFF_FOOTPRINT sizeof(fd_feature_entry_off_t)
2335 : #define FD_FEATURE_ENTRY_OFF_ALIGN (8UL)
2336 :
2337 : /* Encoded Size: Dynamic */
2338 : struct __attribute__((aligned(16UL))) fd_firedancer_bank {
2339 : fd_stakes_t stakes;
2340 : fd_recent_block_hashes_t recent_block_hashes;
2341 : fd_clock_timestamp_votes_t timestamp_votes;
2342 : ulong slot;
2343 : ulong prev_slot;
2344 : fd_hash_t poh;
2345 : fd_hash_t banks_hash;
2346 : fd_fee_rate_governor_t fee_rate_governor;
2347 : ulong capitalization;
2348 : ulong block_height;
2349 : ulong lamports_per_signature;
2350 : ulong hashes_per_tick;
2351 : ulong ticks_per_slot;
2352 : uint128 ns_per_slot;
2353 : ulong genesis_creation_time;
2354 : double slots_per_year;
2355 : ulong max_tick_height;
2356 : fd_inflation_t inflation;
2357 : fd_epoch_schedule_t epoch_schedule;
2358 : fd_rent_t rent;
2359 : ulong collected_fees;
2360 : ulong collected_rent;
2361 : fd_vote_accounts_t epoch_stakes;
2362 : fd_sol_sysvar_last_restart_slot_t last_restart_slot;
2363 : };
2364 : typedef struct fd_firedancer_bank fd_firedancer_bank_t;
2365 0 : #define FD_FIREDANCER_BANK_FOOTPRINT sizeof(fd_firedancer_bank_t)
2366 0 : #define FD_FIREDANCER_BANK_ALIGN (16UL)
2367 :
2368 : struct __attribute__((aligned(16UL))) fd_firedancer_bank_off {
2369 : uint stakes_off;
2370 : uint recent_block_hashes_off;
2371 : uint timestamp_votes_off;
2372 : uint slot_off;
2373 : uint prev_slot_off;
2374 : uint poh_off;
2375 : uint banks_hash_off;
2376 : uint fee_rate_governor_off;
2377 : uint capitalization_off;
2378 : uint block_height_off;
2379 : uint lamports_per_signature_off;
2380 : uint hashes_per_tick_off;
2381 : uint ticks_per_slot_off;
2382 : uint ns_per_slot_off;
2383 : uint genesis_creation_time_off;
2384 : uint slots_per_year_off;
2385 : uint max_tick_height_off;
2386 : uint inflation_off;
2387 : uint epoch_schedule_off;
2388 : uint rent_off;
2389 : uint collected_fees_off;
2390 : uint collected_rent_off;
2391 : uint epoch_stakes_off;
2392 : uint last_restart_slot_off;
2393 : };
2394 : typedef struct fd_firedancer_bank_off fd_firedancer_bank_off_t;
2395 : #define FD_FIREDANCER_BANK_OFF_FOOTPRINT sizeof(fd_firedancer_bank_off_t)
2396 : #define FD_FIREDANCER_BANK_OFF_ALIGN (16UL)
2397 :
2398 : union fd_cluster_type_inner {
2399 : uchar nonempty; /* Hack to support enums with no inner structures */
2400 : };
2401 : typedef union fd_cluster_type_inner fd_cluster_type_inner_t;
2402 :
2403 : struct fd_cluster_type {
2404 : uint discriminant;
2405 : fd_cluster_type_inner_t inner;
2406 : };
2407 : typedef struct fd_cluster_type fd_cluster_type_t;
2408 0 : #define FD_CLUSTER_TYPE_FOOTPRINT sizeof(fd_cluster_type_t)
2409 0 : #define FD_CLUSTER_TYPE_ALIGN (8UL)
2410 :
2411 : /* Encoded Size: Dynamic */
2412 : struct __attribute__((aligned(16UL))) fd_epoch_bank {
2413 : fd_stakes_t stakes;
2414 : ulong hashes_per_tick;
2415 : ulong ticks_per_slot;
2416 : uint128 ns_per_slot;
2417 : ulong genesis_creation_time;
2418 : double slots_per_year;
2419 : ulong max_tick_height;
2420 : fd_inflation_t inflation;
2421 : fd_epoch_schedule_t epoch_schedule;
2422 : fd_rent_t rent;
2423 : ulong eah_start_slot;
2424 : ulong eah_stop_slot;
2425 : ulong eah_interval;
2426 : fd_hash_t genesis_hash;
2427 : uint cluster_type;
2428 : uint cluster_version[3];
2429 : fd_vote_accounts_t next_epoch_stakes;
2430 : fd_epoch_schedule_t rent_epoch_schedule;
2431 : };
2432 : typedef struct fd_epoch_bank fd_epoch_bank_t;
2433 0 : #define FD_EPOCH_BANK_FOOTPRINT sizeof(fd_epoch_bank_t)
2434 0 : #define FD_EPOCH_BANK_ALIGN (16UL)
2435 :
2436 : struct __attribute__((aligned(16UL))) fd_epoch_bank_off {
2437 : uint stakes_off;
2438 : uint hashes_per_tick_off;
2439 : uint ticks_per_slot_off;
2440 : uint ns_per_slot_off;
2441 : uint genesis_creation_time_off;
2442 : uint slots_per_year_off;
2443 : uint max_tick_height_off;
2444 : uint inflation_off;
2445 : uint epoch_schedule_off;
2446 : uint rent_off;
2447 : uint eah_start_slot_off;
2448 : uint eah_stop_slot_off;
2449 : uint eah_interval_off;
2450 : uint genesis_hash_off;
2451 : uint cluster_type_off;
2452 : uint cluster_version_off;
2453 : uint next_epoch_stakes_off;
2454 : uint rent_epoch_schedule_off;
2455 : };
2456 : typedef struct fd_epoch_bank_off fd_epoch_bank_off_t;
2457 : #define FD_EPOCH_BANK_OFF_FOOTPRINT sizeof(fd_epoch_bank_off_t)
2458 : #define FD_EPOCH_BANK_OFF_ALIGN (16UL)
2459 :
2460 : /* Encoded Size: Dynamic */
2461 : struct __attribute__((aligned(128UL))) fd_slot_bank {
2462 : fd_recent_block_hashes_t recent_block_hashes;
2463 : fd_clock_timestamp_votes_t timestamp_votes;
2464 : ulong slot;
2465 : ulong prev_slot;
2466 : fd_hash_t poh;
2467 : fd_hash_t banks_hash;
2468 : fd_hash_t epoch_account_hash;
2469 : fd_fee_rate_governor_t fee_rate_governor;
2470 : ulong capitalization;
2471 : ulong block_height;
2472 : ulong max_tick_height;
2473 : ulong collected_execution_fees;
2474 : ulong collected_priority_fees;
2475 : ulong collected_rent;
2476 : fd_vote_accounts_t epoch_stakes;
2477 : fd_sol_sysvar_last_restart_slot_t last_restart_slot;
2478 : fd_stake_accounts_t stake_account_keys;
2479 : fd_vote_accounts_t vote_account_keys;
2480 : ulong lamports_per_signature;
2481 : ulong transaction_count;
2482 : fd_slot_lthash_t lthash;
2483 : fd_block_hash_queue_t block_hash_queue;
2484 : ulong use_preceeding_epoch_stakes;
2485 : uchar has_use_preceeding_epoch_stakes;
2486 : };
2487 : typedef struct fd_slot_bank fd_slot_bank_t;
2488 0 : #define FD_SLOT_BANK_FOOTPRINT sizeof(fd_slot_bank_t)
2489 0 : #define FD_SLOT_BANK_ALIGN (128UL)
2490 :
2491 : struct __attribute__((aligned(128UL))) fd_slot_bank_off {
2492 : uint recent_block_hashes_off;
2493 : uint timestamp_votes_off;
2494 : uint slot_off;
2495 : uint prev_slot_off;
2496 : uint poh_off;
2497 : uint banks_hash_off;
2498 : uint epoch_account_hash_off;
2499 : uint fee_rate_governor_off;
2500 : uint capitalization_off;
2501 : uint block_height_off;
2502 : uint max_tick_height_off;
2503 : uint collected_execution_fees_off;
2504 : uint collected_priority_fees_off;
2505 : uint collected_rent_off;
2506 : uint epoch_stakes_off;
2507 : uint last_restart_slot_off;
2508 : uint stake_account_keys_off;
2509 : uint vote_account_keys_off;
2510 : uint lamports_per_signature_off;
2511 : uint transaction_count_off;
2512 : uint lthash_off;
2513 : uint block_hash_queue_off;
2514 : uint use_preceeding_epoch_stakes_off;
2515 : };
2516 : typedef struct fd_slot_bank_off fd_slot_bank_off_t;
2517 : #define FD_SLOT_BANK_OFF_FOOTPRINT sizeof(fd_slot_bank_off_t)
2518 : #define FD_SLOT_BANK_OFF_ALIGN (128UL)
2519 :
2520 : /* Encoded Size: Fixed (32 bytes) */
2521 : struct __attribute__((aligned(8UL))) fd_prev_epoch_inflation_rewards {
2522 : ulong validator_rewards;
2523 : double prev_epoch_duration_in_years;
2524 : double validator_rate;
2525 : double foundation_rate;
2526 : };
2527 : typedef struct fd_prev_epoch_inflation_rewards fd_prev_epoch_inflation_rewards_t;
2528 0 : #define FD_PREV_EPOCH_INFLATION_REWARDS_FOOTPRINT sizeof(fd_prev_epoch_inflation_rewards_t)
2529 0 : #define FD_PREV_EPOCH_INFLATION_REWARDS_ALIGN (8UL)
2530 :
2531 : struct __attribute__((aligned(8UL))) fd_prev_epoch_inflation_rewards_off {
2532 : uint validator_rewards_off;
2533 : uint prev_epoch_duration_in_years_off;
2534 : uint validator_rate_off;
2535 : uint foundation_rate_off;
2536 : };
2537 : typedef struct fd_prev_epoch_inflation_rewards_off fd_prev_epoch_inflation_rewards_off_t;
2538 : #define FD_PREV_EPOCH_INFLATION_REWARDS_OFF_FOOTPRINT sizeof(fd_prev_epoch_inflation_rewards_off_t)
2539 : #define FD_PREV_EPOCH_INFLATION_REWARDS_OFF_ALIGN (8UL)
2540 :
2541 : #define DEQUE_NAME deq_ulong
2542 23238 : #define DEQUE_T ulong
2543 : #include "../../util/tmpl/fd_deque_dynamic.c"
2544 : #undef DEQUE_NAME
2545 : #undef DEQUE_T
2546 : #undef DEQUE_MAX
2547 : static inline ulong *
2548 1311 : deq_ulong_alloc( fd_valloc_t valloc, ulong max ) {
2549 1311 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
2550 1311 : void * mem = fd_valloc_malloc( valloc, deq_ulong_align(), deq_ulong_footprint( max ) );
2551 1311 : return deq_ulong_join( deq_ulong_new( mem, max ) );
2552 1311 : }
2553 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L133 */
2554 : /* Encoded Size: Dynamic */
2555 : struct __attribute__((aligned(8UL))) fd_vote {
2556 : ulong * slots; /* fd_deque_dynamic */
2557 : fd_hash_t hash;
2558 : long* timestamp;
2559 : };
2560 : typedef struct fd_vote fd_vote_t;
2561 0 : #define FD_VOTE_FOOTPRINT sizeof(fd_vote_t)
2562 0 : #define FD_VOTE_ALIGN (8UL)
2563 :
2564 : struct __attribute__((aligned(8UL))) fd_vote_off {
2565 : uint slots_off;
2566 : uint hash_off;
2567 : uint timestamp_off;
2568 : };
2569 : typedef struct fd_vote_off fd_vote_off_t;
2570 : #define FD_VOTE_OFF_FOOTPRINT sizeof(fd_vote_off_t)
2571 : #define FD_VOTE_OFF_ALIGN (8UL)
2572 :
2573 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L230 */
2574 : /* Encoded Size: Fixed (97 bytes) */
2575 : struct __attribute__((aligned(8UL))) fd_vote_init {
2576 : fd_pubkey_t node_pubkey;
2577 : fd_pubkey_t authorized_voter;
2578 : fd_pubkey_t authorized_withdrawer;
2579 : uchar commission;
2580 : };
2581 : typedef struct fd_vote_init fd_vote_init_t;
2582 0 : #define FD_VOTE_INIT_FOOTPRINT sizeof(fd_vote_init_t)
2583 0 : #define FD_VOTE_INIT_ALIGN (8UL)
2584 :
2585 : struct __attribute__((aligned(8UL))) fd_vote_init_off {
2586 : uint node_pubkey_off;
2587 : uint authorized_voter_off;
2588 : uint authorized_withdrawer_off;
2589 : uint commission_off;
2590 : };
2591 : typedef struct fd_vote_init_off fd_vote_init_off_t;
2592 : #define FD_VOTE_INIT_OFF_FOOTPRINT sizeof(fd_vote_init_off_t)
2593 : #define FD_VOTE_INIT_OFF_ALIGN (8UL)
2594 :
2595 : union fd_vote_authorize_inner {
2596 : uchar nonempty; /* Hack to support enums with no inner structures */
2597 : };
2598 : typedef union fd_vote_authorize_inner fd_vote_authorize_inner_t;
2599 :
2600 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L238 */
2601 : struct fd_vote_authorize {
2602 : uint discriminant;
2603 : fd_vote_authorize_inner_t inner;
2604 : };
2605 : typedef struct fd_vote_authorize fd_vote_authorize_t;
2606 0 : #define FD_VOTE_AUTHORIZE_FOOTPRINT sizeof(fd_vote_authorize_t)
2607 0 : #define FD_VOTE_AUTHORIZE_ALIGN (8UL)
2608 :
2609 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L37 */
2610 : /* Encoded Size: Dynamic */
2611 : struct __attribute__((aligned(8UL))) fd_vote_authorize_pubkey {
2612 : fd_pubkey_t pubkey;
2613 : fd_vote_authorize_t vote_authorize;
2614 : };
2615 : typedef struct fd_vote_authorize_pubkey fd_vote_authorize_pubkey_t;
2616 0 : #define FD_VOTE_AUTHORIZE_PUBKEY_FOOTPRINT sizeof(fd_vote_authorize_pubkey_t)
2617 0 : #define FD_VOTE_AUTHORIZE_PUBKEY_ALIGN (8UL)
2618 :
2619 : struct __attribute__((aligned(8UL))) fd_vote_authorize_pubkey_off {
2620 : uint pubkey_off;
2621 : uint vote_authorize_off;
2622 : };
2623 : typedef struct fd_vote_authorize_pubkey_off fd_vote_authorize_pubkey_off_t;
2624 : #define FD_VOTE_AUTHORIZE_PUBKEY_OFF_FOOTPRINT sizeof(fd_vote_authorize_pubkey_off_t)
2625 : #define FD_VOTE_AUTHORIZE_PUBKEY_OFF_ALIGN (8UL)
2626 :
2627 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L78 */
2628 : /* Encoded Size: Dynamic */
2629 : struct __attribute__((aligned(8UL))) fd_vote_switch {
2630 : fd_vote_t vote;
2631 : fd_hash_t hash;
2632 : };
2633 : typedef struct fd_vote_switch fd_vote_switch_t;
2634 0 : #define FD_VOTE_SWITCH_FOOTPRINT sizeof(fd_vote_switch_t)
2635 0 : #define FD_VOTE_SWITCH_ALIGN (8UL)
2636 :
2637 : struct __attribute__((aligned(8UL))) fd_vote_switch_off {
2638 : uint vote_off;
2639 : uint hash_off;
2640 : };
2641 : typedef struct fd_vote_switch_off fd_vote_switch_off_t;
2642 : #define FD_VOTE_SWITCH_OFF_FOOTPRINT sizeof(fd_vote_switch_off_t)
2643 : #define FD_VOTE_SWITCH_OFF_ALIGN (8UL)
2644 :
2645 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L104 */
2646 : /* Encoded Size: Dynamic */
2647 : struct __attribute__((aligned(8UL))) fd_update_vote_state_switch {
2648 : fd_vote_state_update_t vote_state_update;
2649 : fd_hash_t hash;
2650 : };
2651 : typedef struct fd_update_vote_state_switch fd_update_vote_state_switch_t;
2652 0 : #define FD_UPDATE_VOTE_STATE_SWITCH_FOOTPRINT sizeof(fd_update_vote_state_switch_t)
2653 0 : #define FD_UPDATE_VOTE_STATE_SWITCH_ALIGN (8UL)
2654 :
2655 : struct __attribute__((aligned(8UL))) fd_update_vote_state_switch_off {
2656 : uint vote_state_update_off;
2657 : uint hash_off;
2658 : };
2659 : typedef struct fd_update_vote_state_switch_off fd_update_vote_state_switch_off_t;
2660 : #define FD_UPDATE_VOTE_STATE_SWITCH_OFF_FOOTPRINT sizeof(fd_update_vote_state_switch_off_t)
2661 : #define FD_UPDATE_VOTE_STATE_SWITCH_OFF_ALIGN (8UL)
2662 :
2663 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L244 */
2664 : /* Encoded Size: Dynamic */
2665 : struct __attribute__((aligned(8UL))) fd_vote_authorize_with_seed_args {
2666 : fd_vote_authorize_t authorization_type;
2667 : fd_pubkey_t current_authority_derived_key_owner;
2668 : ulong current_authority_derived_key_seed_len;
2669 : uchar* current_authority_derived_key_seed;
2670 : fd_pubkey_t new_authority;
2671 : };
2672 : typedef struct fd_vote_authorize_with_seed_args fd_vote_authorize_with_seed_args_t;
2673 0 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_vote_authorize_with_seed_args_t)
2674 0 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_ALIGN (8UL)
2675 :
2676 : struct __attribute__((aligned(8UL))) fd_vote_authorize_with_seed_args_off {
2677 : uint authorization_type_off;
2678 : uint current_authority_derived_key_owner_off;
2679 : uint current_authority_derived_key_seed_off;
2680 : uint new_authority_off;
2681 : };
2682 : typedef struct fd_vote_authorize_with_seed_args_off fd_vote_authorize_with_seed_args_off_t;
2683 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_OFF_FOOTPRINT sizeof(fd_vote_authorize_with_seed_args_off_t)
2684 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_OFF_ALIGN (8UL)
2685 :
2686 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L252 */
2687 : /* Encoded Size: Dynamic */
2688 : struct __attribute__((aligned(8UL))) fd_vote_authorize_checked_with_seed_args {
2689 : fd_vote_authorize_t authorization_type;
2690 : fd_pubkey_t current_authority_derived_key_owner;
2691 : ulong current_authority_derived_key_seed_len;
2692 : uchar* current_authority_derived_key_seed;
2693 : };
2694 : typedef struct fd_vote_authorize_checked_with_seed_args fd_vote_authorize_checked_with_seed_args_t;
2695 0 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_vote_authorize_checked_with_seed_args_t)
2696 0 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_ALIGN (8UL)
2697 :
2698 : struct __attribute__((aligned(8UL))) fd_vote_authorize_checked_with_seed_args_off {
2699 : uint authorization_type_off;
2700 : uint current_authority_derived_key_owner_off;
2701 : uint current_authority_derived_key_seed_off;
2702 : };
2703 : typedef struct fd_vote_authorize_checked_with_seed_args_off fd_vote_authorize_checked_with_seed_args_off_t;
2704 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_OFF_FOOTPRINT sizeof(fd_vote_authorize_checked_with_seed_args_off_t)
2705 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_OFF_ALIGN (8UL)
2706 :
2707 : union fd_vote_instruction_inner {
2708 : fd_vote_init_t initialize_account;
2709 : fd_vote_authorize_pubkey_t authorize;
2710 : fd_vote_t vote;
2711 : ulong withdraw;
2712 : uchar update_commission;
2713 : fd_vote_switch_t vote_switch;
2714 : fd_vote_authorize_t authorize_checked;
2715 : fd_vote_state_update_t update_vote_state;
2716 : fd_update_vote_state_switch_t update_vote_state_switch;
2717 : fd_vote_authorize_with_seed_args_t authorize_with_seed;
2718 : fd_vote_authorize_checked_with_seed_args_t authorize_checked_with_seed;
2719 : fd_compact_vote_state_update_t compact_update_vote_state;
2720 : fd_compact_vote_state_update_switch_t compact_update_vote_state_switch;
2721 : fd_tower_sync_t tower_sync;
2722 : fd_tower_sync_switch_t tower_sync_switch;
2723 : };
2724 : typedef union fd_vote_instruction_inner fd_vote_instruction_inner_t;
2725 :
2726 : /* https://github.com/firedancer-io/solana/blob/53a4e5d6c58b2ffe89b09304e4437f8ca198dadd/programs/vote/src/vote_instruction.rs#L21 */
2727 : struct fd_vote_instruction {
2728 : uint discriminant;
2729 : fd_vote_instruction_inner_t inner;
2730 : };
2731 : typedef struct fd_vote_instruction fd_vote_instruction_t;
2732 0 : #define FD_VOTE_INSTRUCTION_FOOTPRINT sizeof(fd_vote_instruction_t)
2733 0 : #define FD_VOTE_INSTRUCTION_ALIGN (8UL)
2734 :
2735 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L158 */
2736 : /* Encoded Size: Fixed (48 bytes) */
2737 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account {
2738 : ulong lamports;
2739 : ulong space;
2740 : fd_pubkey_t owner;
2741 : };
2742 : typedef struct fd_system_program_instruction_create_account fd_system_program_instruction_create_account_t;
2743 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_FOOTPRINT sizeof(fd_system_program_instruction_create_account_t)
2744 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_ALIGN (8UL)
2745 :
2746 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account_off {
2747 : uint lamports_off;
2748 : uint space_off;
2749 : uint owner_off;
2750 : };
2751 : typedef struct fd_system_program_instruction_create_account_off fd_system_program_instruction_create_account_off_t;
2752 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_OFF_FOOTPRINT sizeof(fd_system_program_instruction_create_account_off_t)
2753 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_OFF_ALIGN (8UL)
2754 :
2755 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L193 */
2756 : /* Encoded Size: Dynamic */
2757 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account_with_seed {
2758 : fd_pubkey_t base;
2759 : ulong seed_len;
2760 : uchar* seed;
2761 : ulong lamports;
2762 : ulong space;
2763 : fd_pubkey_t owner;
2764 : };
2765 : typedef struct fd_system_program_instruction_create_account_with_seed fd_system_program_instruction_create_account_with_seed_t;
2766 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_create_account_with_seed_t)
2767 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_ALIGN (8UL)
2768 :
2769 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account_with_seed_off {
2770 : uint base_off;
2771 : uint seed_off;
2772 : uint lamports_off;
2773 : uint space_off;
2774 : uint owner_off;
2775 : };
2776 : typedef struct fd_system_program_instruction_create_account_with_seed_off fd_system_program_instruction_create_account_with_seed_off_t;
2777 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_OFF_FOOTPRINT sizeof(fd_system_program_instruction_create_account_with_seed_off_t)
2778 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_OFF_ALIGN (8UL)
2779 :
2780 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L269 */
2781 : /* Encoded Size: Dynamic */
2782 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_allocate_with_seed {
2783 : fd_pubkey_t base;
2784 : ulong seed_len;
2785 : uchar* seed;
2786 : ulong space;
2787 : fd_pubkey_t owner;
2788 : };
2789 : typedef struct fd_system_program_instruction_allocate_with_seed fd_system_program_instruction_allocate_with_seed_t;
2790 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_allocate_with_seed_t)
2791 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_ALIGN (8UL)
2792 :
2793 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_allocate_with_seed_off {
2794 : uint base_off;
2795 : uint seed_off;
2796 : uint space_off;
2797 : uint owner_off;
2798 : };
2799 : typedef struct fd_system_program_instruction_allocate_with_seed_off fd_system_program_instruction_allocate_with_seed_off_t;
2800 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_OFF_FOOTPRINT sizeof(fd_system_program_instruction_allocate_with_seed_off_t)
2801 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_OFF_ALIGN (8UL)
2802 :
2803 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L288 */
2804 : /* Encoded Size: Dynamic */
2805 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_assign_with_seed {
2806 : fd_pubkey_t base;
2807 : ulong seed_len;
2808 : uchar* seed;
2809 : fd_pubkey_t owner;
2810 : };
2811 : typedef struct fd_system_program_instruction_assign_with_seed fd_system_program_instruction_assign_with_seed_t;
2812 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_assign_with_seed_t)
2813 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_ALIGN (8UL)
2814 :
2815 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_assign_with_seed_off {
2816 : uint base_off;
2817 : uint seed_off;
2818 : uint owner_off;
2819 : };
2820 : typedef struct fd_system_program_instruction_assign_with_seed_off fd_system_program_instruction_assign_with_seed_off_t;
2821 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_OFF_FOOTPRINT sizeof(fd_system_program_instruction_assign_with_seed_off_t)
2822 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_OFF_ALIGN (8UL)
2823 :
2824 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L288 */
2825 : /* Encoded Size: Dynamic */
2826 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_transfer_with_seed {
2827 : ulong lamports;
2828 : ulong from_seed_len;
2829 : uchar* from_seed;
2830 : fd_pubkey_t from_owner;
2831 : };
2832 : typedef struct fd_system_program_instruction_transfer_with_seed fd_system_program_instruction_transfer_with_seed_t;
2833 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_transfer_with_seed_t)
2834 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_ALIGN (8UL)
2835 :
2836 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_transfer_with_seed_off {
2837 : uint lamports_off;
2838 : uint from_seed_off;
2839 : uint from_owner_off;
2840 : };
2841 : typedef struct fd_system_program_instruction_transfer_with_seed_off fd_system_program_instruction_transfer_with_seed_off_t;
2842 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_OFF_FOOTPRINT sizeof(fd_system_program_instruction_transfer_with_seed_off_t)
2843 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_OFF_ALIGN (8UL)
2844 :
2845 : union fd_system_program_instruction_inner {
2846 : fd_system_program_instruction_create_account_t create_account;
2847 : fd_pubkey_t assign;
2848 : ulong transfer;
2849 : fd_system_program_instruction_create_account_with_seed_t create_account_with_seed;
2850 : ulong withdraw_nonce_account;
2851 : fd_pubkey_t initialize_nonce_account;
2852 : fd_pubkey_t authorize_nonce_account;
2853 : ulong allocate;
2854 : fd_system_program_instruction_allocate_with_seed_t allocate_with_seed;
2855 : fd_system_program_instruction_assign_with_seed_t assign_with_seed;
2856 : fd_system_program_instruction_transfer_with_seed_t transfer_with_seed;
2857 : };
2858 : typedef union fd_system_program_instruction_inner fd_system_program_instruction_inner_t;
2859 :
2860 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L152 */
2861 : struct fd_system_program_instruction {
2862 : uint discriminant;
2863 : fd_system_program_instruction_inner_t inner;
2864 : };
2865 : typedef struct fd_system_program_instruction fd_system_program_instruction_t;
2866 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_system_program_instruction_t)
2867 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALIGN (8UL)
2868 :
2869 : union fd_system_error_inner {
2870 : uchar nonempty; /* Hack to support enums with no inner structures */
2871 : };
2872 : typedef union fd_system_error_inner fd_system_error_inner_t;
2873 :
2874 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L16 */
2875 : struct fd_system_error {
2876 : uint discriminant;
2877 : fd_system_error_inner_t inner;
2878 : };
2879 : typedef struct fd_system_error fd_system_error_t;
2880 0 : #define FD_SYSTEM_ERROR_FOOTPRINT sizeof(fd_system_error_t)
2881 0 : #define FD_SYSTEM_ERROR_ALIGN (8UL)
2882 :
2883 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L169 */
2884 : /* Encoded Size: Fixed (64 bytes) */
2885 : struct __attribute__((aligned(8UL))) fd_stake_authorized {
2886 : fd_pubkey_t staker;
2887 : fd_pubkey_t withdrawer;
2888 : };
2889 : typedef struct fd_stake_authorized fd_stake_authorized_t;
2890 0 : #define FD_STAKE_AUTHORIZED_FOOTPRINT sizeof(fd_stake_authorized_t)
2891 0 : #define FD_STAKE_AUTHORIZED_ALIGN (8UL)
2892 :
2893 : struct __attribute__((aligned(8UL))) fd_stake_authorized_off {
2894 : uint staker_off;
2895 : uint withdrawer_off;
2896 : };
2897 : typedef struct fd_stake_authorized_off fd_stake_authorized_off_t;
2898 : #define FD_STAKE_AUTHORIZED_OFF_FOOTPRINT sizeof(fd_stake_authorized_off_t)
2899 : #define FD_STAKE_AUTHORIZED_OFF_ALIGN (8UL)
2900 :
2901 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L135 */
2902 : /* Encoded Size: Fixed (48 bytes) */
2903 : struct __attribute__((aligned(8UL))) fd_stake_lockup {
2904 : long unix_timestamp;
2905 : ulong epoch;
2906 : fd_pubkey_t custodian;
2907 : };
2908 : typedef struct fd_stake_lockup fd_stake_lockup_t;
2909 0 : #define FD_STAKE_LOCKUP_FOOTPRINT sizeof(fd_stake_lockup_t)
2910 0 : #define FD_STAKE_LOCKUP_ALIGN (8UL)
2911 :
2912 : struct __attribute__((aligned(8UL))) fd_stake_lockup_off {
2913 : uint unix_timestamp_off;
2914 : uint epoch_off;
2915 : uint custodian_off;
2916 : };
2917 : typedef struct fd_stake_lockup_off fd_stake_lockup_off_t;
2918 : #define FD_STAKE_LOCKUP_OFF_FOOTPRINT sizeof(fd_stake_lockup_off_t)
2919 : #define FD_STAKE_LOCKUP_OFF_ALIGN (8UL)
2920 :
2921 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L68 */
2922 : /* Encoded Size: Dynamic */
2923 : struct __attribute__((aligned(8UL))) fd_stake_instruction_initialize {
2924 : fd_stake_authorized_t authorized;
2925 : fd_stake_lockup_t lockup;
2926 : };
2927 : typedef struct fd_stake_instruction_initialize fd_stake_instruction_initialize_t;
2928 0 : #define FD_STAKE_INSTRUCTION_INITIALIZE_FOOTPRINT sizeof(fd_stake_instruction_initialize_t)
2929 0 : #define FD_STAKE_INSTRUCTION_INITIALIZE_ALIGN (8UL)
2930 :
2931 : struct __attribute__((aligned(8UL))) fd_stake_instruction_initialize_off {
2932 : uint authorized_off;
2933 : uint lockup_off;
2934 : };
2935 : typedef struct fd_stake_instruction_initialize_off fd_stake_instruction_initialize_off_t;
2936 : #define FD_STAKE_INSTRUCTION_INITIALIZE_OFF_FOOTPRINT sizeof(fd_stake_instruction_initialize_off_t)
2937 : #define FD_STAKE_INSTRUCTION_INITIALIZE_OFF_ALIGN (8UL)
2938 :
2939 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L78 */
2940 : /* Encoded Size: Dynamic */
2941 : struct __attribute__((aligned(8UL))) fd_stake_lockup_custodian_args {
2942 : fd_stake_lockup_t lockup;
2943 : fd_sol_sysvar_clock_t clock;
2944 : fd_pubkey_t * custodian;
2945 : };
2946 : typedef struct fd_stake_lockup_custodian_args fd_stake_lockup_custodian_args_t;
2947 0 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_FOOTPRINT sizeof(fd_stake_lockup_custodian_args_t)
2948 0 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_ALIGN (8UL)
2949 :
2950 : struct __attribute__((aligned(8UL))) fd_stake_lockup_custodian_args_off {
2951 : uint lockup_off;
2952 : uint clock_off;
2953 : uint custodian_off;
2954 : };
2955 : typedef struct fd_stake_lockup_custodian_args_off fd_stake_lockup_custodian_args_off_t;
2956 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_OFF_FOOTPRINT sizeof(fd_stake_lockup_custodian_args_off_t)
2957 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_OFF_ALIGN (8UL)
2958 :
2959 : union fd_stake_authorize_inner {
2960 : uchar nonempty; /* Hack to support enums with no inner structures */
2961 : };
2962 : typedef union fd_stake_authorize_inner fd_stake_authorize_inner_t;
2963 :
2964 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L117 */
2965 : struct fd_stake_authorize {
2966 : uint discriminant;
2967 : fd_stake_authorize_inner_t inner;
2968 : };
2969 : typedef struct fd_stake_authorize fd_stake_authorize_t;
2970 0 : #define FD_STAKE_AUTHORIZE_FOOTPRINT sizeof(fd_stake_authorize_t)
2971 0 : #define FD_STAKE_AUTHORIZE_ALIGN (8UL)
2972 :
2973 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L78 */
2974 : /* Encoded Size: Dynamic */
2975 : struct __attribute__((aligned(8UL))) fd_stake_instruction_authorize {
2976 : fd_pubkey_t pubkey;
2977 : fd_stake_authorize_t stake_authorize;
2978 : };
2979 : typedef struct fd_stake_instruction_authorize fd_stake_instruction_authorize_t;
2980 0 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_FOOTPRINT sizeof(fd_stake_instruction_authorize_t)
2981 0 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_ALIGN (8UL)
2982 :
2983 : struct __attribute__((aligned(8UL))) fd_stake_instruction_authorize_off {
2984 : uint pubkey_off;
2985 : uint stake_authorize_off;
2986 : };
2987 : typedef struct fd_stake_instruction_authorize_off fd_stake_instruction_authorize_off_t;
2988 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_OFF_FOOTPRINT sizeof(fd_stake_instruction_authorize_off_t)
2989 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_OFF_ALIGN (8UL)
2990 :
2991 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L241 */
2992 : /* Encoded Size: Dynamic */
2993 : struct __attribute__((aligned(8UL))) fd_authorize_with_seed_args {
2994 : fd_pubkey_t new_authorized_pubkey;
2995 : fd_stake_authorize_t stake_authorize;
2996 : ulong authority_seed_len;
2997 : uchar* authority_seed;
2998 : fd_pubkey_t authority_owner;
2999 : };
3000 : typedef struct fd_authorize_with_seed_args fd_authorize_with_seed_args_t;
3001 0 : #define FD_AUTHORIZE_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_authorize_with_seed_args_t)
3002 0 : #define FD_AUTHORIZE_WITH_SEED_ARGS_ALIGN (8UL)
3003 :
3004 : struct __attribute__((aligned(8UL))) fd_authorize_with_seed_args_off {
3005 : uint new_authorized_pubkey_off;
3006 : uint stake_authorize_off;
3007 : uint authority_seed_off;
3008 : uint authority_owner_off;
3009 : };
3010 : typedef struct fd_authorize_with_seed_args_off fd_authorize_with_seed_args_off_t;
3011 : #define FD_AUTHORIZE_WITH_SEED_ARGS_OFF_FOOTPRINT sizeof(fd_authorize_with_seed_args_off_t)
3012 : #define FD_AUTHORIZE_WITH_SEED_ARGS_OFF_ALIGN (8UL)
3013 :
3014 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L249 */
3015 : /* Encoded Size: Dynamic */
3016 : struct __attribute__((aligned(8UL))) fd_authorize_checked_with_seed_args {
3017 : fd_stake_authorize_t stake_authorize;
3018 : ulong authority_seed_len;
3019 : uchar* authority_seed;
3020 : fd_pubkey_t authority_owner;
3021 : };
3022 : typedef struct fd_authorize_checked_with_seed_args fd_authorize_checked_with_seed_args_t;
3023 0 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_authorize_checked_with_seed_args_t)
3024 0 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_ALIGN (8UL)
3025 :
3026 : struct __attribute__((aligned(8UL))) fd_authorize_checked_with_seed_args_off {
3027 : uint stake_authorize_off;
3028 : uint authority_seed_off;
3029 : uint authority_owner_off;
3030 : };
3031 : typedef struct fd_authorize_checked_with_seed_args_off fd_authorize_checked_with_seed_args_off_t;
3032 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_OFF_FOOTPRINT sizeof(fd_authorize_checked_with_seed_args_off_t)
3033 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_OFF_ALIGN (8UL)
3034 :
3035 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L235 */
3036 : /* Encoded Size: Dynamic */
3037 : struct __attribute__((aligned(8UL))) fd_lockup_checked_args {
3038 : long* unix_timestamp;
3039 : ulong* epoch;
3040 : };
3041 : typedef struct fd_lockup_checked_args fd_lockup_checked_args_t;
3042 0 : #define FD_LOCKUP_CHECKED_ARGS_FOOTPRINT sizeof(fd_lockup_checked_args_t)
3043 0 : #define FD_LOCKUP_CHECKED_ARGS_ALIGN (8UL)
3044 :
3045 : struct __attribute__((aligned(8UL))) fd_lockup_checked_args_off {
3046 : uint unix_timestamp_off;
3047 : uint epoch_off;
3048 : };
3049 : typedef struct fd_lockup_checked_args_off fd_lockup_checked_args_off_t;
3050 : #define FD_LOCKUP_CHECKED_ARGS_OFF_FOOTPRINT sizeof(fd_lockup_checked_args_off_t)
3051 : #define FD_LOCKUP_CHECKED_ARGS_OFF_ALIGN (8UL)
3052 :
3053 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L228 */
3054 : /* Encoded Size: Dynamic */
3055 : struct __attribute__((aligned(8UL))) fd_lockup_args {
3056 : long* unix_timestamp;
3057 : ulong* epoch;
3058 : fd_pubkey_t * custodian;
3059 : };
3060 : typedef struct fd_lockup_args fd_lockup_args_t;
3061 0 : #define FD_LOCKUP_ARGS_FOOTPRINT sizeof(fd_lockup_args_t)
3062 0 : #define FD_LOCKUP_ARGS_ALIGN (8UL)
3063 :
3064 : struct __attribute__((aligned(8UL))) fd_lockup_args_off {
3065 : uint unix_timestamp_off;
3066 : uint epoch_off;
3067 : uint custodian_off;
3068 : };
3069 : typedef struct fd_lockup_args_off fd_lockup_args_off_t;
3070 : #define FD_LOCKUP_ARGS_OFF_FOOTPRINT sizeof(fd_lockup_args_off_t)
3071 : #define FD_LOCKUP_ARGS_OFF_ALIGN (8UL)
3072 :
3073 : union fd_stake_instruction_inner {
3074 : fd_stake_instruction_initialize_t initialize;
3075 : fd_stake_instruction_authorize_t authorize;
3076 : ulong split;
3077 : ulong withdraw;
3078 : fd_lockup_args_t set_lockup;
3079 : fd_authorize_with_seed_args_t authorize_with_seed;
3080 : fd_stake_authorize_t authorize_checked;
3081 : fd_authorize_checked_with_seed_args_t authorize_checked_with_seed;
3082 : fd_lockup_checked_args_t set_lockup_checked;
3083 : ulong move_stake;
3084 : ulong move_lamports;
3085 : };
3086 : typedef union fd_stake_instruction_inner fd_stake_instruction_inner_t;
3087 :
3088 : /* https://github.com/anza-xyz/agave/blob/cdff19c7807b006dd63429114fb1d9573bf74172/sdk/program/src/stake/instruction.rs#L96 */
3089 : struct fd_stake_instruction {
3090 : uint discriminant;
3091 : fd_stake_instruction_inner_t inner;
3092 : };
3093 : typedef struct fd_stake_instruction fd_stake_instruction_t;
3094 0 : #define FD_STAKE_INSTRUCTION_FOOTPRINT sizeof(fd_stake_instruction_t)
3095 0 : #define FD_STAKE_INSTRUCTION_ALIGN (8UL)
3096 :
3097 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L248 */
3098 : /* Encoded Size: Dynamic */
3099 : struct __attribute__((aligned(8UL))) fd_stake_meta {
3100 : ulong rent_exempt_reserve;
3101 : fd_stake_authorized_t authorized;
3102 : fd_stake_lockup_t lockup;
3103 : };
3104 : typedef struct fd_stake_meta fd_stake_meta_t;
3105 0 : #define FD_STAKE_META_FOOTPRINT sizeof(fd_stake_meta_t)
3106 0 : #define FD_STAKE_META_ALIGN (8UL)
3107 :
3108 : struct __attribute__((aligned(8UL))) fd_stake_meta_off {
3109 : uint rent_exempt_reserve_off;
3110 : uint authorized_off;
3111 : uint lockup_off;
3112 : };
3113 : typedef struct fd_stake_meta_off fd_stake_meta_off_t;
3114 : #define FD_STAKE_META_OFF_FOOTPRINT sizeof(fd_stake_meta_off_t)
3115 : #define FD_STAKE_META_OFF_ALIGN (8UL)
3116 :
3117 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/stake_flags.rs#L21 */
3118 : /* Encoded Size: Fixed (1 bytes) */
3119 : struct __attribute__((aligned(8UL))) fd_stake_flags {
3120 : uchar bits;
3121 : };
3122 : typedef struct fd_stake_flags fd_stake_flags_t;
3123 0 : #define FD_STAKE_FLAGS_FOOTPRINT sizeof(fd_stake_flags_t)
3124 0 : #define FD_STAKE_FLAGS_ALIGN (8UL)
3125 :
3126 : struct __attribute__((aligned(8UL))) fd_stake_flags_off {
3127 : uint bits_off;
3128 : };
3129 : typedef struct fd_stake_flags_off fd_stake_flags_off_t;
3130 : #define FD_STAKE_FLAGS_OFF_FOOTPRINT sizeof(fd_stake_flags_off_t)
3131 : #define FD_STAKE_FLAGS_OFF_ALIGN (8UL)
3132 :
3133 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/state.rs#L135 */
3134 : /* Encoded Size: Dynamic */
3135 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_initialized {
3136 : fd_stake_meta_t meta;
3137 : };
3138 : typedef struct fd_stake_state_v2_initialized fd_stake_state_v2_initialized_t;
3139 0 : #define FD_STAKE_STATE_V2_INITIALIZED_FOOTPRINT sizeof(fd_stake_state_v2_initialized_t)
3140 0 : #define FD_STAKE_STATE_V2_INITIALIZED_ALIGN (8UL)
3141 :
3142 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_initialized_off {
3143 : uint meta_off;
3144 : };
3145 : typedef struct fd_stake_state_v2_initialized_off fd_stake_state_v2_initialized_off_t;
3146 : #define FD_STAKE_STATE_V2_INITIALIZED_OFF_FOOTPRINT sizeof(fd_stake_state_v2_initialized_off_t)
3147 : #define FD_STAKE_STATE_V2_INITIALIZED_OFF_ALIGN (8UL)
3148 :
3149 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/state.rs#L136 */
3150 : /* Encoded Size: Dynamic */
3151 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_stake {
3152 : fd_stake_meta_t meta;
3153 : fd_stake_t stake;
3154 : fd_stake_flags_t stake_flags;
3155 : };
3156 : typedef struct fd_stake_state_v2_stake fd_stake_state_v2_stake_t;
3157 0 : #define FD_STAKE_STATE_V2_STAKE_FOOTPRINT sizeof(fd_stake_state_v2_stake_t)
3158 0 : #define FD_STAKE_STATE_V2_STAKE_ALIGN (8UL)
3159 :
3160 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_stake_off {
3161 : uint meta_off;
3162 : uint stake_off;
3163 : uint stake_flags_off;
3164 : };
3165 : typedef struct fd_stake_state_v2_stake_off fd_stake_state_v2_stake_off_t;
3166 : #define FD_STAKE_STATE_V2_STAKE_OFF_FOOTPRINT sizeof(fd_stake_state_v2_stake_off_t)
3167 : #define FD_STAKE_STATE_V2_STAKE_OFF_ALIGN (8UL)
3168 :
3169 : union fd_stake_state_v2_inner {
3170 : fd_stake_state_v2_initialized_t initialized;
3171 : fd_stake_state_v2_stake_t stake;
3172 : };
3173 : typedef union fd_stake_state_v2_inner fd_stake_state_v2_inner_t;
3174 :
3175 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/state.rs#L132 */
3176 : struct fd_stake_state_v2 {
3177 : uint discriminant;
3178 : fd_stake_state_v2_inner_t inner;
3179 : };
3180 : typedef struct fd_stake_state_v2 fd_stake_state_v2_t;
3181 0 : #define FD_STAKE_STATE_V2_FOOTPRINT sizeof(fd_stake_state_v2_t)
3182 0 : #define FD_STAKE_STATE_V2_ALIGN (8UL)
3183 :
3184 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/nonce/state/current.rs#L17 */
3185 : /* Encoded Size: Dynamic */
3186 : struct __attribute__((aligned(8UL))) fd_nonce_data {
3187 : fd_pubkey_t authority;
3188 : fd_hash_t durable_nonce;
3189 : fd_fee_calculator_t fee_calculator;
3190 : };
3191 : typedef struct fd_nonce_data fd_nonce_data_t;
3192 0 : #define FD_NONCE_DATA_FOOTPRINT sizeof(fd_nonce_data_t)
3193 0 : #define FD_NONCE_DATA_ALIGN (8UL)
3194 :
3195 : struct __attribute__((aligned(8UL))) fd_nonce_data_off {
3196 : uint authority_off;
3197 : uint durable_nonce_off;
3198 : uint fee_calculator_off;
3199 : };
3200 : typedef struct fd_nonce_data_off fd_nonce_data_off_t;
3201 : #define FD_NONCE_DATA_OFF_FOOTPRINT sizeof(fd_nonce_data_off_t)
3202 : #define FD_NONCE_DATA_OFF_ALIGN (8UL)
3203 :
3204 : union fd_nonce_state_inner {
3205 : fd_nonce_data_t initialized;
3206 : };
3207 : typedef union fd_nonce_state_inner fd_nonce_state_inner_t;
3208 :
3209 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/nonce/state/current.rs#L65 */
3210 : struct fd_nonce_state {
3211 : uint discriminant;
3212 : fd_nonce_state_inner_t inner;
3213 : };
3214 : typedef struct fd_nonce_state fd_nonce_state_t;
3215 0 : #define FD_NONCE_STATE_FOOTPRINT sizeof(fd_nonce_state_t)
3216 0 : #define FD_NONCE_STATE_ALIGN (8UL)
3217 :
3218 : union fd_nonce_state_versions_inner {
3219 : fd_nonce_state_t legacy;
3220 : fd_nonce_state_t current;
3221 : };
3222 : typedef union fd_nonce_state_versions_inner fd_nonce_state_versions_inner_t;
3223 :
3224 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/nonce/state/mod.rs#L9 */
3225 : struct fd_nonce_state_versions {
3226 : uint discriminant;
3227 : fd_nonce_state_versions_inner_t inner;
3228 : };
3229 : typedef struct fd_nonce_state_versions fd_nonce_state_versions_t;
3230 0 : #define FD_NONCE_STATE_VERSIONS_FOOTPRINT sizeof(fd_nonce_state_versions_t)
3231 0 : #define FD_NONCE_STATE_VERSIONS_ALIGN (8UL)
3232 :
3233 : /* https://github.com/solana-labs/solana/blob/6c520396cd76807f6227a7973f7373b37894251c/sdk/src/compute_budget.rs#L28 */
3234 : /* Encoded Size: Fixed (8 bytes) */
3235 : struct __attribute__((aligned(8UL))) fd_compute_budget_program_instruction_request_units_deprecated {
3236 : uint units;
3237 : uint additional_fee;
3238 : };
3239 : typedef struct fd_compute_budget_program_instruction_request_units_deprecated fd_compute_budget_program_instruction_request_units_deprecated_t;
3240 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_FOOTPRINT sizeof(fd_compute_budget_program_instruction_request_units_deprecated_t)
3241 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_ALIGN (8UL)
3242 :
3243 : struct __attribute__((aligned(8UL))) fd_compute_budget_program_instruction_request_units_deprecated_off {
3244 : uint units_off;
3245 : uint additional_fee_off;
3246 : };
3247 : typedef struct fd_compute_budget_program_instruction_request_units_deprecated_off fd_compute_budget_program_instruction_request_units_deprecated_off_t;
3248 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_OFF_FOOTPRINT sizeof(fd_compute_budget_program_instruction_request_units_deprecated_off_t)
3249 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_OFF_ALIGN (8UL)
3250 :
3251 : union fd_compute_budget_program_instruction_inner {
3252 : fd_compute_budget_program_instruction_request_units_deprecated_t request_units_deprecated;
3253 : uint request_heap_frame;
3254 : uint set_compute_unit_limit;
3255 : ulong set_compute_unit_price;
3256 : uint set_loaded_accounts_data_size_limit;
3257 : };
3258 : typedef union fd_compute_budget_program_instruction_inner fd_compute_budget_program_instruction_inner_t;
3259 :
3260 : /* https://github.com/solana-labs/solana/blob/6c520396cd76807f6227a7973f7373b37894251c/sdk/src/compute_budget.rs#L25 */
3261 : struct fd_compute_budget_program_instruction {
3262 : uint discriminant;
3263 : fd_compute_budget_program_instruction_inner_t inner;
3264 : };
3265 : typedef struct fd_compute_budget_program_instruction fd_compute_budget_program_instruction_t;
3266 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_compute_budget_program_instruction_t)
3267 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_ALIGN (8UL)
3268 :
3269 : /* https://github.com/solana-labs/solana/blob/a03ae63daff987912c48ee286eb8ee7e8a84bf01/programs/config/src/lib.rs#L32 */
3270 : /* Encoded Size: Dynamic */
3271 : struct __attribute__((aligned(8UL))) fd_config_keys {
3272 : ushort keys_len;
3273 : fd_config_keys_pair_t * keys;
3274 : };
3275 : typedef struct fd_config_keys fd_config_keys_t;
3276 0 : #define FD_CONFIG_KEYS_FOOTPRINT sizeof(fd_config_keys_t)
3277 0 : #define FD_CONFIG_KEYS_ALIGN (8UL)
3278 :
3279 : struct __attribute__((aligned(8UL))) fd_config_keys_off {
3280 : uint keys_off;
3281 : };
3282 : typedef struct fd_config_keys_off fd_config_keys_off_t;
3283 : #define FD_CONFIG_KEYS_OFF_FOOTPRINT sizeof(fd_config_keys_off_t)
3284 : #define FD_CONFIG_KEYS_OFF_ALIGN (8UL)
3285 :
3286 : /* */
3287 : /* Encoded Size: Dynamic */
3288 : struct __attribute__((aligned(8UL))) fd_bpf_loader_program_instruction_write {
3289 : uint offset;
3290 : ulong bytes_len;
3291 : uchar* bytes;
3292 : };
3293 : typedef struct fd_bpf_loader_program_instruction_write fd_bpf_loader_program_instruction_write_t;
3294 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_FOOTPRINT sizeof(fd_bpf_loader_program_instruction_write_t)
3295 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_ALIGN (8UL)
3296 :
3297 : struct __attribute__((aligned(8UL))) fd_bpf_loader_program_instruction_write_off {
3298 : uint offset_off;
3299 : uint bytes_off;
3300 : };
3301 : typedef struct fd_bpf_loader_program_instruction_write_off fd_bpf_loader_program_instruction_write_off_t;
3302 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_OFF_FOOTPRINT sizeof(fd_bpf_loader_program_instruction_write_off_t)
3303 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_OFF_ALIGN (8UL)
3304 :
3305 : union fd_bpf_loader_program_instruction_inner {
3306 : fd_bpf_loader_program_instruction_write_t write;
3307 : };
3308 : typedef union fd_bpf_loader_program_instruction_inner fd_bpf_loader_program_instruction_inner_t;
3309 :
3310 : /* */
3311 : struct fd_bpf_loader_program_instruction {
3312 : uint discriminant;
3313 : fd_bpf_loader_program_instruction_inner_t inner;
3314 : };
3315 : typedef struct fd_bpf_loader_program_instruction fd_bpf_loader_program_instruction_t;
3316 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_bpf_loader_program_instruction_t)
3317 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_ALIGN (8UL)
3318 :
3319 : /* https://github.com/solana-labs/solana/blob/d90e1582869d8ef8d386a1c156eda987404c43be/sdk/program/src/loader_v4_instruction.rs#L18 */
3320 : /* Encoded Size: Dynamic */
3321 : struct __attribute__((aligned(8UL))) fd_bpf_loader_v4_program_instruction_write {
3322 : uint offset;
3323 : ulong bytes_len;
3324 : uchar* bytes;
3325 : };
3326 : typedef struct fd_bpf_loader_v4_program_instruction_write fd_bpf_loader_v4_program_instruction_write_t;
3327 0 : #define FD_BPF_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_FOOTPRINT sizeof(fd_bpf_loader_v4_program_instruction_write_t)
3328 0 : #define FD_BPF_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_ALIGN (8UL)
3329 :
3330 : struct __attribute__((aligned(8UL))) fd_bpf_loader_v4_program_instruction_write_off {
3331 : uint offset_off;
3332 : uint bytes_off;
3333 : };
3334 : typedef struct fd_bpf_loader_v4_program_instruction_write_off fd_bpf_loader_v4_program_instruction_write_off_t;
3335 : #define FD_BPF_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_OFF_FOOTPRINT sizeof(fd_bpf_loader_v4_program_instruction_write_off_t)
3336 : #define FD_BPF_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_OFF_ALIGN (8UL)
3337 :
3338 : union fd_bpf_loader_v4_program_instruction_inner {
3339 : fd_bpf_loader_v4_program_instruction_write_t write;
3340 : uint truncate;
3341 : };
3342 : typedef union fd_bpf_loader_v4_program_instruction_inner fd_bpf_loader_v4_program_instruction_inner_t;
3343 :
3344 : /* https://github.com/solana-labs/solana/blob/d90e1582869d8ef8d386a1c156eda987404c43be/sdk/program/src/loader_v4_instruction.rs#L5-L6 */
3345 : struct fd_bpf_loader_v4_program_instruction {
3346 : uint discriminant;
3347 : fd_bpf_loader_v4_program_instruction_inner_t inner;
3348 : };
3349 : typedef struct fd_bpf_loader_v4_program_instruction fd_bpf_loader_v4_program_instruction_t;
3350 0 : #define FD_BPF_LOADER_V4_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_bpf_loader_v4_program_instruction_t)
3351 0 : #define FD_BPF_LOADER_V4_PROGRAM_INSTRUCTION_ALIGN (8UL)
3352 :
3353 : /* */
3354 : /* Encoded Size: Dynamic */
3355 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_write {
3356 : uint offset;
3357 : ulong bytes_len;
3358 : uchar* bytes;
3359 : };
3360 : typedef struct fd_bpf_upgradeable_loader_program_instruction_write fd_bpf_upgradeable_loader_program_instruction_write_t;
3361 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_write_t)
3362 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_ALIGN (8UL)
3363 :
3364 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_write_off {
3365 : uint offset_off;
3366 : uint bytes_off;
3367 : };
3368 : typedef struct fd_bpf_upgradeable_loader_program_instruction_write_off fd_bpf_upgradeable_loader_program_instruction_write_off_t;
3369 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_OFF_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_write_off_t)
3370 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_OFF_ALIGN (8UL)
3371 :
3372 : /* */
3373 : /* Encoded Size: Fixed (8 bytes) */
3374 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len {
3375 : ulong max_data_len;
3376 : };
3377 : typedef struct fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t;
3378 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_DEPLOY_WITH_MAX_DATA_LEN_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t)
3379 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_DEPLOY_WITH_MAX_DATA_LEN_ALIGN (8UL)
3380 :
3381 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_off {
3382 : uint max_data_len_off;
3383 : };
3384 : typedef struct fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_off fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_off_t;
3385 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_DEPLOY_WITH_MAX_DATA_LEN_OFF_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_off_t)
3386 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_DEPLOY_WITH_MAX_DATA_LEN_OFF_ALIGN (8UL)
3387 :
3388 : /* */
3389 : /* Encoded Size: Fixed (4 bytes) */
3390 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_extend_program {
3391 : uint additional_bytes;
3392 : };
3393 : typedef struct fd_bpf_upgradeable_loader_program_instruction_extend_program fd_bpf_upgradeable_loader_program_instruction_extend_program_t;
3394 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_extend_program_t)
3395 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_ALIGN (8UL)
3396 :
3397 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_extend_program_off {
3398 : uint additional_bytes_off;
3399 : };
3400 : typedef struct fd_bpf_upgradeable_loader_program_instruction_extend_program_off fd_bpf_upgradeable_loader_program_instruction_extend_program_off_t;
3401 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_OFF_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_extend_program_off_t)
3402 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_OFF_ALIGN (8UL)
3403 :
3404 : union fd_bpf_upgradeable_loader_program_instruction_inner {
3405 : fd_bpf_upgradeable_loader_program_instruction_write_t write;
3406 : fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t deploy_with_max_data_len;
3407 : fd_bpf_upgradeable_loader_program_instruction_extend_program_t extend_program;
3408 : };
3409 : typedef union fd_bpf_upgradeable_loader_program_instruction_inner fd_bpf_upgradeable_loader_program_instruction_inner_t;
3410 :
3411 : /* */
3412 : struct fd_bpf_upgradeable_loader_program_instruction {
3413 : uint discriminant;
3414 : fd_bpf_upgradeable_loader_program_instruction_inner_t inner;
3415 : };
3416 : typedef struct fd_bpf_upgradeable_loader_program_instruction fd_bpf_upgradeable_loader_program_instruction_t;
3417 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_t)
3418 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_ALIGN (8UL)
3419 :
3420 : /* */
3421 : /* Encoded Size: Dynamic */
3422 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_buffer {
3423 : fd_pubkey_t * authority_address;
3424 : };
3425 : typedef struct fd_bpf_upgradeable_loader_state_buffer fd_bpf_upgradeable_loader_state_buffer_t;
3426 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_buffer_t)
3427 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_ALIGN (8UL)
3428 :
3429 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_buffer_off {
3430 : uint authority_address_off;
3431 : };
3432 : typedef struct fd_bpf_upgradeable_loader_state_buffer_off fd_bpf_upgradeable_loader_state_buffer_off_t;
3433 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_OFF_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_buffer_off_t)
3434 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_OFF_ALIGN (8UL)
3435 :
3436 : /* */
3437 : /* Encoded Size: Fixed (32 bytes) */
3438 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program {
3439 : fd_pubkey_t programdata_address;
3440 : };
3441 : typedef struct fd_bpf_upgradeable_loader_state_program fd_bpf_upgradeable_loader_state_program_t;
3442 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_t)
3443 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_ALIGN (8UL)
3444 :
3445 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program_off {
3446 : uint programdata_address_off;
3447 : };
3448 : typedef struct fd_bpf_upgradeable_loader_state_program_off fd_bpf_upgradeable_loader_state_program_off_t;
3449 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_OFF_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_off_t)
3450 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_OFF_ALIGN (8UL)
3451 :
3452 : /* */
3453 : /* Encoded Size: Dynamic */
3454 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program_data {
3455 : ulong slot;
3456 : fd_pubkey_t * upgrade_authority_address;
3457 : };
3458 : typedef struct fd_bpf_upgradeable_loader_state_program_data fd_bpf_upgradeable_loader_state_program_data_t;
3459 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_data_t)
3460 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_ALIGN (8UL)
3461 :
3462 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program_data_off {
3463 : uint slot_off;
3464 : uint upgrade_authority_address_off;
3465 : };
3466 : typedef struct fd_bpf_upgradeable_loader_state_program_data_off fd_bpf_upgradeable_loader_state_program_data_off_t;
3467 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_OFF_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_data_off_t)
3468 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_OFF_ALIGN (8UL)
3469 :
3470 : union fd_bpf_upgradeable_loader_state_inner {
3471 : fd_bpf_upgradeable_loader_state_buffer_t buffer;
3472 : fd_bpf_upgradeable_loader_state_program_t program;
3473 : fd_bpf_upgradeable_loader_state_program_data_t program_data;
3474 : };
3475 : typedef union fd_bpf_upgradeable_loader_state_inner fd_bpf_upgradeable_loader_state_inner_t;
3476 :
3477 : /* */
3478 : struct fd_bpf_upgradeable_loader_state {
3479 : uint discriminant;
3480 : fd_bpf_upgradeable_loader_state_inner_t inner;
3481 : };
3482 : typedef struct fd_bpf_upgradeable_loader_state fd_bpf_upgradeable_loader_state_t;
3483 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_t)
3484 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_ALIGN (8UL)
3485 :
3486 : /* https://github.com/firedancer-io/solana/blob/f4b7c54f9e021b40cfc7cbd32dc12b19dedbe791/ledger/src/blockstore_meta.rs#L178 */
3487 : /* Encoded Size: Dynamic */
3488 : struct __attribute__((aligned(8UL))) fd_frozen_hash_status {
3489 : fd_hash_t frozen_hash;
3490 : uchar is_duplicate_confirmed;
3491 : };
3492 : typedef struct fd_frozen_hash_status fd_frozen_hash_status_t;
3493 0 : #define FD_FROZEN_HASH_STATUS_FOOTPRINT sizeof(fd_frozen_hash_status_t)
3494 0 : #define FD_FROZEN_HASH_STATUS_ALIGN (8UL)
3495 :
3496 : struct __attribute__((aligned(8UL))) fd_frozen_hash_status_off {
3497 : uint frozen_hash_off;
3498 : uint is_duplicate_confirmed_off;
3499 : };
3500 : typedef struct fd_frozen_hash_status_off fd_frozen_hash_status_off_t;
3501 : #define FD_FROZEN_HASH_STATUS_OFF_FOOTPRINT sizeof(fd_frozen_hash_status_off_t)
3502 : #define FD_FROZEN_HASH_STATUS_OFF_ALIGN (8UL)
3503 :
3504 : union fd_frozen_hash_versioned_inner {
3505 : fd_frozen_hash_status_t current;
3506 : };
3507 : typedef union fd_frozen_hash_versioned_inner fd_frozen_hash_versioned_inner_t;
3508 :
3509 : /* https://github.com/firedancer-io/solana/blob/f4b7c54f9e021b40cfc7cbd32dc12b19dedbe791/ledger/src/blockstore_meta.rs#L157 */
3510 : struct fd_frozen_hash_versioned {
3511 : uint discriminant;
3512 : fd_frozen_hash_versioned_inner_t inner;
3513 : };
3514 : typedef struct fd_frozen_hash_versioned fd_frozen_hash_versioned_t;
3515 0 : #define FD_FROZEN_HASH_VERSIONED_FOOTPRINT sizeof(fd_frozen_hash_versioned_t)
3516 0 : #define FD_FROZEN_HASH_VERSIONED_ALIGN (8UL)
3517 :
3518 : /* */
3519 : /* Encoded Size: Dynamic */
3520 : struct __attribute__((aligned(8UL))) fd_lookup_table_meta {
3521 : ulong deactivation_slot;
3522 : ulong last_extended_slot;
3523 : uchar last_extended_slot_start_index;
3524 : fd_pubkey_t authority;
3525 : uchar has_authority;
3526 : ushort _padding;
3527 : };
3528 : typedef struct fd_lookup_table_meta fd_lookup_table_meta_t;
3529 0 : #define FD_LOOKUP_TABLE_META_FOOTPRINT sizeof(fd_lookup_table_meta_t)
3530 0 : #define FD_LOOKUP_TABLE_META_ALIGN (8UL)
3531 :
3532 : struct __attribute__((aligned(8UL))) fd_lookup_table_meta_off {
3533 : uint deactivation_slot_off;
3534 : uint last_extended_slot_off;
3535 : uint last_extended_slot_start_index_off;
3536 : uint authority_off;
3537 : uint _padding_off;
3538 : };
3539 : typedef struct fd_lookup_table_meta_off fd_lookup_table_meta_off_t;
3540 : #define FD_LOOKUP_TABLE_META_OFF_FOOTPRINT sizeof(fd_lookup_table_meta_off_t)
3541 : #define FD_LOOKUP_TABLE_META_OFF_ALIGN (8UL)
3542 :
3543 : /* */
3544 : /* Encoded Size: Dynamic */
3545 : struct __attribute__((aligned(8UL))) fd_address_lookup_table {
3546 : fd_lookup_table_meta_t meta;
3547 : };
3548 : typedef struct fd_address_lookup_table fd_address_lookup_table_t;
3549 0 : #define FD_ADDRESS_LOOKUP_TABLE_FOOTPRINT sizeof(fd_address_lookup_table_t)
3550 0 : #define FD_ADDRESS_LOOKUP_TABLE_ALIGN (8UL)
3551 :
3552 : struct __attribute__((aligned(8UL))) fd_address_lookup_table_off {
3553 : uint meta_off;
3554 : };
3555 : typedef struct fd_address_lookup_table_off fd_address_lookup_table_off_t;
3556 : #define FD_ADDRESS_LOOKUP_TABLE_OFF_FOOTPRINT sizeof(fd_address_lookup_table_off_t)
3557 : #define FD_ADDRESS_LOOKUP_TABLE_OFF_ALIGN (8UL)
3558 :
3559 : union fd_address_lookup_table_state_inner {
3560 : fd_address_lookup_table_t lookup_table;
3561 : };
3562 : typedef union fd_address_lookup_table_state_inner fd_address_lookup_table_state_inner_t;
3563 :
3564 : /* */
3565 : struct fd_address_lookup_table_state {
3566 : uint discriminant;
3567 : fd_address_lookup_table_state_inner_t inner;
3568 : };
3569 : typedef struct fd_address_lookup_table_state fd_address_lookup_table_state_t;
3570 0 : #define FD_ADDRESS_LOOKUP_TABLE_STATE_FOOTPRINT sizeof(fd_address_lookup_table_state_t)
3571 0 : #define FD_ADDRESS_LOOKUP_TABLE_STATE_ALIGN (8UL)
3572 :
3573 : /* Encoded Size: Dynamic */
3574 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8_inner {
3575 : ulong vec_len;
3576 : uchar* vec;
3577 : };
3578 : typedef struct fd_gossip_bitvec_u8_inner fd_gossip_bitvec_u8_inner_t;
3579 0 : #define FD_GOSSIP_BITVEC_U8_INNER_FOOTPRINT sizeof(fd_gossip_bitvec_u8_inner_t)
3580 0 : #define FD_GOSSIP_BITVEC_U8_INNER_ALIGN (8UL)
3581 :
3582 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8_inner_off {
3583 : uint vec_off;
3584 : };
3585 : typedef struct fd_gossip_bitvec_u8_inner_off fd_gossip_bitvec_u8_inner_off_t;
3586 : #define FD_GOSSIP_BITVEC_U8_INNER_OFF_FOOTPRINT sizeof(fd_gossip_bitvec_u8_inner_off_t)
3587 : #define FD_GOSSIP_BITVEC_U8_INNER_OFF_ALIGN (8UL)
3588 :
3589 : /* Encoded Size: Dynamic */
3590 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8 {
3591 : fd_gossip_bitvec_u8_inner_t bits;
3592 : uchar has_bits;
3593 : ulong len;
3594 : };
3595 : typedef struct fd_gossip_bitvec_u8 fd_gossip_bitvec_u8_t;
3596 0 : #define FD_GOSSIP_BITVEC_U8_FOOTPRINT sizeof(fd_gossip_bitvec_u8_t)
3597 0 : #define FD_GOSSIP_BITVEC_U8_ALIGN (8UL)
3598 :
3599 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8_off {
3600 : uint bits_off;
3601 : uint len_off;
3602 : };
3603 : typedef struct fd_gossip_bitvec_u8_off fd_gossip_bitvec_u8_off_t;
3604 : #define FD_GOSSIP_BITVEC_U8_OFF_FOOTPRINT sizeof(fd_gossip_bitvec_u8_off_t)
3605 : #define FD_GOSSIP_BITVEC_U8_OFF_ALIGN (8UL)
3606 :
3607 : /* Encoded Size: Dynamic */
3608 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64_inner {
3609 : ulong vec_len;
3610 : ulong* vec;
3611 : };
3612 : typedef struct fd_gossip_bitvec_u64_inner fd_gossip_bitvec_u64_inner_t;
3613 0 : #define FD_GOSSIP_BITVEC_U64_INNER_FOOTPRINT sizeof(fd_gossip_bitvec_u64_inner_t)
3614 0 : #define FD_GOSSIP_BITVEC_U64_INNER_ALIGN (8UL)
3615 :
3616 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64_inner_off {
3617 : uint vec_off;
3618 : };
3619 : typedef struct fd_gossip_bitvec_u64_inner_off fd_gossip_bitvec_u64_inner_off_t;
3620 : #define FD_GOSSIP_BITVEC_U64_INNER_OFF_FOOTPRINT sizeof(fd_gossip_bitvec_u64_inner_off_t)
3621 : #define FD_GOSSIP_BITVEC_U64_INNER_OFF_ALIGN (8UL)
3622 :
3623 : /* Encoded Size: Dynamic */
3624 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64 {
3625 : fd_gossip_bitvec_u64_inner_t bits;
3626 : uchar has_bits;
3627 : ulong len;
3628 : };
3629 : typedef struct fd_gossip_bitvec_u64 fd_gossip_bitvec_u64_t;
3630 0 : #define FD_GOSSIP_BITVEC_U64_FOOTPRINT sizeof(fd_gossip_bitvec_u64_t)
3631 0 : #define FD_GOSSIP_BITVEC_U64_ALIGN (8UL)
3632 :
3633 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64_off {
3634 : uint bits_off;
3635 : uint len_off;
3636 : };
3637 : typedef struct fd_gossip_bitvec_u64_off fd_gossip_bitvec_u64_off_t;
3638 : #define FD_GOSSIP_BITVEC_U64_OFF_FOOTPRINT sizeof(fd_gossip_bitvec_u64_off_t)
3639 : #define FD_GOSSIP_BITVEC_U64_OFF_ALIGN (8UL)
3640 :
3641 : /* https://github.com/solana-labs/solana/blob/52616cf7aa424a80f770e5ec3f2cd49d1cfeb845/gossip/src/ping_pong.rs#L22 */
3642 : /* Encoded Size: Dynamic */
3643 : struct __attribute__((aligned(8UL))) fd_gossip_ping {
3644 : fd_pubkey_t from;
3645 : fd_hash_t token;
3646 : fd_signature_t signature;
3647 : };
3648 : typedef struct fd_gossip_ping fd_gossip_ping_t;
3649 0 : #define FD_GOSSIP_PING_FOOTPRINT sizeof(fd_gossip_ping_t)
3650 0 : #define FD_GOSSIP_PING_ALIGN (8UL)
3651 :
3652 : struct __attribute__((aligned(8UL))) fd_gossip_ping_off {
3653 : uint from_off;
3654 : uint token_off;
3655 : uint signature_off;
3656 : };
3657 : typedef struct fd_gossip_ping_off fd_gossip_ping_off_t;
3658 : #define FD_GOSSIP_PING_OFF_FOOTPRINT sizeof(fd_gossip_ping_off_t)
3659 : #define FD_GOSSIP_PING_OFF_ALIGN (8UL)
3660 :
3661 : union fd_gossip_ip_addr_inner {
3662 : fd_gossip_ip4_addr_t ip4;
3663 : fd_gossip_ip6_addr_t ip6;
3664 : };
3665 : typedef union fd_gossip_ip_addr_inner fd_gossip_ip_addr_inner_t;
3666 :
3667 : /* Unnecessary and sad wrapper type. IPv4 addresses could have been mapped to IPv6 */
3668 : struct fd_gossip_ip_addr {
3669 : uint discriminant;
3670 : fd_gossip_ip_addr_inner_t inner;
3671 : };
3672 : typedef struct fd_gossip_ip_addr fd_gossip_ip_addr_t;
3673 3 : #define FD_GOSSIP_IP_ADDR_FOOTPRINT sizeof(fd_gossip_ip_addr_t)
3674 3 : #define FD_GOSSIP_IP_ADDR_ALIGN (8UL)
3675 :
3676 : /* Encoded Size: Dynamic */
3677 : struct __attribute__((aligned(8UL))) fd_gossip_prune_data {
3678 : fd_pubkey_t pubkey;
3679 : ulong prunes_len;
3680 : fd_pubkey_t * prunes;
3681 : fd_signature_t signature;
3682 : fd_pubkey_t destination;
3683 : ulong wallclock;
3684 : };
3685 : typedef struct fd_gossip_prune_data fd_gossip_prune_data_t;
3686 0 : #define FD_GOSSIP_PRUNE_DATA_FOOTPRINT sizeof(fd_gossip_prune_data_t)
3687 0 : #define FD_GOSSIP_PRUNE_DATA_ALIGN (8UL)
3688 :
3689 : struct __attribute__((aligned(8UL))) fd_gossip_prune_data_off {
3690 : uint pubkey_off;
3691 : uint prunes_off;
3692 : uint signature_off;
3693 : uint destination_off;
3694 : uint wallclock_off;
3695 : };
3696 : typedef struct fd_gossip_prune_data_off fd_gossip_prune_data_off_t;
3697 : #define FD_GOSSIP_PRUNE_DATA_OFF_FOOTPRINT sizeof(fd_gossip_prune_data_off_t)
3698 : #define FD_GOSSIP_PRUNE_DATA_OFF_ALIGN (8UL)
3699 :
3700 : /* Encoded Size: Dynamic */
3701 : struct __attribute__((aligned(8UL))) fd_gossip_prune_sign_data {
3702 : fd_pubkey_t pubkey;
3703 : ulong prunes_len;
3704 : fd_pubkey_t * prunes;
3705 : fd_pubkey_t destination;
3706 : ulong wallclock;
3707 : };
3708 : typedef struct fd_gossip_prune_sign_data fd_gossip_prune_sign_data_t;
3709 0 : #define FD_GOSSIP_PRUNE_SIGN_DATA_FOOTPRINT sizeof(fd_gossip_prune_sign_data_t)
3710 0 : #define FD_GOSSIP_PRUNE_SIGN_DATA_ALIGN (8UL)
3711 :
3712 : struct __attribute__((aligned(8UL))) fd_gossip_prune_sign_data_off {
3713 : uint pubkey_off;
3714 : uint prunes_off;
3715 : uint destination_off;
3716 : uint wallclock_off;
3717 : };
3718 : typedef struct fd_gossip_prune_sign_data_off fd_gossip_prune_sign_data_off_t;
3719 : #define FD_GOSSIP_PRUNE_SIGN_DATA_OFF_FOOTPRINT sizeof(fd_gossip_prune_sign_data_off_t)
3720 : #define FD_GOSSIP_PRUNE_SIGN_DATA_OFF_ALIGN (8UL)
3721 :
3722 : /* Encoded Size: Dynamic */
3723 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr {
3724 : fd_gossip_ip_addr_t addr;
3725 : ushort port;
3726 : };
3727 : typedef struct fd_gossip_socket_addr fd_gossip_socket_addr_t;
3728 0 : #define FD_GOSSIP_SOCKET_ADDR_FOOTPRINT sizeof(fd_gossip_socket_addr_t)
3729 0 : #define FD_GOSSIP_SOCKET_ADDR_ALIGN (8UL)
3730 :
3731 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr_off {
3732 : uint addr_off;
3733 : uint port_off;
3734 : };
3735 : typedef struct fd_gossip_socket_addr_off fd_gossip_socket_addr_off_t;
3736 : #define FD_GOSSIP_SOCKET_ADDR_OFF_FOOTPRINT sizeof(fd_gossip_socket_addr_off_t)
3737 : #define FD_GOSSIP_SOCKET_ADDR_OFF_ALIGN (8UL)
3738 :
3739 : /* Encoded Size: Dynamic */
3740 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v1 {
3741 : fd_pubkey_t id;
3742 : fd_gossip_socket_addr_t gossip;
3743 : fd_gossip_socket_addr_t tvu;
3744 : fd_gossip_socket_addr_t tvu_fwd;
3745 : fd_gossip_socket_addr_t repair;
3746 : fd_gossip_socket_addr_t tpu;
3747 : fd_gossip_socket_addr_t tpu_fwd;
3748 : fd_gossip_socket_addr_t tpu_vote;
3749 : fd_gossip_socket_addr_t rpc;
3750 : fd_gossip_socket_addr_t rpc_pubsub;
3751 : fd_gossip_socket_addr_t serve_repair;
3752 : ulong wallclock;
3753 : ushort shred_version;
3754 : };
3755 : typedef struct fd_gossip_contact_info_v1 fd_gossip_contact_info_v1_t;
3756 0 : #define FD_GOSSIP_CONTACT_INFO_V1_FOOTPRINT sizeof(fd_gossip_contact_info_v1_t)
3757 0 : #define FD_GOSSIP_CONTACT_INFO_V1_ALIGN (8UL)
3758 :
3759 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v1_off {
3760 : uint id_off;
3761 : uint gossip_off;
3762 : uint tvu_off;
3763 : uint tvu_fwd_off;
3764 : uint repair_off;
3765 : uint tpu_off;
3766 : uint tpu_fwd_off;
3767 : uint tpu_vote_off;
3768 : uint rpc_off;
3769 : uint rpc_pubsub_off;
3770 : uint serve_repair_off;
3771 : uint wallclock_off;
3772 : uint shred_version_off;
3773 : };
3774 : typedef struct fd_gossip_contact_info_v1_off fd_gossip_contact_info_v1_off_t;
3775 : #define FD_GOSSIP_CONTACT_INFO_V1_OFF_FOOTPRINT sizeof(fd_gossip_contact_info_v1_off_t)
3776 : #define FD_GOSSIP_CONTACT_INFO_V1_OFF_ALIGN (8UL)
3777 :
3778 : /* Encoded Size: Dynamic */
3779 : struct __attribute__((aligned(8UL))) fd_gossip_vote {
3780 : uchar index;
3781 : fd_pubkey_t from;
3782 : fd_flamenco_txn_t txn;
3783 : ulong wallclock;
3784 : };
3785 : typedef struct fd_gossip_vote fd_gossip_vote_t;
3786 0 : #define FD_GOSSIP_VOTE_FOOTPRINT sizeof(fd_gossip_vote_t)
3787 0 : #define FD_GOSSIP_VOTE_ALIGN (8UL)
3788 :
3789 : struct __attribute__((aligned(8UL))) fd_gossip_vote_off {
3790 : uint index_off;
3791 : uint from_off;
3792 : uint txn_off;
3793 : uint wallclock_off;
3794 : };
3795 : typedef struct fd_gossip_vote_off fd_gossip_vote_off_t;
3796 : #define FD_GOSSIP_VOTE_OFF_FOOTPRINT sizeof(fd_gossip_vote_off_t)
3797 : #define FD_GOSSIP_VOTE_OFF_ALIGN (8UL)
3798 :
3799 : /* Encoded Size: Dynamic */
3800 : struct __attribute__((aligned(8UL))) fd_gossip_lowest_slot {
3801 : uchar u8;
3802 : fd_pubkey_t from;
3803 : ulong root;
3804 : ulong lowest;
3805 : ulong slots_len;
3806 : ulong* slots;
3807 : ulong i_dont_know;
3808 : ulong wallclock;
3809 : };
3810 : typedef struct fd_gossip_lowest_slot fd_gossip_lowest_slot_t;
3811 0 : #define FD_GOSSIP_LOWEST_SLOT_FOOTPRINT sizeof(fd_gossip_lowest_slot_t)
3812 0 : #define FD_GOSSIP_LOWEST_SLOT_ALIGN (8UL)
3813 :
3814 : struct __attribute__((aligned(8UL))) fd_gossip_lowest_slot_off {
3815 : uint u8_off;
3816 : uint from_off;
3817 : uint root_off;
3818 : uint lowest_off;
3819 : uint slots_off;
3820 : uint i_dont_know_off;
3821 : uint wallclock_off;
3822 : };
3823 : typedef struct fd_gossip_lowest_slot_off fd_gossip_lowest_slot_off_t;
3824 : #define FD_GOSSIP_LOWEST_SLOT_OFF_FOOTPRINT sizeof(fd_gossip_lowest_slot_off_t)
3825 : #define FD_GOSSIP_LOWEST_SLOT_OFF_ALIGN (8UL)
3826 :
3827 : /* Encoded Size: Dynamic */
3828 : struct __attribute__((aligned(8UL))) fd_gossip_slot_hashes {
3829 : fd_pubkey_t from;
3830 : ulong hashes_len;
3831 : fd_slot_hash_t * hashes;
3832 : ulong wallclock;
3833 : };
3834 : typedef struct fd_gossip_slot_hashes fd_gossip_slot_hashes_t;
3835 0 : #define FD_GOSSIP_SLOT_HASHES_FOOTPRINT sizeof(fd_gossip_slot_hashes_t)
3836 0 : #define FD_GOSSIP_SLOT_HASHES_ALIGN (8UL)
3837 :
3838 : struct __attribute__((aligned(8UL))) fd_gossip_slot_hashes_off {
3839 : uint from_off;
3840 : uint hashes_off;
3841 : uint wallclock_off;
3842 : };
3843 : typedef struct fd_gossip_slot_hashes_off fd_gossip_slot_hashes_off_t;
3844 : #define FD_GOSSIP_SLOT_HASHES_OFF_FOOTPRINT sizeof(fd_gossip_slot_hashes_off_t)
3845 : #define FD_GOSSIP_SLOT_HASHES_OFF_ALIGN (8UL)
3846 :
3847 : /* Encoded Size: Dynamic */
3848 : struct __attribute__((aligned(8UL))) fd_gossip_slots {
3849 : ulong first_slot;
3850 : ulong num;
3851 : fd_gossip_bitvec_u8_t slots;
3852 : };
3853 : typedef struct fd_gossip_slots fd_gossip_slots_t;
3854 0 : #define FD_GOSSIP_SLOTS_FOOTPRINT sizeof(fd_gossip_slots_t)
3855 0 : #define FD_GOSSIP_SLOTS_ALIGN (8UL)
3856 :
3857 : struct __attribute__((aligned(8UL))) fd_gossip_slots_off {
3858 : uint first_slot_off;
3859 : uint num_off;
3860 : uint slots_off;
3861 : };
3862 : typedef struct fd_gossip_slots_off fd_gossip_slots_off_t;
3863 : #define FD_GOSSIP_SLOTS_OFF_FOOTPRINT sizeof(fd_gossip_slots_off_t)
3864 : #define FD_GOSSIP_SLOTS_OFF_ALIGN (8UL)
3865 :
3866 : /* Encoded Size: Dynamic */
3867 : struct __attribute__((aligned(8UL))) fd_gossip_flate2_slots {
3868 : ulong first_slot;
3869 : ulong num;
3870 : ulong compressed_len;
3871 : uchar* compressed;
3872 : };
3873 : typedef struct fd_gossip_flate2_slots fd_gossip_flate2_slots_t;
3874 0 : #define FD_GOSSIP_FLATE2_SLOTS_FOOTPRINT sizeof(fd_gossip_flate2_slots_t)
3875 0 : #define FD_GOSSIP_FLATE2_SLOTS_ALIGN (8UL)
3876 :
3877 : struct __attribute__((aligned(8UL))) fd_gossip_flate2_slots_off {
3878 : uint first_slot_off;
3879 : uint num_off;
3880 : uint compressed_off;
3881 : };
3882 : typedef struct fd_gossip_flate2_slots_off fd_gossip_flate2_slots_off_t;
3883 : #define FD_GOSSIP_FLATE2_SLOTS_OFF_FOOTPRINT sizeof(fd_gossip_flate2_slots_off_t)
3884 : #define FD_GOSSIP_FLATE2_SLOTS_OFF_ALIGN (8UL)
3885 :
3886 : union fd_gossip_slots_enum_inner {
3887 : fd_gossip_flate2_slots_t flate2;
3888 : fd_gossip_slots_t uncompressed;
3889 : };
3890 : typedef union fd_gossip_slots_enum_inner fd_gossip_slots_enum_inner_t;
3891 :
3892 : struct fd_gossip_slots_enum {
3893 : uint discriminant;
3894 : fd_gossip_slots_enum_inner_t inner;
3895 : };
3896 : typedef struct fd_gossip_slots_enum fd_gossip_slots_enum_t;
3897 0 : #define FD_GOSSIP_SLOTS_ENUM_FOOTPRINT sizeof(fd_gossip_slots_enum_t)
3898 0 : #define FD_GOSSIP_SLOTS_ENUM_ALIGN (8UL)
3899 :
3900 : /* Encoded Size: Dynamic */
3901 : struct __attribute__((aligned(8UL))) fd_gossip_epoch_slots {
3902 : uchar u8;
3903 : fd_pubkey_t from;
3904 : ulong slots_len;
3905 : fd_gossip_slots_enum_t * slots;
3906 : ulong wallclock;
3907 : };
3908 : typedef struct fd_gossip_epoch_slots fd_gossip_epoch_slots_t;
3909 0 : #define FD_GOSSIP_EPOCH_SLOTS_FOOTPRINT sizeof(fd_gossip_epoch_slots_t)
3910 0 : #define FD_GOSSIP_EPOCH_SLOTS_ALIGN (8UL)
3911 :
3912 : struct __attribute__((aligned(8UL))) fd_gossip_epoch_slots_off {
3913 : uint u8_off;
3914 : uint from_off;
3915 : uint slots_off;
3916 : uint wallclock_off;
3917 : };
3918 : typedef struct fd_gossip_epoch_slots_off fd_gossip_epoch_slots_off_t;
3919 : #define FD_GOSSIP_EPOCH_SLOTS_OFF_FOOTPRINT sizeof(fd_gossip_epoch_slots_off_t)
3920 : #define FD_GOSSIP_EPOCH_SLOTS_OFF_ALIGN (8UL)
3921 :
3922 : /* Encoded Size: Dynamic */
3923 : struct __attribute__((aligned(8UL))) fd_gossip_version_v1 {
3924 : fd_pubkey_t from;
3925 : ulong wallclock;
3926 : ushort major;
3927 : ushort minor;
3928 : ushort patch;
3929 : uint commit;
3930 : uchar has_commit;
3931 : };
3932 : typedef struct fd_gossip_version_v1 fd_gossip_version_v1_t;
3933 0 : #define FD_GOSSIP_VERSION_V1_FOOTPRINT sizeof(fd_gossip_version_v1_t)
3934 0 : #define FD_GOSSIP_VERSION_V1_ALIGN (8UL)
3935 :
3936 : struct __attribute__((aligned(8UL))) fd_gossip_version_v1_off {
3937 : uint from_off;
3938 : uint wallclock_off;
3939 : uint major_off;
3940 : uint minor_off;
3941 : uint patch_off;
3942 : uint commit_off;
3943 : };
3944 : typedef struct fd_gossip_version_v1_off fd_gossip_version_v1_off_t;
3945 : #define FD_GOSSIP_VERSION_V1_OFF_FOOTPRINT sizeof(fd_gossip_version_v1_off_t)
3946 : #define FD_GOSSIP_VERSION_V1_OFF_ALIGN (8UL)
3947 :
3948 : /* Encoded Size: Dynamic */
3949 : struct __attribute__((aligned(8UL))) fd_gossip_version_v2 {
3950 : fd_pubkey_t from;
3951 : ulong wallclock;
3952 : ushort major;
3953 : ushort minor;
3954 : ushort patch;
3955 : uint commit;
3956 : uchar has_commit;
3957 : uint feature_set;
3958 : };
3959 : typedef struct fd_gossip_version_v2 fd_gossip_version_v2_t;
3960 0 : #define FD_GOSSIP_VERSION_V2_FOOTPRINT sizeof(fd_gossip_version_v2_t)
3961 0 : #define FD_GOSSIP_VERSION_V2_ALIGN (8UL)
3962 :
3963 : struct __attribute__((aligned(8UL))) fd_gossip_version_v2_off {
3964 : uint from_off;
3965 : uint wallclock_off;
3966 : uint major_off;
3967 : uint minor_off;
3968 : uint patch_off;
3969 : uint commit_off;
3970 : uint feature_set_off;
3971 : };
3972 : typedef struct fd_gossip_version_v2_off fd_gossip_version_v2_off_t;
3973 : #define FD_GOSSIP_VERSION_V2_OFF_FOOTPRINT sizeof(fd_gossip_version_v2_off_t)
3974 : #define FD_GOSSIP_VERSION_V2_OFF_ALIGN (8UL)
3975 :
3976 : /* Encoded Size: Dynamic */
3977 : struct __attribute__((aligned(8UL))) fd_gossip_version_v3 {
3978 : ushort major;
3979 : ushort minor;
3980 : ushort patch;
3981 : uint commit;
3982 : uint feature_set;
3983 : ushort client;
3984 : };
3985 : typedef struct fd_gossip_version_v3 fd_gossip_version_v3_t;
3986 0 : #define FD_GOSSIP_VERSION_V3_FOOTPRINT sizeof(fd_gossip_version_v3_t)
3987 0 : #define FD_GOSSIP_VERSION_V3_ALIGN (8UL)
3988 :
3989 : struct __attribute__((aligned(8UL))) fd_gossip_version_v3_off {
3990 : uint major_off;
3991 : uint minor_off;
3992 : uint patch_off;
3993 : uint commit_off;
3994 : uint feature_set_off;
3995 : uint client_off;
3996 : };
3997 : typedef struct fd_gossip_version_v3_off fd_gossip_version_v3_off_t;
3998 : #define FD_GOSSIP_VERSION_V3_OFF_FOOTPRINT sizeof(fd_gossip_version_v3_off_t)
3999 : #define FD_GOSSIP_VERSION_V3_OFF_ALIGN (8UL)
4000 :
4001 : /* Encoded Size: Fixed (56 bytes) */
4002 : struct __attribute__((aligned(8UL))) fd_gossip_node_instance {
4003 : fd_pubkey_t from;
4004 : ulong wallclock;
4005 : long timestamp;
4006 : ulong token;
4007 : };
4008 : typedef struct fd_gossip_node_instance fd_gossip_node_instance_t;
4009 0 : #define FD_GOSSIP_NODE_INSTANCE_FOOTPRINT sizeof(fd_gossip_node_instance_t)
4010 0 : #define FD_GOSSIP_NODE_INSTANCE_ALIGN (8UL)
4011 :
4012 : struct __attribute__((aligned(8UL))) fd_gossip_node_instance_off {
4013 : uint from_off;
4014 : uint wallclock_off;
4015 : uint timestamp_off;
4016 : uint token_off;
4017 : };
4018 : typedef struct fd_gossip_node_instance_off fd_gossip_node_instance_off_t;
4019 : #define FD_GOSSIP_NODE_INSTANCE_OFF_FOOTPRINT sizeof(fd_gossip_node_instance_off_t)
4020 : #define FD_GOSSIP_NODE_INSTANCE_OFF_ALIGN (8UL)
4021 :
4022 : /* Encoded Size: Dynamic */
4023 : struct __attribute__((aligned(8UL))) fd_gossip_duplicate_shred {
4024 : ushort duplicate_shred_index;
4025 : fd_pubkey_t from;
4026 : ulong wallclock;
4027 : ulong slot;
4028 : uint _unused;
4029 : uchar _unused_shred_type;
4030 : uchar num_chunks;
4031 : uchar chunk_index;
4032 : ulong chunk_len;
4033 : uchar* chunk;
4034 : };
4035 : typedef struct fd_gossip_duplicate_shred fd_gossip_duplicate_shred_t;
4036 0 : #define FD_GOSSIP_DUPLICATE_SHRED_FOOTPRINT sizeof(fd_gossip_duplicate_shred_t)
4037 0 : #define FD_GOSSIP_DUPLICATE_SHRED_ALIGN (8UL)
4038 :
4039 : struct __attribute__((aligned(8UL))) fd_gossip_duplicate_shred_off {
4040 : uint duplicate_shred_index_off;
4041 : uint from_off;
4042 : uint wallclock_off;
4043 : uint slot_off;
4044 : uint _unused_off;
4045 : uint _unused_shred_type_off;
4046 : uint num_chunks_off;
4047 : uint chunk_index_off;
4048 : uint chunk_off;
4049 : };
4050 : typedef struct fd_gossip_duplicate_shred_off fd_gossip_duplicate_shred_off_t;
4051 : #define FD_GOSSIP_DUPLICATE_SHRED_OFF_FOOTPRINT sizeof(fd_gossip_duplicate_shred_off_t)
4052 : #define FD_GOSSIP_DUPLICATE_SHRED_OFF_ALIGN (8UL)
4053 :
4054 : /* Encoded Size: Dynamic */
4055 : struct __attribute__((aligned(8UL))) fd_gossip_incremental_snapshot_hashes {
4056 : fd_pubkey_t from;
4057 : fd_slot_hash_t base_hash;
4058 : ulong hashes_len;
4059 : fd_slot_hash_t * hashes;
4060 : ulong wallclock;
4061 : };
4062 : typedef struct fd_gossip_incremental_snapshot_hashes fd_gossip_incremental_snapshot_hashes_t;
4063 0 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_FOOTPRINT sizeof(fd_gossip_incremental_snapshot_hashes_t)
4064 0 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_ALIGN (8UL)
4065 :
4066 : struct __attribute__((aligned(8UL))) fd_gossip_incremental_snapshot_hashes_off {
4067 : uint from_off;
4068 : uint base_hash_off;
4069 : uint hashes_off;
4070 : uint wallclock_off;
4071 : };
4072 : typedef struct fd_gossip_incremental_snapshot_hashes_off fd_gossip_incremental_snapshot_hashes_off_t;
4073 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_OFF_FOOTPRINT sizeof(fd_gossip_incremental_snapshot_hashes_off_t)
4074 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_OFF_ALIGN (8UL)
4075 :
4076 : /* Encoded Size: Dynamic */
4077 : struct __attribute__((aligned(8UL))) fd_gossip_socket_entry {
4078 : uchar key;
4079 : uchar index;
4080 : ushort offset;
4081 : };
4082 : typedef struct fd_gossip_socket_entry fd_gossip_socket_entry_t;
4083 3 : #define FD_GOSSIP_SOCKET_ENTRY_FOOTPRINT sizeof(fd_gossip_socket_entry_t)
4084 3 : #define FD_GOSSIP_SOCKET_ENTRY_ALIGN (8UL)
4085 :
4086 : struct __attribute__((aligned(8UL))) fd_gossip_socket_entry_off {
4087 : uint key_off;
4088 : uint index_off;
4089 : uint offset_off;
4090 : };
4091 : typedef struct fd_gossip_socket_entry_off fd_gossip_socket_entry_off_t;
4092 : #define FD_GOSSIP_SOCKET_ENTRY_OFF_FOOTPRINT sizeof(fd_gossip_socket_entry_off_t)
4093 : #define FD_GOSSIP_SOCKET_ENTRY_OFF_ALIGN (8UL)
4094 :
4095 : /* Encoded Size: Dynamic */
4096 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v2 {
4097 : fd_pubkey_t from;
4098 : ulong wallclock;
4099 : ulong outset;
4100 : ushort shred_version;
4101 : fd_gossip_version_v3_t version;
4102 : ushort addrs_len;
4103 : fd_gossip_ip_addr_t * addrs;
4104 : ushort sockets_len;
4105 : fd_gossip_socket_entry_t * sockets;
4106 : ushort extensions_len;
4107 : uint* extensions;
4108 : };
4109 : typedef struct fd_gossip_contact_info_v2 fd_gossip_contact_info_v2_t;
4110 0 : #define FD_GOSSIP_CONTACT_INFO_V2_FOOTPRINT sizeof(fd_gossip_contact_info_v2_t)
4111 0 : #define FD_GOSSIP_CONTACT_INFO_V2_ALIGN (8UL)
4112 :
4113 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v2_off {
4114 : uint from_off;
4115 : uint wallclock_off;
4116 : uint outset_off;
4117 : uint shred_version_off;
4118 : uint version_off;
4119 : uint addrs_off;
4120 : uint sockets_off;
4121 : uint extensions_off;
4122 : };
4123 : typedef struct fd_gossip_contact_info_v2_off fd_gossip_contact_info_v2_off_t;
4124 : #define FD_GOSSIP_CONTACT_INFO_V2_OFF_FOOTPRINT sizeof(fd_gossip_contact_info_v2_off_t)
4125 : #define FD_GOSSIP_CONTACT_INFO_V2_OFF_ALIGN (8UL)
4126 :
4127 : union fd_crds_data_inner {
4128 : fd_gossip_contact_info_v1_t contact_info_v1;
4129 : fd_gossip_vote_t vote;
4130 : fd_gossip_lowest_slot_t lowest_slot;
4131 : fd_gossip_slot_hashes_t snapshot_hashes;
4132 : fd_gossip_slot_hashes_t accounts_hashes;
4133 : fd_gossip_epoch_slots_t epoch_slots;
4134 : fd_gossip_version_v1_t version_v1;
4135 : fd_gossip_version_v2_t version_v2;
4136 : fd_gossip_node_instance_t node_instance;
4137 : fd_gossip_duplicate_shred_t duplicate_shred;
4138 : fd_gossip_incremental_snapshot_hashes_t incremental_snapshot_hashes;
4139 : fd_gossip_contact_info_v2_t contact_info_v2;
4140 : };
4141 : typedef union fd_crds_data_inner fd_crds_data_inner_t;
4142 :
4143 : struct fd_crds_data {
4144 : uint discriminant;
4145 : fd_crds_data_inner_t inner;
4146 : };
4147 : typedef struct fd_crds_data fd_crds_data_t;
4148 0 : #define FD_CRDS_DATA_FOOTPRINT sizeof(fd_crds_data_t)
4149 0 : #define FD_CRDS_DATA_ALIGN (8UL)
4150 :
4151 : /* Encoded Size: Dynamic */
4152 : struct __attribute__((aligned(8UL))) fd_crds_bloom {
4153 : ulong keys_len;
4154 : ulong* keys;
4155 : fd_gossip_bitvec_u64_t bits;
4156 : ulong num_bits_set;
4157 : };
4158 : typedef struct fd_crds_bloom fd_crds_bloom_t;
4159 0 : #define FD_CRDS_BLOOM_FOOTPRINT sizeof(fd_crds_bloom_t)
4160 0 : #define FD_CRDS_BLOOM_ALIGN (8UL)
4161 :
4162 : struct __attribute__((aligned(8UL))) fd_crds_bloom_off {
4163 : uint keys_off;
4164 : uint bits_off;
4165 : uint num_bits_set_off;
4166 : };
4167 : typedef struct fd_crds_bloom_off fd_crds_bloom_off_t;
4168 : #define FD_CRDS_BLOOM_OFF_FOOTPRINT sizeof(fd_crds_bloom_off_t)
4169 : #define FD_CRDS_BLOOM_OFF_ALIGN (8UL)
4170 :
4171 : /* Encoded Size: Dynamic */
4172 : struct __attribute__((aligned(8UL))) fd_crds_filter {
4173 : fd_crds_bloom_t filter;
4174 : ulong mask;
4175 : uint mask_bits;
4176 : };
4177 : typedef struct fd_crds_filter fd_crds_filter_t;
4178 0 : #define FD_CRDS_FILTER_FOOTPRINT sizeof(fd_crds_filter_t)
4179 0 : #define FD_CRDS_FILTER_ALIGN (8UL)
4180 :
4181 : struct __attribute__((aligned(8UL))) fd_crds_filter_off {
4182 : uint filter_off;
4183 : uint mask_off;
4184 : uint mask_bits_off;
4185 : };
4186 : typedef struct fd_crds_filter_off fd_crds_filter_off_t;
4187 : #define FD_CRDS_FILTER_OFF_FOOTPRINT sizeof(fd_crds_filter_off_t)
4188 : #define FD_CRDS_FILTER_OFF_ALIGN (8UL)
4189 :
4190 : /* Encoded Size: Dynamic */
4191 : struct __attribute__((aligned(8UL))) fd_crds_value {
4192 : fd_signature_t signature;
4193 : fd_crds_data_t data;
4194 : };
4195 : typedef struct fd_crds_value fd_crds_value_t;
4196 18 : #define FD_CRDS_VALUE_FOOTPRINT sizeof(fd_crds_value_t)
4197 18 : #define FD_CRDS_VALUE_ALIGN (8UL)
4198 :
4199 : struct __attribute__((aligned(8UL))) fd_crds_value_off {
4200 : uint signature_off;
4201 : uint data_off;
4202 : };
4203 : typedef struct fd_crds_value_off fd_crds_value_off_t;
4204 : #define FD_CRDS_VALUE_OFF_FOOTPRINT sizeof(fd_crds_value_off_t)
4205 : #define FD_CRDS_VALUE_OFF_ALIGN (8UL)
4206 :
4207 : /* Encoded Size: Dynamic */
4208 : struct __attribute__((aligned(8UL))) fd_gossip_pull_req {
4209 : fd_crds_filter_t filter;
4210 : fd_crds_value_t value;
4211 : };
4212 : typedef struct fd_gossip_pull_req fd_gossip_pull_req_t;
4213 0 : #define FD_GOSSIP_PULL_REQ_FOOTPRINT sizeof(fd_gossip_pull_req_t)
4214 0 : #define FD_GOSSIP_PULL_REQ_ALIGN (8UL)
4215 :
4216 : struct __attribute__((aligned(8UL))) fd_gossip_pull_req_off {
4217 : uint filter_off;
4218 : uint value_off;
4219 : };
4220 : typedef struct fd_gossip_pull_req_off fd_gossip_pull_req_off_t;
4221 : #define FD_GOSSIP_PULL_REQ_OFF_FOOTPRINT sizeof(fd_gossip_pull_req_off_t)
4222 : #define FD_GOSSIP_PULL_REQ_OFF_ALIGN (8UL)
4223 :
4224 : /* Encoded Size: Dynamic */
4225 : struct __attribute__((aligned(8UL))) fd_gossip_pull_resp {
4226 : fd_pubkey_t pubkey;
4227 : ulong crds_len;
4228 : fd_crds_value_t * crds;
4229 : };
4230 : typedef struct fd_gossip_pull_resp fd_gossip_pull_resp_t;
4231 0 : #define FD_GOSSIP_PULL_RESP_FOOTPRINT sizeof(fd_gossip_pull_resp_t)
4232 0 : #define FD_GOSSIP_PULL_RESP_ALIGN (8UL)
4233 :
4234 : struct __attribute__((aligned(8UL))) fd_gossip_pull_resp_off {
4235 : uint pubkey_off;
4236 : uint crds_off;
4237 : };
4238 : typedef struct fd_gossip_pull_resp_off fd_gossip_pull_resp_off_t;
4239 : #define FD_GOSSIP_PULL_RESP_OFF_FOOTPRINT sizeof(fd_gossip_pull_resp_off_t)
4240 : #define FD_GOSSIP_PULL_RESP_OFF_ALIGN (8UL)
4241 :
4242 : /* Encoded Size: Dynamic */
4243 : struct __attribute__((aligned(8UL))) fd_gossip_push_msg {
4244 : fd_pubkey_t pubkey;
4245 : ulong crds_len;
4246 : fd_crds_value_t * crds;
4247 : };
4248 : typedef struct fd_gossip_push_msg fd_gossip_push_msg_t;
4249 0 : #define FD_GOSSIP_PUSH_MSG_FOOTPRINT sizeof(fd_gossip_push_msg_t)
4250 0 : #define FD_GOSSIP_PUSH_MSG_ALIGN (8UL)
4251 :
4252 : struct __attribute__((aligned(8UL))) fd_gossip_push_msg_off {
4253 : uint pubkey_off;
4254 : uint crds_off;
4255 : };
4256 : typedef struct fd_gossip_push_msg_off fd_gossip_push_msg_off_t;
4257 : #define FD_GOSSIP_PUSH_MSG_OFF_FOOTPRINT sizeof(fd_gossip_push_msg_off_t)
4258 : #define FD_GOSSIP_PUSH_MSG_OFF_ALIGN (8UL)
4259 :
4260 : /* Encoded Size: Dynamic */
4261 : struct __attribute__((aligned(8UL))) fd_gossip_prune_msg {
4262 : fd_pubkey_t pubkey;
4263 : fd_gossip_prune_data_t data;
4264 : };
4265 : typedef struct fd_gossip_prune_msg fd_gossip_prune_msg_t;
4266 0 : #define FD_GOSSIP_PRUNE_MSG_FOOTPRINT sizeof(fd_gossip_prune_msg_t)
4267 0 : #define FD_GOSSIP_PRUNE_MSG_ALIGN (8UL)
4268 :
4269 : struct __attribute__((aligned(8UL))) fd_gossip_prune_msg_off {
4270 : uint pubkey_off;
4271 : uint data_off;
4272 : };
4273 : typedef struct fd_gossip_prune_msg_off fd_gossip_prune_msg_off_t;
4274 : #define FD_GOSSIP_PRUNE_MSG_OFF_FOOTPRINT sizeof(fd_gossip_prune_msg_off_t)
4275 : #define FD_GOSSIP_PRUNE_MSG_OFF_ALIGN (8UL)
4276 :
4277 : union fd_gossip_msg_inner {
4278 : fd_gossip_pull_req_t pull_req;
4279 : fd_gossip_pull_resp_t pull_resp;
4280 : fd_gossip_push_msg_t push_msg;
4281 : fd_gossip_prune_msg_t prune_msg;
4282 : fd_gossip_ping_t ping;
4283 : fd_gossip_ping_t pong;
4284 : };
4285 : typedef union fd_gossip_msg_inner fd_gossip_msg_inner_t;
4286 :
4287 : /* UDP payloads of the Solana gossip protocol */
4288 : struct fd_gossip_msg {
4289 : uint discriminant;
4290 : fd_gossip_msg_inner_t inner;
4291 : };
4292 : typedef struct fd_gossip_msg fd_gossip_msg_t;
4293 0 : #define FD_GOSSIP_MSG_FOOTPRINT sizeof(fd_gossip_msg_t)
4294 0 : #define FD_GOSSIP_MSG_ALIGN (8UL)
4295 :
4296 : /* Encoded Size: Fixed (9 bytes) */
4297 : struct __attribute__((aligned(8UL))) fd_addrlut_create {
4298 : ulong recent_slot;
4299 : uchar bump_seed;
4300 : };
4301 : typedef struct fd_addrlut_create fd_addrlut_create_t;
4302 0 : #define FD_ADDRLUT_CREATE_FOOTPRINT sizeof(fd_addrlut_create_t)
4303 0 : #define FD_ADDRLUT_CREATE_ALIGN (8UL)
4304 :
4305 : struct __attribute__((aligned(8UL))) fd_addrlut_create_off {
4306 : uint recent_slot_off;
4307 : uint bump_seed_off;
4308 : };
4309 : typedef struct fd_addrlut_create_off fd_addrlut_create_off_t;
4310 : #define FD_ADDRLUT_CREATE_OFF_FOOTPRINT sizeof(fd_addrlut_create_off_t)
4311 : #define FD_ADDRLUT_CREATE_OFF_ALIGN (8UL)
4312 :
4313 : /* Encoded Size: Dynamic */
4314 : struct __attribute__((aligned(8UL))) fd_addrlut_extend {
4315 : ulong new_addrs_len;
4316 : fd_pubkey_t * new_addrs;
4317 : };
4318 : typedef struct fd_addrlut_extend fd_addrlut_extend_t;
4319 0 : #define FD_ADDRLUT_EXTEND_FOOTPRINT sizeof(fd_addrlut_extend_t)
4320 0 : #define FD_ADDRLUT_EXTEND_ALIGN (8UL)
4321 :
4322 : struct __attribute__((aligned(8UL))) fd_addrlut_extend_off {
4323 : uint new_addrs_off;
4324 : };
4325 : typedef struct fd_addrlut_extend_off fd_addrlut_extend_off_t;
4326 : #define FD_ADDRLUT_EXTEND_OFF_FOOTPRINT sizeof(fd_addrlut_extend_off_t)
4327 : #define FD_ADDRLUT_EXTEND_OFF_ALIGN (8UL)
4328 :
4329 : union fd_addrlut_instruction_inner {
4330 : fd_addrlut_create_t create_lut;
4331 : fd_addrlut_extend_t extend_lut;
4332 : };
4333 : typedef union fd_addrlut_instruction_inner fd_addrlut_instruction_inner_t;
4334 :
4335 : /* https://github.com/solana-labs/solana/blob/fb80288f885a62bcd923f4c9579fd0edeafaff9b/sdk/program/src/address_lookup_table/instruction.rs#L13 */
4336 : struct fd_addrlut_instruction {
4337 : uint discriminant;
4338 : fd_addrlut_instruction_inner_t inner;
4339 : };
4340 : typedef struct fd_addrlut_instruction fd_addrlut_instruction_t;
4341 0 : #define FD_ADDRLUT_INSTRUCTION_FOOTPRINT sizeof(fd_addrlut_instruction_t)
4342 0 : #define FD_ADDRLUT_INSTRUCTION_ALIGN (8UL)
4343 :
4344 : /* Encoded Size: Dynamic */
4345 : struct __attribute__((aligned(8UL))) fd_repair_request_header {
4346 : fd_signature_t signature;
4347 : fd_pubkey_t sender;
4348 : fd_pubkey_t recipient;
4349 : long timestamp;
4350 : uint nonce;
4351 : };
4352 : typedef struct fd_repair_request_header fd_repair_request_header_t;
4353 0 : #define FD_REPAIR_REQUEST_HEADER_FOOTPRINT sizeof(fd_repair_request_header_t)
4354 0 : #define FD_REPAIR_REQUEST_HEADER_ALIGN (8UL)
4355 :
4356 : struct __attribute__((aligned(8UL))) fd_repair_request_header_off {
4357 : uint signature_off;
4358 : uint sender_off;
4359 : uint recipient_off;
4360 : uint timestamp_off;
4361 : uint nonce_off;
4362 : };
4363 : typedef struct fd_repair_request_header_off fd_repair_request_header_off_t;
4364 : #define FD_REPAIR_REQUEST_HEADER_OFF_FOOTPRINT sizeof(fd_repair_request_header_off_t)
4365 : #define FD_REPAIR_REQUEST_HEADER_OFF_ALIGN (8UL)
4366 :
4367 : /* Encoded Size: Dynamic */
4368 : struct __attribute__((aligned(8UL))) fd_repair_window_index {
4369 : fd_repair_request_header_t header;
4370 : ulong slot;
4371 : ulong shred_index;
4372 : };
4373 : typedef struct fd_repair_window_index fd_repair_window_index_t;
4374 0 : #define FD_REPAIR_WINDOW_INDEX_FOOTPRINT sizeof(fd_repair_window_index_t)
4375 0 : #define FD_REPAIR_WINDOW_INDEX_ALIGN (8UL)
4376 :
4377 : struct __attribute__((aligned(8UL))) fd_repair_window_index_off {
4378 : uint header_off;
4379 : uint slot_off;
4380 : uint shred_index_off;
4381 : };
4382 : typedef struct fd_repair_window_index_off fd_repair_window_index_off_t;
4383 : #define FD_REPAIR_WINDOW_INDEX_OFF_FOOTPRINT sizeof(fd_repair_window_index_off_t)
4384 : #define FD_REPAIR_WINDOW_INDEX_OFF_ALIGN (8UL)
4385 :
4386 : /* Encoded Size: Dynamic */
4387 : struct __attribute__((aligned(8UL))) fd_repair_highest_window_index {
4388 : fd_repair_request_header_t header;
4389 : ulong slot;
4390 : ulong shred_index;
4391 : };
4392 : typedef struct fd_repair_highest_window_index fd_repair_highest_window_index_t;
4393 0 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_FOOTPRINT sizeof(fd_repair_highest_window_index_t)
4394 0 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_ALIGN (8UL)
4395 :
4396 : struct __attribute__((aligned(8UL))) fd_repair_highest_window_index_off {
4397 : uint header_off;
4398 : uint slot_off;
4399 : uint shred_index_off;
4400 : };
4401 : typedef struct fd_repair_highest_window_index_off fd_repair_highest_window_index_off_t;
4402 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_OFF_FOOTPRINT sizeof(fd_repair_highest_window_index_off_t)
4403 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_OFF_ALIGN (8UL)
4404 :
4405 : /* Encoded Size: Dynamic */
4406 : struct __attribute__((aligned(8UL))) fd_repair_orphan {
4407 : fd_repair_request_header_t header;
4408 : ulong slot;
4409 : };
4410 : typedef struct fd_repair_orphan fd_repair_orphan_t;
4411 0 : #define FD_REPAIR_ORPHAN_FOOTPRINT sizeof(fd_repair_orphan_t)
4412 0 : #define FD_REPAIR_ORPHAN_ALIGN (8UL)
4413 :
4414 : struct __attribute__((aligned(8UL))) fd_repair_orphan_off {
4415 : uint header_off;
4416 : uint slot_off;
4417 : };
4418 : typedef struct fd_repair_orphan_off fd_repair_orphan_off_t;
4419 : #define FD_REPAIR_ORPHAN_OFF_FOOTPRINT sizeof(fd_repair_orphan_off_t)
4420 : #define FD_REPAIR_ORPHAN_OFF_ALIGN (8UL)
4421 :
4422 : /* Encoded Size: Dynamic */
4423 : struct __attribute__((aligned(8UL))) fd_repair_ancestor_hashes {
4424 : fd_repair_request_header_t header;
4425 : ulong slot;
4426 : };
4427 : typedef struct fd_repair_ancestor_hashes fd_repair_ancestor_hashes_t;
4428 0 : #define FD_REPAIR_ANCESTOR_HASHES_FOOTPRINT sizeof(fd_repair_ancestor_hashes_t)
4429 0 : #define FD_REPAIR_ANCESTOR_HASHES_ALIGN (8UL)
4430 :
4431 : struct __attribute__((aligned(8UL))) fd_repair_ancestor_hashes_off {
4432 : uint header_off;
4433 : uint slot_off;
4434 : };
4435 : typedef struct fd_repair_ancestor_hashes_off fd_repair_ancestor_hashes_off_t;
4436 : #define FD_REPAIR_ANCESTOR_HASHES_OFF_FOOTPRINT sizeof(fd_repair_ancestor_hashes_off_t)
4437 : #define FD_REPAIR_ANCESTOR_HASHES_OFF_ALIGN (8UL)
4438 :
4439 : union fd_repair_protocol_inner {
4440 : fd_gossip_ping_t pong;
4441 : fd_repair_window_index_t window_index;
4442 : fd_repair_highest_window_index_t highest_window_index;
4443 : fd_repair_orphan_t orphan;
4444 : fd_repair_ancestor_hashes_t ancestor_hashes;
4445 : };
4446 : typedef union fd_repair_protocol_inner fd_repair_protocol_inner_t;
4447 :
4448 : struct fd_repair_protocol {
4449 : uint discriminant;
4450 : fd_repair_protocol_inner_t inner;
4451 : };
4452 : typedef struct fd_repair_protocol fd_repair_protocol_t;
4453 0 : #define FD_REPAIR_PROTOCOL_FOOTPRINT sizeof(fd_repair_protocol_t)
4454 0 : #define FD_REPAIR_PROTOCOL_ALIGN (8UL)
4455 :
4456 : union fd_repair_response_inner {
4457 : fd_gossip_ping_t ping;
4458 : };
4459 : typedef union fd_repair_response_inner fd_repair_response_inner_t;
4460 :
4461 : struct fd_repair_response {
4462 : uint discriminant;
4463 : fd_repair_response_inner_t inner;
4464 : };
4465 : typedef struct fd_repair_response fd_repair_response_t;
4466 0 : #define FD_REPAIR_RESPONSE_FOOTPRINT sizeof(fd_repair_response_t)
4467 0 : #define FD_REPAIR_RESPONSE_ALIGN (8UL)
4468 :
4469 : union fd_instr_error_enum_inner {
4470 : uint custom;
4471 : char* borsh_io_error;
4472 : };
4473 : typedef union fd_instr_error_enum_inner fd_instr_error_enum_inner_t;
4474 :
4475 : struct fd_instr_error_enum {
4476 : uint discriminant;
4477 : fd_instr_error_enum_inner_t inner;
4478 : };
4479 : typedef struct fd_instr_error_enum fd_instr_error_enum_t;
4480 0 : #define FD_INSTR_ERROR_ENUM_FOOTPRINT sizeof(fd_instr_error_enum_t)
4481 0 : #define FD_INSTR_ERROR_ENUM_ALIGN (8UL)
4482 :
4483 : /* Encoded Size: Dynamic */
4484 : struct __attribute__((aligned(8UL))) fd_txn_instr_error {
4485 : uchar instr_idx;
4486 : fd_instr_error_enum_t error;
4487 : };
4488 : typedef struct fd_txn_instr_error fd_txn_instr_error_t;
4489 0 : #define FD_TXN_INSTR_ERROR_FOOTPRINT sizeof(fd_txn_instr_error_t)
4490 0 : #define FD_TXN_INSTR_ERROR_ALIGN (8UL)
4491 :
4492 : struct __attribute__((aligned(8UL))) fd_txn_instr_error_off {
4493 : uint instr_idx_off;
4494 : uint error_off;
4495 : };
4496 : typedef struct fd_txn_instr_error_off fd_txn_instr_error_off_t;
4497 : #define FD_TXN_INSTR_ERROR_OFF_FOOTPRINT sizeof(fd_txn_instr_error_off_t)
4498 : #define FD_TXN_INSTR_ERROR_OFF_ALIGN (8UL)
4499 :
4500 : union fd_txn_error_enum_inner {
4501 : fd_txn_instr_error_t instruction_error;
4502 : uchar duplicate_instruction;
4503 : uchar insufficient_funds_for_rent;
4504 : uchar program_execution_temporarily_restricted;
4505 : };
4506 : typedef union fd_txn_error_enum_inner fd_txn_error_enum_inner_t;
4507 :
4508 : struct fd_txn_error_enum {
4509 : uint discriminant;
4510 : fd_txn_error_enum_inner_t inner;
4511 : };
4512 : typedef struct fd_txn_error_enum fd_txn_error_enum_t;
4513 0 : #define FD_TXN_ERROR_ENUM_FOOTPRINT sizeof(fd_txn_error_enum_t)
4514 0 : #define FD_TXN_ERROR_ENUM_ALIGN (8UL)
4515 :
4516 : union fd_txn_result_inner {
4517 : fd_txn_error_enum_t error;
4518 : };
4519 : typedef union fd_txn_result_inner fd_txn_result_inner_t;
4520 :
4521 : struct fd_txn_result {
4522 : uint discriminant;
4523 : fd_txn_result_inner_t inner;
4524 : };
4525 : typedef struct fd_txn_result fd_txn_result_t;
4526 0 : #define FD_TXN_RESULT_FOOTPRINT sizeof(fd_txn_result_t)
4527 0 : #define FD_TXN_RESULT_ALIGN (8UL)
4528 :
4529 : /* Encoded Size: Dynamic */
4530 : struct __attribute__((aligned(8UL))) fd_cache_status {
4531 : uchar key_slice[20];
4532 : fd_txn_result_t result;
4533 : };
4534 : typedef struct fd_cache_status fd_cache_status_t;
4535 6 : #define FD_CACHE_STATUS_FOOTPRINT sizeof(fd_cache_status_t)
4536 6 : #define FD_CACHE_STATUS_ALIGN (8UL)
4537 :
4538 : struct __attribute__((aligned(8UL))) fd_cache_status_off {
4539 : uint key_slice_off;
4540 : uint result_off;
4541 : };
4542 : typedef struct fd_cache_status_off fd_cache_status_off_t;
4543 : #define FD_CACHE_STATUS_OFF_FOOTPRINT sizeof(fd_cache_status_off_t)
4544 : #define FD_CACHE_STATUS_OFF_ALIGN (8UL)
4545 :
4546 : /* Encoded Size: Dynamic */
4547 : struct __attribute__((aligned(8UL))) fd_status_value {
4548 : ulong txn_idx;
4549 : ulong statuses_len;
4550 : fd_cache_status_t * statuses;
4551 : };
4552 : typedef struct fd_status_value fd_status_value_t;
4553 0 : #define FD_STATUS_VALUE_FOOTPRINT sizeof(fd_status_value_t)
4554 0 : #define FD_STATUS_VALUE_ALIGN (8UL)
4555 :
4556 : struct __attribute__((aligned(8UL))) fd_status_value_off {
4557 : uint txn_idx_off;
4558 : uint statuses_off;
4559 : };
4560 : typedef struct fd_status_value_off fd_status_value_off_t;
4561 : #define FD_STATUS_VALUE_OFF_FOOTPRINT sizeof(fd_status_value_off_t)
4562 : #define FD_STATUS_VALUE_OFF_ALIGN (8UL)
4563 :
4564 : /* Encoded Size: Dynamic */
4565 : struct __attribute__((aligned(8UL))) fd_status_pair {
4566 : fd_hash_t hash;
4567 : fd_status_value_t value;
4568 : };
4569 : typedef struct fd_status_pair fd_status_pair_t;
4570 6 : #define FD_STATUS_PAIR_FOOTPRINT sizeof(fd_status_pair_t)
4571 6 : #define FD_STATUS_PAIR_ALIGN (8UL)
4572 :
4573 : struct __attribute__((aligned(8UL))) fd_status_pair_off {
4574 : uint hash_off;
4575 : uint value_off;
4576 : };
4577 : typedef struct fd_status_pair_off fd_status_pair_off_t;
4578 : #define FD_STATUS_PAIR_OFF_FOOTPRINT sizeof(fd_status_pair_off_t)
4579 : #define FD_STATUS_PAIR_OFF_ALIGN (8UL)
4580 :
4581 : /* Encoded Size: Dynamic */
4582 : struct __attribute__((aligned(8UL))) fd_slot_delta {
4583 : ulong slot;
4584 : uchar is_root;
4585 : ulong slot_delta_vec_len;
4586 : fd_status_pair_t * slot_delta_vec;
4587 : };
4588 : typedef struct fd_slot_delta fd_slot_delta_t;
4589 6 : #define FD_SLOT_DELTA_FOOTPRINT sizeof(fd_slot_delta_t)
4590 6 : #define FD_SLOT_DELTA_ALIGN (8UL)
4591 :
4592 : struct __attribute__((aligned(8UL))) fd_slot_delta_off {
4593 : uint slot_off;
4594 : uint is_root_off;
4595 : uint slot_delta_vec_off;
4596 : };
4597 : typedef struct fd_slot_delta_off fd_slot_delta_off_t;
4598 : #define FD_SLOT_DELTA_OFF_FOOTPRINT sizeof(fd_slot_delta_off_t)
4599 : #define FD_SLOT_DELTA_OFF_ALIGN (8UL)
4600 :
4601 : /* Encoded Size: Dynamic */
4602 : struct __attribute__((aligned(8UL))) fd_bank_slot_deltas {
4603 : ulong slot_deltas_len;
4604 : fd_slot_delta_t * slot_deltas;
4605 : };
4606 : typedef struct fd_bank_slot_deltas fd_bank_slot_deltas_t;
4607 0 : #define FD_BANK_SLOT_DELTAS_FOOTPRINT sizeof(fd_bank_slot_deltas_t)
4608 0 : #define FD_BANK_SLOT_DELTAS_ALIGN (8UL)
4609 :
4610 : struct __attribute__((aligned(8UL))) fd_bank_slot_deltas_off {
4611 : uint slot_deltas_off;
4612 : };
4613 : typedef struct fd_bank_slot_deltas_off fd_bank_slot_deltas_off_t;
4614 : #define FD_BANK_SLOT_DELTAS_OFF_FOOTPRINT sizeof(fd_bank_slot_deltas_off_t)
4615 : #define FD_BANK_SLOT_DELTAS_OFF_ALIGN (8UL)
4616 :
4617 : /* https://github.com/anza-xyz/agave/blob/7117ed9653ce19e8b2dea108eff1f3eb6a3378a7/runtime/src/bank/partitioned_epoch_rewards/mod.rs#L85 */
4618 : /* Encoded Size: Dynamic */
4619 : struct __attribute__((aligned(8UL))) fd_pubkey_rewardinfo_pair {
4620 : fd_pubkey_t pubkey;
4621 : fd_reward_info_t reward_info;
4622 : };
4623 : typedef struct fd_pubkey_rewardinfo_pair fd_pubkey_rewardinfo_pair_t;
4624 0 : #define FD_PUBKEY_REWARDINFO_PAIR_FOOTPRINT sizeof(fd_pubkey_rewardinfo_pair_t)
4625 0 : #define FD_PUBKEY_REWARDINFO_PAIR_ALIGN (8UL)
4626 :
4627 : struct __attribute__((aligned(8UL))) fd_pubkey_rewardinfo_pair_off {
4628 : uint pubkey_off;
4629 : uint reward_info_off;
4630 : };
4631 : typedef struct fd_pubkey_rewardinfo_pair_off fd_pubkey_rewardinfo_pair_off_t;
4632 : #define FD_PUBKEY_REWARDINFO_PAIR_OFF_FOOTPRINT sizeof(fd_pubkey_rewardinfo_pair_off_t)
4633 : #define FD_PUBKEY_REWARDINFO_PAIR_OFF_ALIGN (8UL)
4634 :
4635 : /* Encoded Size: Dynamic */
4636 : struct __attribute__((aligned(8UL))) fd_optional_account {
4637 : fd_solana_account_t * account;
4638 : };
4639 : typedef struct fd_optional_account fd_optional_account_t;
4640 0 : #define FD_OPTIONAL_ACCOUNT_FOOTPRINT sizeof(fd_optional_account_t)
4641 0 : #define FD_OPTIONAL_ACCOUNT_ALIGN (8UL)
4642 :
4643 : struct __attribute__((aligned(8UL))) fd_optional_account_off {
4644 : uint account_off;
4645 : };
4646 : typedef struct fd_optional_account_off fd_optional_account_off_t;
4647 : #define FD_OPTIONAL_ACCOUNT_OFF_FOOTPRINT sizeof(fd_optional_account_off_t)
4648 : #define FD_OPTIONAL_ACCOUNT_OFF_ALIGN (8UL)
4649 :
4650 : /* https://github.com/anza-xyz/agave/blob/cbc8320d35358da14d79ebcada4dfb6756ffac79/programs/stake/src/points.rs#L27 */
4651 : /* Encoded Size: Fixed (25 bytes) */
4652 : struct __attribute__((aligned(8UL))) fd_calculated_stake_points {
4653 : uint128 points;
4654 : ulong new_credits_observed;
4655 : uchar force_credits_update_with_skipped_reward;
4656 : };
4657 : typedef struct fd_calculated_stake_points fd_calculated_stake_points_t;
4658 0 : #define FD_CALCULATED_STAKE_POINTS_FOOTPRINT sizeof(fd_calculated_stake_points_t)
4659 0 : #define FD_CALCULATED_STAKE_POINTS_ALIGN (8UL)
4660 :
4661 : struct __attribute__((aligned(8UL))) fd_calculated_stake_points_off {
4662 : uint points_off;
4663 : uint new_credits_observed_off;
4664 : uint force_credits_update_with_skipped_reward_off;
4665 : };
4666 : typedef struct fd_calculated_stake_points_off fd_calculated_stake_points_off_t;
4667 : #define FD_CALCULATED_STAKE_POINTS_OFF_FOOTPRINT sizeof(fd_calculated_stake_points_off_t)
4668 : #define FD_CALCULATED_STAKE_POINTS_OFF_ALIGN (8UL)
4669 :
4670 : /* https://github.com/anza-xyz/agave/blob/cbc8320d35358da14d79ebcada4dfb6756ffac79/programs/stake/src/rewards.rs#L24 */
4671 : /* Encoded Size: Fixed (24 bytes) */
4672 : struct __attribute__((aligned(8UL))) fd_calculated_stake_rewards {
4673 : ulong staker_rewards;
4674 : ulong voter_rewards;
4675 : ulong new_credits_observed;
4676 : };
4677 : typedef struct fd_calculated_stake_rewards fd_calculated_stake_rewards_t;
4678 0 : #define FD_CALCULATED_STAKE_REWARDS_FOOTPRINT sizeof(fd_calculated_stake_rewards_t)
4679 0 : #define FD_CALCULATED_STAKE_REWARDS_ALIGN (8UL)
4680 :
4681 : struct __attribute__((aligned(8UL))) fd_calculated_stake_rewards_off {
4682 : uint staker_rewards_off;
4683 : uint voter_rewards_off;
4684 : uint new_credits_observed_off;
4685 : };
4686 : typedef struct fd_calculated_stake_rewards_off fd_calculated_stake_rewards_off_t;
4687 : #define FD_CALCULATED_STAKE_REWARDS_OFF_FOOTPRINT sizeof(fd_calculated_stake_rewards_off_t)
4688 : #define FD_CALCULATED_STAKE_REWARDS_OFF_ALIGN (8UL)
4689 :
4690 : /* https://github.com/anza-xyz/agave/blob/v2.0.3/ledger/src/blockstore_meta.rs#L150-L156 */
4691 : /* Encoded Size: Dynamic */
4692 : struct __attribute__((aligned(8UL))) fd_duplicate_slot_proof {
4693 : ulong shred1_len;
4694 : uchar* shred1;
4695 : ulong shred2_len;
4696 : uchar* shred2;
4697 : };
4698 : typedef struct fd_duplicate_slot_proof fd_duplicate_slot_proof_t;
4699 0 : #define FD_DUPLICATE_SLOT_PROOF_FOOTPRINT sizeof(fd_duplicate_slot_proof_t)
4700 0 : #define FD_DUPLICATE_SLOT_PROOF_ALIGN (8UL)
4701 :
4702 : struct __attribute__((aligned(8UL))) fd_duplicate_slot_proof_off {
4703 : uint shred1_off;
4704 : uint shred2_off;
4705 : };
4706 : typedef struct fd_duplicate_slot_proof_off fd_duplicate_slot_proof_off_t;
4707 : #define FD_DUPLICATE_SLOT_PROOF_OFF_FOOTPRINT sizeof(fd_duplicate_slot_proof_off_t)
4708 : #define FD_DUPLICATE_SLOT_PROOF_OFF_ALIGN (8UL)
4709 :
4710 :
4711 : FD_PROTOTYPES_BEGIN
4712 :
4713 : void fd_hash_new( fd_hash_t * self );
4714 : int fd_hash_decode( fd_hash_t * self, fd_bincode_decode_ctx_t * ctx );
4715 : int fd_hash_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4716 : void fd_hash_decode_unsafe( fd_hash_t * self, fd_bincode_decode_ctx_t * ctx );
4717 : int fd_hash_encode( fd_hash_t const * self, fd_bincode_encode_ctx_t * ctx );
4718 : void fd_hash_destroy( fd_hash_t * self, fd_bincode_destroy_ctx_t * ctx );
4719 : void fd_hash_walk( void * w, fd_hash_t const * self, fd_types_walk_fn_t fun, const char * name, uint level );
4720 : ulong fd_hash_size( fd_hash_t const * self );
4721 : ulong fd_hash_footprint( void );
4722 : ulong fd_hash_align( void );
4723 :
4724 : void fd_signature_new( fd_signature_t * self );
4725 : int fd_signature_decode( fd_signature_t * self, fd_bincode_decode_ctx_t * ctx );
4726 : int fd_signature_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4727 : void fd_signature_decode_unsafe( fd_signature_t * self, fd_bincode_decode_ctx_t * ctx );
4728 : int fd_signature_encode( fd_signature_t const * self, fd_bincode_encode_ctx_t * ctx );
4729 : void fd_signature_destroy( fd_signature_t * self, fd_bincode_destroy_ctx_t * ctx );
4730 : void fd_signature_walk( void * w, fd_signature_t const * self, fd_types_walk_fn_t fun, const char * name, uint level );
4731 : ulong fd_signature_size( fd_signature_t const * self );
4732 : ulong fd_signature_footprint( void );
4733 : ulong fd_signature_align( void );
4734 :
4735 : void fd_gossip_ip4_addr_new( fd_gossip_ip4_addr_t * self );
4736 : int fd_gossip_ip4_addr_decode( fd_gossip_ip4_addr_t * self, fd_bincode_decode_ctx_t * ctx );
4737 : int fd_gossip_ip4_addr_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4738 : void fd_gossip_ip4_addr_decode_unsafe( fd_gossip_ip4_addr_t * self, fd_bincode_decode_ctx_t * ctx );
4739 : int fd_gossip_ip4_addr_encode( fd_gossip_ip4_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
4740 : void fd_gossip_ip4_addr_destroy( fd_gossip_ip4_addr_t * self, fd_bincode_destroy_ctx_t * ctx );
4741 : void fd_gossip_ip4_addr_walk( void * w, fd_gossip_ip4_addr_t const * self, fd_types_walk_fn_t fun, const char * name, uint level );
4742 : ulong fd_gossip_ip4_addr_size( fd_gossip_ip4_addr_t const * self );
4743 : ulong fd_gossip_ip4_addr_footprint( void );
4744 : ulong fd_gossip_ip4_addr_align( void );
4745 :
4746 : void fd_gossip_ip6_addr_new( fd_gossip_ip6_addr_t * self );
4747 : int fd_gossip_ip6_addr_decode( fd_gossip_ip6_addr_t * self, fd_bincode_decode_ctx_t * ctx );
4748 : int fd_gossip_ip6_addr_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4749 : void fd_gossip_ip6_addr_decode_unsafe( fd_gossip_ip6_addr_t * self, fd_bincode_decode_ctx_t * ctx );
4750 : int fd_gossip_ip6_addr_encode( fd_gossip_ip6_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
4751 : void fd_gossip_ip6_addr_destroy( fd_gossip_ip6_addr_t * self, fd_bincode_destroy_ctx_t * ctx );
4752 : void fd_gossip_ip6_addr_walk( void * w, fd_gossip_ip6_addr_t const * self, fd_types_walk_fn_t fun, const char * name, uint level );
4753 : ulong fd_gossip_ip6_addr_size( fd_gossip_ip6_addr_t const * self );
4754 : ulong fd_gossip_ip6_addr_footprint( void );
4755 : ulong fd_gossip_ip6_addr_align( void );
4756 :
4757 : void fd_feature_new( fd_feature_t * self );
4758 : int fd_feature_decode( fd_feature_t * self, fd_bincode_decode_ctx_t * ctx );
4759 : int fd_feature_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4760 : void fd_feature_decode_unsafe( fd_feature_t * self, fd_bincode_decode_ctx_t * ctx );
4761 : int fd_feature_decode_offsets( fd_feature_off_t * self, fd_bincode_decode_ctx_t * ctx );
4762 : int fd_feature_encode( fd_feature_t const * self, fd_bincode_encode_ctx_t * ctx );
4763 : void fd_feature_destroy( fd_feature_t * self, fd_bincode_destroy_ctx_t * ctx );
4764 : void fd_feature_walk( void * w, fd_feature_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4765 : ulong fd_feature_size( fd_feature_t const * self );
4766 : ulong fd_feature_footprint( void );
4767 : ulong fd_feature_align( void );
4768 :
4769 : void fd_fee_calculator_new( fd_fee_calculator_t * self );
4770 : int fd_fee_calculator_decode( fd_fee_calculator_t * self, fd_bincode_decode_ctx_t * ctx );
4771 : int fd_fee_calculator_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4772 : void fd_fee_calculator_decode_unsafe( fd_fee_calculator_t * self, fd_bincode_decode_ctx_t * ctx );
4773 : int fd_fee_calculator_decode_offsets( fd_fee_calculator_off_t * self, fd_bincode_decode_ctx_t * ctx );
4774 : int fd_fee_calculator_encode( fd_fee_calculator_t const * self, fd_bincode_encode_ctx_t * ctx );
4775 : void fd_fee_calculator_destroy( fd_fee_calculator_t * self, fd_bincode_destroy_ctx_t * ctx );
4776 : void fd_fee_calculator_walk( void * w, fd_fee_calculator_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4777 : ulong fd_fee_calculator_size( fd_fee_calculator_t const * self );
4778 : ulong fd_fee_calculator_footprint( void );
4779 : ulong fd_fee_calculator_align( void );
4780 : int fd_fee_calculator_decode_archival( fd_fee_calculator_t * self, fd_bincode_decode_ctx_t * ctx );
4781 : int fd_fee_calculator_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4782 : void fd_fee_calculator_decode_archival_unsafe( fd_fee_calculator_t * self, fd_bincode_decode_ctx_t * ctx );
4783 : int fd_fee_calculator_encode_archival( fd_fee_calculator_t const * self, fd_bincode_encode_ctx_t * ctx );
4784 :
4785 : void fd_hash_age_new( fd_hash_age_t * self );
4786 : int fd_hash_age_decode( fd_hash_age_t * self, fd_bincode_decode_ctx_t * ctx );
4787 : int fd_hash_age_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4788 : void fd_hash_age_decode_unsafe( fd_hash_age_t * self, fd_bincode_decode_ctx_t * ctx );
4789 : int fd_hash_age_decode_offsets( fd_hash_age_off_t * self, fd_bincode_decode_ctx_t * ctx );
4790 : int fd_hash_age_encode( fd_hash_age_t const * self, fd_bincode_encode_ctx_t * ctx );
4791 : void fd_hash_age_destroy( fd_hash_age_t * self, fd_bincode_destroy_ctx_t * ctx );
4792 : void fd_hash_age_walk( void * w, fd_hash_age_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4793 : ulong fd_hash_age_size( fd_hash_age_t const * self );
4794 : ulong fd_hash_age_footprint( void );
4795 : ulong fd_hash_age_align( void );
4796 : int fd_hash_age_decode_archival( fd_hash_age_t * self, fd_bincode_decode_ctx_t * ctx );
4797 : int fd_hash_age_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4798 : void fd_hash_age_decode_archival_unsafe( fd_hash_age_t * self, fd_bincode_decode_ctx_t * ctx );
4799 : int fd_hash_age_encode_archival( fd_hash_age_t const * self, fd_bincode_encode_ctx_t * ctx );
4800 :
4801 : void fd_hash_hash_age_pair_new( fd_hash_hash_age_pair_t * self );
4802 : int fd_hash_hash_age_pair_decode( fd_hash_hash_age_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4803 : int fd_hash_hash_age_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4804 : void fd_hash_hash_age_pair_decode_unsafe( fd_hash_hash_age_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4805 : int fd_hash_hash_age_pair_decode_offsets( fd_hash_hash_age_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
4806 : int fd_hash_hash_age_pair_encode( fd_hash_hash_age_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
4807 : void fd_hash_hash_age_pair_destroy( fd_hash_hash_age_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
4808 : void fd_hash_hash_age_pair_walk( void * w, fd_hash_hash_age_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4809 : ulong fd_hash_hash_age_pair_size( fd_hash_hash_age_pair_t const * self );
4810 : ulong fd_hash_hash_age_pair_footprint( void );
4811 : ulong fd_hash_hash_age_pair_align( void );
4812 : int fd_hash_hash_age_pair_decode_archival( fd_hash_hash_age_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4813 : int fd_hash_hash_age_pair_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4814 : void fd_hash_hash_age_pair_decode_archival_unsafe( fd_hash_hash_age_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4815 : int fd_hash_hash_age_pair_encode_archival( fd_hash_hash_age_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
4816 :
4817 : void fd_block_hash_vec_new( fd_block_hash_vec_t * self );
4818 : int fd_block_hash_vec_decode( fd_block_hash_vec_t * self, fd_bincode_decode_ctx_t * ctx );
4819 : int fd_block_hash_vec_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4820 : void fd_block_hash_vec_decode_unsafe( fd_block_hash_vec_t * self, fd_bincode_decode_ctx_t * ctx );
4821 : int fd_block_hash_vec_decode_offsets( fd_block_hash_vec_off_t * self, fd_bincode_decode_ctx_t * ctx );
4822 : int fd_block_hash_vec_encode( fd_block_hash_vec_t const * self, fd_bincode_encode_ctx_t * ctx );
4823 : void fd_block_hash_vec_destroy( fd_block_hash_vec_t * self, fd_bincode_destroy_ctx_t * ctx );
4824 : void fd_block_hash_vec_walk( void * w, fd_block_hash_vec_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4825 : ulong fd_block_hash_vec_size( fd_block_hash_vec_t const * self );
4826 : ulong fd_block_hash_vec_footprint( void );
4827 : ulong fd_block_hash_vec_align( void );
4828 :
4829 : void fd_block_hash_queue_new( fd_block_hash_queue_t * self );
4830 : int fd_block_hash_queue_decode( fd_block_hash_queue_t * self, fd_bincode_decode_ctx_t * ctx );
4831 : int fd_block_hash_queue_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4832 : void fd_block_hash_queue_decode_unsafe( fd_block_hash_queue_t * self, fd_bincode_decode_ctx_t * ctx );
4833 : int fd_block_hash_queue_decode_offsets( fd_block_hash_queue_off_t * self, fd_bincode_decode_ctx_t * ctx );
4834 : int fd_block_hash_queue_encode( fd_block_hash_queue_t const * self, fd_bincode_encode_ctx_t * ctx );
4835 : void fd_block_hash_queue_destroy( fd_block_hash_queue_t * self, fd_bincode_destroy_ctx_t * ctx );
4836 : void fd_block_hash_queue_walk( void * w, fd_block_hash_queue_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4837 : ulong fd_block_hash_queue_size( fd_block_hash_queue_t const * self );
4838 : ulong fd_block_hash_queue_footprint( void );
4839 : ulong fd_block_hash_queue_align( void );
4840 : int fd_block_hash_queue_decode_archival( fd_block_hash_queue_t * self, fd_bincode_decode_ctx_t * ctx );
4841 : int fd_block_hash_queue_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4842 : void fd_block_hash_queue_decode_archival_unsafe( fd_block_hash_queue_t * self, fd_bincode_decode_ctx_t * ctx );
4843 : int fd_block_hash_queue_encode_archival( fd_block_hash_queue_t const * self, fd_bincode_encode_ctx_t * ctx );
4844 :
4845 : void fd_fee_rate_governor_new( fd_fee_rate_governor_t * self );
4846 : int fd_fee_rate_governor_decode( fd_fee_rate_governor_t * self, fd_bincode_decode_ctx_t * ctx );
4847 : int fd_fee_rate_governor_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4848 : void fd_fee_rate_governor_decode_unsafe( fd_fee_rate_governor_t * self, fd_bincode_decode_ctx_t * ctx );
4849 : int fd_fee_rate_governor_decode_offsets( fd_fee_rate_governor_off_t * self, fd_bincode_decode_ctx_t * ctx );
4850 : int fd_fee_rate_governor_encode( fd_fee_rate_governor_t const * self, fd_bincode_encode_ctx_t * ctx );
4851 : void fd_fee_rate_governor_destroy( fd_fee_rate_governor_t * self, fd_bincode_destroy_ctx_t * ctx );
4852 : void fd_fee_rate_governor_walk( void * w, fd_fee_rate_governor_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4853 : ulong fd_fee_rate_governor_size( fd_fee_rate_governor_t const * self );
4854 : ulong fd_fee_rate_governor_footprint( void );
4855 : ulong fd_fee_rate_governor_align( void );
4856 : int fd_fee_rate_governor_decode_archival( fd_fee_rate_governor_t * self, fd_bincode_decode_ctx_t * ctx );
4857 : int fd_fee_rate_governor_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4858 : void fd_fee_rate_governor_decode_archival_unsafe( fd_fee_rate_governor_t * self, fd_bincode_decode_ctx_t * ctx );
4859 : int fd_fee_rate_governor_encode_archival( fd_fee_rate_governor_t const * self, fd_bincode_encode_ctx_t * ctx );
4860 :
4861 : void fd_slot_pair_new( fd_slot_pair_t * self );
4862 : int fd_slot_pair_decode( fd_slot_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4863 : int fd_slot_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4864 : void fd_slot_pair_decode_unsafe( fd_slot_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4865 : int fd_slot_pair_decode_offsets( fd_slot_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
4866 : int fd_slot_pair_encode( fd_slot_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
4867 : void fd_slot_pair_destroy( fd_slot_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
4868 : void fd_slot_pair_walk( void * w, fd_slot_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4869 : ulong fd_slot_pair_size( fd_slot_pair_t const * self );
4870 : ulong fd_slot_pair_footprint( void );
4871 : ulong fd_slot_pair_align( void );
4872 :
4873 : void fd_hard_forks_new( fd_hard_forks_t * self );
4874 : int fd_hard_forks_decode( fd_hard_forks_t * self, fd_bincode_decode_ctx_t * ctx );
4875 : int fd_hard_forks_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4876 : void fd_hard_forks_decode_unsafe( fd_hard_forks_t * self, fd_bincode_decode_ctx_t * ctx );
4877 : int fd_hard_forks_decode_offsets( fd_hard_forks_off_t * self, fd_bincode_decode_ctx_t * ctx );
4878 : int fd_hard_forks_encode( fd_hard_forks_t const * self, fd_bincode_encode_ctx_t * ctx );
4879 : void fd_hard_forks_destroy( fd_hard_forks_t * self, fd_bincode_destroy_ctx_t * ctx );
4880 : void fd_hard_forks_walk( void * w, fd_hard_forks_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4881 : ulong fd_hard_forks_size( fd_hard_forks_t const * self );
4882 : ulong fd_hard_forks_footprint( void );
4883 : ulong fd_hard_forks_align( void );
4884 :
4885 : void fd_inflation_new( fd_inflation_t * self );
4886 : int fd_inflation_decode( fd_inflation_t * self, fd_bincode_decode_ctx_t * ctx );
4887 : int fd_inflation_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4888 : void fd_inflation_decode_unsafe( fd_inflation_t * self, fd_bincode_decode_ctx_t * ctx );
4889 : int fd_inflation_decode_offsets( fd_inflation_off_t * self, fd_bincode_decode_ctx_t * ctx );
4890 : int fd_inflation_encode( fd_inflation_t const * self, fd_bincode_encode_ctx_t * ctx );
4891 : void fd_inflation_destroy( fd_inflation_t * self, fd_bincode_destroy_ctx_t * ctx );
4892 : void fd_inflation_walk( void * w, fd_inflation_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4893 : ulong fd_inflation_size( fd_inflation_t const * self );
4894 : ulong fd_inflation_footprint( void );
4895 : ulong fd_inflation_align( void );
4896 : int fd_inflation_decode_archival( fd_inflation_t * self, fd_bincode_decode_ctx_t * ctx );
4897 : int fd_inflation_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4898 : void fd_inflation_decode_archival_unsafe( fd_inflation_t * self, fd_bincode_decode_ctx_t * ctx );
4899 : int fd_inflation_encode_archival( fd_inflation_t const * self, fd_bincode_encode_ctx_t * ctx );
4900 :
4901 : void fd_rent_new( fd_rent_t * self );
4902 : int fd_rent_decode( fd_rent_t * self, fd_bincode_decode_ctx_t * ctx );
4903 : int fd_rent_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4904 : void fd_rent_decode_unsafe( fd_rent_t * self, fd_bincode_decode_ctx_t * ctx );
4905 : int fd_rent_decode_offsets( fd_rent_off_t * self, fd_bincode_decode_ctx_t * ctx );
4906 : int fd_rent_encode( fd_rent_t const * self, fd_bincode_encode_ctx_t * ctx );
4907 : void fd_rent_destroy( fd_rent_t * self, fd_bincode_destroy_ctx_t * ctx );
4908 : void fd_rent_walk( void * w, fd_rent_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4909 : ulong fd_rent_size( fd_rent_t const * self );
4910 : ulong fd_rent_footprint( void );
4911 : ulong fd_rent_align( void );
4912 : int fd_rent_decode_archival( fd_rent_t * self, fd_bincode_decode_ctx_t * ctx );
4913 : int fd_rent_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4914 : void fd_rent_decode_archival_unsafe( fd_rent_t * self, fd_bincode_decode_ctx_t * ctx );
4915 : int fd_rent_encode_archival( fd_rent_t const * self, fd_bincode_encode_ctx_t * ctx );
4916 :
4917 : void fd_epoch_schedule_new( fd_epoch_schedule_t * self );
4918 : int fd_epoch_schedule_decode( fd_epoch_schedule_t * self, fd_bincode_decode_ctx_t * ctx );
4919 : int fd_epoch_schedule_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4920 : void fd_epoch_schedule_decode_unsafe( fd_epoch_schedule_t * self, fd_bincode_decode_ctx_t * ctx );
4921 : int fd_epoch_schedule_decode_offsets( fd_epoch_schedule_off_t * self, fd_bincode_decode_ctx_t * ctx );
4922 : int fd_epoch_schedule_encode( fd_epoch_schedule_t const * self, fd_bincode_encode_ctx_t * ctx );
4923 : void fd_epoch_schedule_destroy( fd_epoch_schedule_t * self, fd_bincode_destroy_ctx_t * ctx );
4924 : void fd_epoch_schedule_walk( void * w, fd_epoch_schedule_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4925 : ulong fd_epoch_schedule_size( fd_epoch_schedule_t const * self );
4926 : ulong fd_epoch_schedule_footprint( void );
4927 : ulong fd_epoch_schedule_align( void );
4928 : int fd_epoch_schedule_decode_archival( fd_epoch_schedule_t * self, fd_bincode_decode_ctx_t * ctx );
4929 : int fd_epoch_schedule_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4930 : void fd_epoch_schedule_decode_archival_unsafe( fd_epoch_schedule_t * self, fd_bincode_decode_ctx_t * ctx );
4931 : int fd_epoch_schedule_encode_archival( fd_epoch_schedule_t const * self, fd_bincode_encode_ctx_t * ctx );
4932 :
4933 : void fd_rent_collector_new( fd_rent_collector_t * self );
4934 : int fd_rent_collector_decode( fd_rent_collector_t * self, fd_bincode_decode_ctx_t * ctx );
4935 : int fd_rent_collector_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4936 : void fd_rent_collector_decode_unsafe( fd_rent_collector_t * self, fd_bincode_decode_ctx_t * ctx );
4937 : int fd_rent_collector_decode_offsets( fd_rent_collector_off_t * self, fd_bincode_decode_ctx_t * ctx );
4938 : int fd_rent_collector_encode( fd_rent_collector_t const * self, fd_bincode_encode_ctx_t * ctx );
4939 : void fd_rent_collector_destroy( fd_rent_collector_t * self, fd_bincode_destroy_ctx_t * ctx );
4940 : void fd_rent_collector_walk( void * w, fd_rent_collector_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4941 : ulong fd_rent_collector_size( fd_rent_collector_t const * self );
4942 : ulong fd_rent_collector_footprint( void );
4943 : ulong fd_rent_collector_align( void );
4944 :
4945 : void fd_stake_history_entry_new( fd_stake_history_entry_t * self );
4946 : int fd_stake_history_entry_decode( fd_stake_history_entry_t * self, fd_bincode_decode_ctx_t * ctx );
4947 : int fd_stake_history_entry_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4948 : void fd_stake_history_entry_decode_unsafe( fd_stake_history_entry_t * self, fd_bincode_decode_ctx_t * ctx );
4949 : int fd_stake_history_entry_decode_offsets( fd_stake_history_entry_off_t * self, fd_bincode_decode_ctx_t * ctx );
4950 : int fd_stake_history_entry_encode( fd_stake_history_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
4951 : void fd_stake_history_entry_destroy( fd_stake_history_entry_t * self, fd_bincode_destroy_ctx_t * ctx );
4952 : void fd_stake_history_entry_walk( void * w, fd_stake_history_entry_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4953 : ulong fd_stake_history_entry_size( fd_stake_history_entry_t const * self );
4954 : ulong fd_stake_history_entry_footprint( void );
4955 : ulong fd_stake_history_entry_align( void );
4956 : int fd_stake_history_entry_decode_archival( fd_stake_history_entry_t * self, fd_bincode_decode_ctx_t * ctx );
4957 : int fd_stake_history_entry_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4958 : void fd_stake_history_entry_decode_archival_unsafe( fd_stake_history_entry_t * self, fd_bincode_decode_ctx_t * ctx );
4959 : int fd_stake_history_entry_encode_archival( fd_stake_history_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
4960 :
4961 : void fd_stake_history_new( fd_stake_history_t * self );
4962 : int fd_stake_history_decode( fd_stake_history_t * self, fd_bincode_decode_ctx_t * ctx );
4963 : int fd_stake_history_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4964 : void fd_stake_history_decode_unsafe( fd_stake_history_t * self, fd_bincode_decode_ctx_t * ctx );
4965 : int fd_stake_history_decode_offsets( fd_stake_history_off_t * self, fd_bincode_decode_ctx_t * ctx );
4966 : int fd_stake_history_encode( fd_stake_history_t const * self, fd_bincode_encode_ctx_t * ctx );
4967 : void fd_stake_history_destroy( fd_stake_history_t * self, fd_bincode_destroy_ctx_t * ctx );
4968 : void fd_stake_history_walk( void * w, fd_stake_history_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4969 : ulong fd_stake_history_size( fd_stake_history_t const * self );
4970 : ulong fd_stake_history_footprint( void );
4971 : ulong fd_stake_history_align( void );
4972 : int fd_stake_history_decode_archival( fd_stake_history_t * self, fd_bincode_decode_ctx_t * ctx );
4973 : int fd_stake_history_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
4974 : void fd_stake_history_decode_archival_unsafe( fd_stake_history_t * self, fd_bincode_decode_ctx_t * ctx );
4975 : int fd_stake_history_encode_archival( fd_stake_history_t const * self, fd_bincode_encode_ctx_t * ctx );
4976 :
4977 : void fd_solana_account_new( fd_solana_account_t * self );
4978 : int fd_solana_account_decode( fd_solana_account_t * self, fd_bincode_decode_ctx_t * ctx );
4979 : int fd_solana_account_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4980 : void fd_solana_account_decode_unsafe( fd_solana_account_t * self, fd_bincode_decode_ctx_t * ctx );
4981 : int fd_solana_account_decode_offsets( fd_solana_account_off_t * self, fd_bincode_decode_ctx_t * ctx );
4982 : int fd_solana_account_encode( fd_solana_account_t const * self, fd_bincode_encode_ctx_t * ctx );
4983 : void fd_solana_account_destroy( fd_solana_account_t * self, fd_bincode_destroy_ctx_t * ctx );
4984 : void fd_solana_account_walk( void * w, fd_solana_account_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4985 : ulong fd_solana_account_size( fd_solana_account_t const * self );
4986 : ulong fd_solana_account_footprint( void );
4987 : ulong fd_solana_account_align( void );
4988 :
4989 : void fd_vote_accounts_pair_new( fd_vote_accounts_pair_t * self );
4990 : int fd_vote_accounts_pair_decode( fd_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4991 : int fd_vote_accounts_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
4992 : void fd_vote_accounts_pair_decode_unsafe( fd_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
4993 : int fd_vote_accounts_pair_decode_offsets( fd_vote_accounts_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
4994 : int fd_vote_accounts_pair_encode( fd_vote_accounts_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
4995 : void fd_vote_accounts_pair_destroy( fd_vote_accounts_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
4996 : void fd_vote_accounts_pair_walk( void * w, fd_vote_accounts_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
4997 : ulong fd_vote_accounts_pair_size( fd_vote_accounts_pair_t const * self );
4998 : ulong fd_vote_accounts_pair_footprint( void );
4999 : ulong fd_vote_accounts_pair_align( void );
5000 : int fd_vote_accounts_pair_decode_archival( fd_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5001 : int fd_vote_accounts_pair_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5002 : void fd_vote_accounts_pair_decode_archival_unsafe( fd_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5003 : int fd_vote_accounts_pair_encode_archival( fd_vote_accounts_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5004 :
5005 : void fd_vote_accounts_new( fd_vote_accounts_t * self );
5006 : int fd_vote_accounts_decode( fd_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5007 : int fd_vote_accounts_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5008 : void fd_vote_accounts_decode_unsafe( fd_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5009 : int fd_vote_accounts_decode_offsets( fd_vote_accounts_off_t * self, fd_bincode_decode_ctx_t * ctx );
5010 : int fd_vote_accounts_encode( fd_vote_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
5011 : void fd_vote_accounts_destroy( fd_vote_accounts_t * self, fd_bincode_destroy_ctx_t * ctx );
5012 : void fd_vote_accounts_walk( void * w, fd_vote_accounts_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5013 : ulong fd_vote_accounts_size( fd_vote_accounts_t const * self );
5014 : ulong fd_vote_accounts_footprint( void );
5015 : ulong fd_vote_accounts_align( void );
5016 : int fd_vote_accounts_decode_archival( fd_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5017 : int fd_vote_accounts_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5018 : void fd_vote_accounts_decode_archival_unsafe( fd_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5019 : int fd_vote_accounts_encode_archival( fd_vote_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
5020 :
5021 : void fd_stake_accounts_pair_new( fd_stake_accounts_pair_t * self );
5022 : int fd_stake_accounts_pair_decode( fd_stake_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5023 : int fd_stake_accounts_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5024 : void fd_stake_accounts_pair_decode_unsafe( fd_stake_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5025 : int fd_stake_accounts_pair_decode_offsets( fd_stake_accounts_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5026 : int fd_stake_accounts_pair_encode( fd_stake_accounts_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5027 : void fd_stake_accounts_pair_destroy( fd_stake_accounts_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5028 : void fd_stake_accounts_pair_walk( void * w, fd_stake_accounts_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5029 : ulong fd_stake_accounts_pair_size( fd_stake_accounts_pair_t const * self );
5030 : ulong fd_stake_accounts_pair_footprint( void );
5031 : ulong fd_stake_accounts_pair_align( void );
5032 : int fd_stake_accounts_pair_decode_archival( fd_stake_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5033 : int fd_stake_accounts_pair_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5034 : void fd_stake_accounts_pair_decode_archival_unsafe( fd_stake_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5035 : int fd_stake_accounts_pair_encode_archival( fd_stake_accounts_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5036 :
5037 : void fd_stake_accounts_new( fd_stake_accounts_t * self );
5038 : int fd_stake_accounts_decode( fd_stake_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5039 : int fd_stake_accounts_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5040 : void fd_stake_accounts_decode_unsafe( fd_stake_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5041 : int fd_stake_accounts_decode_offsets( fd_stake_accounts_off_t * self, fd_bincode_decode_ctx_t * ctx );
5042 : int fd_stake_accounts_encode( fd_stake_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
5043 : void fd_stake_accounts_destroy( fd_stake_accounts_t * self, fd_bincode_destroy_ctx_t * ctx );
5044 : void fd_stake_accounts_walk( void * w, fd_stake_accounts_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5045 : ulong fd_stake_accounts_size( fd_stake_accounts_t const * self );
5046 : ulong fd_stake_accounts_footprint( void );
5047 : ulong fd_stake_accounts_align( void );
5048 : int fd_stake_accounts_decode_archival( fd_stake_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5049 : int fd_stake_accounts_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5050 : void fd_stake_accounts_decode_archival_unsafe( fd_stake_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5051 : int fd_stake_accounts_encode_archival( fd_stake_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
5052 :
5053 : void fd_stake_weight_new( fd_stake_weight_t * self );
5054 : int fd_stake_weight_decode( fd_stake_weight_t * self, fd_bincode_decode_ctx_t * ctx );
5055 : int fd_stake_weight_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5056 : void fd_stake_weight_decode_unsafe( fd_stake_weight_t * self, fd_bincode_decode_ctx_t * ctx );
5057 : int fd_stake_weight_decode_offsets( fd_stake_weight_off_t * self, fd_bincode_decode_ctx_t * ctx );
5058 : int fd_stake_weight_encode( fd_stake_weight_t const * self, fd_bincode_encode_ctx_t * ctx );
5059 : void fd_stake_weight_destroy( fd_stake_weight_t * self, fd_bincode_destroy_ctx_t * ctx );
5060 : void fd_stake_weight_walk( void * w, fd_stake_weight_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5061 : ulong fd_stake_weight_size( fd_stake_weight_t const * self );
5062 : ulong fd_stake_weight_footprint( void );
5063 : ulong fd_stake_weight_align( void );
5064 :
5065 : void fd_stake_weights_new( fd_stake_weights_t * self );
5066 : int fd_stake_weights_decode( fd_stake_weights_t * self, fd_bincode_decode_ctx_t * ctx );
5067 : int fd_stake_weights_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5068 : void fd_stake_weights_decode_unsafe( fd_stake_weights_t * self, fd_bincode_decode_ctx_t * ctx );
5069 : int fd_stake_weights_decode_offsets( fd_stake_weights_off_t * self, fd_bincode_decode_ctx_t * ctx );
5070 : int fd_stake_weights_encode( fd_stake_weights_t const * self, fd_bincode_encode_ctx_t * ctx );
5071 : void fd_stake_weights_destroy( fd_stake_weights_t * self, fd_bincode_destroy_ctx_t * ctx );
5072 : void fd_stake_weights_walk( void * w, fd_stake_weights_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5073 : ulong fd_stake_weights_size( fd_stake_weights_t const * self );
5074 : ulong fd_stake_weights_footprint( void );
5075 : ulong fd_stake_weights_align( void );
5076 :
5077 : void fd_delegation_new( fd_delegation_t * self );
5078 : int fd_delegation_decode( fd_delegation_t * self, fd_bincode_decode_ctx_t * ctx );
5079 : int fd_delegation_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5080 : void fd_delegation_decode_unsafe( fd_delegation_t * self, fd_bincode_decode_ctx_t * ctx );
5081 : int fd_delegation_decode_offsets( fd_delegation_off_t * self, fd_bincode_decode_ctx_t * ctx );
5082 : int fd_delegation_encode( fd_delegation_t const * self, fd_bincode_encode_ctx_t * ctx );
5083 : void fd_delegation_destroy( fd_delegation_t * self, fd_bincode_destroy_ctx_t * ctx );
5084 : void fd_delegation_walk( void * w, fd_delegation_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5085 : ulong fd_delegation_size( fd_delegation_t const * self );
5086 : ulong fd_delegation_footprint( void );
5087 : ulong fd_delegation_align( void );
5088 : int fd_delegation_decode_archival( fd_delegation_t * self, fd_bincode_decode_ctx_t * ctx );
5089 : int fd_delegation_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5090 : void fd_delegation_decode_archival_unsafe( fd_delegation_t * self, fd_bincode_decode_ctx_t * ctx );
5091 : int fd_delegation_encode_archival( fd_delegation_t const * self, fd_bincode_encode_ctx_t * ctx );
5092 :
5093 : void fd_delegation_pair_new( fd_delegation_pair_t * self );
5094 : int fd_delegation_pair_decode( fd_delegation_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5095 : int fd_delegation_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5096 : void fd_delegation_pair_decode_unsafe( fd_delegation_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5097 : int fd_delegation_pair_decode_offsets( fd_delegation_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5098 : int fd_delegation_pair_encode( fd_delegation_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5099 : void fd_delegation_pair_destroy( fd_delegation_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5100 : void fd_delegation_pair_walk( void * w, fd_delegation_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5101 : ulong fd_delegation_pair_size( fd_delegation_pair_t const * self );
5102 : ulong fd_delegation_pair_footprint( void );
5103 : ulong fd_delegation_pair_align( void );
5104 : int fd_delegation_pair_decode_archival( fd_delegation_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5105 : int fd_delegation_pair_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5106 : void fd_delegation_pair_decode_archival_unsafe( fd_delegation_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5107 : int fd_delegation_pair_encode_archival( fd_delegation_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5108 :
5109 : void fd_stake_new( fd_stake_t * self );
5110 : int fd_stake_decode( fd_stake_t * self, fd_bincode_decode_ctx_t * ctx );
5111 : int fd_stake_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5112 : void fd_stake_decode_unsafe( fd_stake_t * self, fd_bincode_decode_ctx_t * ctx );
5113 : int fd_stake_decode_offsets( fd_stake_off_t * self, fd_bincode_decode_ctx_t * ctx );
5114 : int fd_stake_encode( fd_stake_t const * self, fd_bincode_encode_ctx_t * ctx );
5115 : void fd_stake_destroy( fd_stake_t * self, fd_bincode_destroy_ctx_t * ctx );
5116 : void fd_stake_walk( void * w, fd_stake_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5117 : ulong fd_stake_size( fd_stake_t const * self );
5118 : ulong fd_stake_footprint( void );
5119 : ulong fd_stake_align( void );
5120 :
5121 : void fd_stake_pair_new( fd_stake_pair_t * self );
5122 : int fd_stake_pair_decode( fd_stake_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5123 : int fd_stake_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5124 : void fd_stake_pair_decode_unsafe( fd_stake_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5125 : int fd_stake_pair_decode_offsets( fd_stake_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5126 : int fd_stake_pair_encode( fd_stake_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5127 : void fd_stake_pair_destroy( fd_stake_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5128 : void fd_stake_pair_walk( void * w, fd_stake_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5129 : ulong fd_stake_pair_size( fd_stake_pair_t const * self );
5130 : ulong fd_stake_pair_footprint( void );
5131 : ulong fd_stake_pair_align( void );
5132 :
5133 : void fd_stakes_new( fd_stakes_t * self );
5134 : int fd_stakes_decode( fd_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5135 : int fd_stakes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5136 : void fd_stakes_decode_unsafe( fd_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5137 : int fd_stakes_decode_offsets( fd_stakes_off_t * self, fd_bincode_decode_ctx_t * ctx );
5138 : int fd_stakes_encode( fd_stakes_t const * self, fd_bincode_encode_ctx_t * ctx );
5139 : void fd_stakes_destroy( fd_stakes_t * self, fd_bincode_destroy_ctx_t * ctx );
5140 : void fd_stakes_walk( void * w, fd_stakes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5141 : ulong fd_stakes_size( fd_stakes_t const * self );
5142 : ulong fd_stakes_footprint( void );
5143 : ulong fd_stakes_align( void );
5144 : int fd_stakes_decode_archival( fd_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5145 : int fd_stakes_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5146 : void fd_stakes_decode_archival_unsafe( fd_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5147 : int fd_stakes_encode_archival( fd_stakes_t const * self, fd_bincode_encode_ctx_t * ctx );
5148 :
5149 : void fd_stakes_stake_new( fd_stakes_stake_t * self );
5150 : int fd_stakes_stake_decode( fd_stakes_stake_t * self, fd_bincode_decode_ctx_t * ctx );
5151 : int fd_stakes_stake_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5152 : void fd_stakes_stake_decode_unsafe( fd_stakes_stake_t * self, fd_bincode_decode_ctx_t * ctx );
5153 : int fd_stakes_stake_decode_offsets( fd_stakes_stake_off_t * self, fd_bincode_decode_ctx_t * ctx );
5154 : int fd_stakes_stake_encode( fd_stakes_stake_t const * self, fd_bincode_encode_ctx_t * ctx );
5155 : void fd_stakes_stake_destroy( fd_stakes_stake_t * self, fd_bincode_destroy_ctx_t * ctx );
5156 : void fd_stakes_stake_walk( void * w, fd_stakes_stake_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5157 : ulong fd_stakes_stake_size( fd_stakes_stake_t const * self );
5158 : ulong fd_stakes_stake_footprint( void );
5159 : ulong fd_stakes_stake_align( void );
5160 :
5161 : void fd_bank_incremental_snapshot_persistence_new( fd_bank_incremental_snapshot_persistence_t * self );
5162 : int fd_bank_incremental_snapshot_persistence_decode( fd_bank_incremental_snapshot_persistence_t * self, fd_bincode_decode_ctx_t * ctx );
5163 : int fd_bank_incremental_snapshot_persistence_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5164 : void fd_bank_incremental_snapshot_persistence_decode_unsafe( fd_bank_incremental_snapshot_persistence_t * self, fd_bincode_decode_ctx_t * ctx );
5165 : int fd_bank_incremental_snapshot_persistence_decode_offsets( fd_bank_incremental_snapshot_persistence_off_t * self, fd_bincode_decode_ctx_t * ctx );
5166 : int fd_bank_incremental_snapshot_persistence_encode( fd_bank_incremental_snapshot_persistence_t const * self, fd_bincode_encode_ctx_t * ctx );
5167 : void fd_bank_incremental_snapshot_persistence_destroy( fd_bank_incremental_snapshot_persistence_t * self, fd_bincode_destroy_ctx_t * ctx );
5168 : void fd_bank_incremental_snapshot_persistence_walk( void * w, fd_bank_incremental_snapshot_persistence_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5169 : ulong fd_bank_incremental_snapshot_persistence_size( fd_bank_incremental_snapshot_persistence_t const * self );
5170 : ulong fd_bank_incremental_snapshot_persistence_footprint( void );
5171 : ulong fd_bank_incremental_snapshot_persistence_align( void );
5172 :
5173 : void fd_node_vote_accounts_new( fd_node_vote_accounts_t * self );
5174 : int fd_node_vote_accounts_decode( fd_node_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5175 : int fd_node_vote_accounts_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5176 : void fd_node_vote_accounts_decode_unsafe( fd_node_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5177 : int fd_node_vote_accounts_decode_offsets( fd_node_vote_accounts_off_t * self, fd_bincode_decode_ctx_t * ctx );
5178 : int fd_node_vote_accounts_encode( fd_node_vote_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
5179 : void fd_node_vote_accounts_destroy( fd_node_vote_accounts_t * self, fd_bincode_destroy_ctx_t * ctx );
5180 : void fd_node_vote_accounts_walk( void * w, fd_node_vote_accounts_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5181 : ulong fd_node_vote_accounts_size( fd_node_vote_accounts_t const * self );
5182 : ulong fd_node_vote_accounts_footprint( void );
5183 : ulong fd_node_vote_accounts_align( void );
5184 :
5185 : void fd_pubkey_node_vote_accounts_pair_new( fd_pubkey_node_vote_accounts_pair_t * self );
5186 : int fd_pubkey_node_vote_accounts_pair_decode( fd_pubkey_node_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5187 : int fd_pubkey_node_vote_accounts_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5188 : void fd_pubkey_node_vote_accounts_pair_decode_unsafe( fd_pubkey_node_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5189 : int fd_pubkey_node_vote_accounts_pair_decode_offsets( fd_pubkey_node_vote_accounts_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5190 : int fd_pubkey_node_vote_accounts_pair_encode( fd_pubkey_node_vote_accounts_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5191 : void fd_pubkey_node_vote_accounts_pair_destroy( fd_pubkey_node_vote_accounts_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5192 : void fd_pubkey_node_vote_accounts_pair_walk( void * w, fd_pubkey_node_vote_accounts_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5193 : ulong fd_pubkey_node_vote_accounts_pair_size( fd_pubkey_node_vote_accounts_pair_t const * self );
5194 : ulong fd_pubkey_node_vote_accounts_pair_footprint( void );
5195 : ulong fd_pubkey_node_vote_accounts_pair_align( void );
5196 :
5197 : void fd_pubkey_pubkey_pair_new( fd_pubkey_pubkey_pair_t * self );
5198 : int fd_pubkey_pubkey_pair_decode( fd_pubkey_pubkey_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5199 : int fd_pubkey_pubkey_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5200 : void fd_pubkey_pubkey_pair_decode_unsafe( fd_pubkey_pubkey_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5201 : int fd_pubkey_pubkey_pair_decode_offsets( fd_pubkey_pubkey_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5202 : int fd_pubkey_pubkey_pair_encode( fd_pubkey_pubkey_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5203 : void fd_pubkey_pubkey_pair_destroy( fd_pubkey_pubkey_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5204 : void fd_pubkey_pubkey_pair_walk( void * w, fd_pubkey_pubkey_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5205 : ulong fd_pubkey_pubkey_pair_size( fd_pubkey_pubkey_pair_t const * self );
5206 : ulong fd_pubkey_pubkey_pair_footprint( void );
5207 : ulong fd_pubkey_pubkey_pair_align( void );
5208 :
5209 : void fd_epoch_stakes_new( fd_epoch_stakes_t * self );
5210 : int fd_epoch_stakes_decode( fd_epoch_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5211 : int fd_epoch_stakes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5212 : void fd_epoch_stakes_decode_unsafe( fd_epoch_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5213 : int fd_epoch_stakes_decode_offsets( fd_epoch_stakes_off_t * self, fd_bincode_decode_ctx_t * ctx );
5214 : int fd_epoch_stakes_encode( fd_epoch_stakes_t const * self, fd_bincode_encode_ctx_t * ctx );
5215 : void fd_epoch_stakes_destroy( fd_epoch_stakes_t * self, fd_bincode_destroy_ctx_t * ctx );
5216 : void fd_epoch_stakes_walk( void * w, fd_epoch_stakes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5217 : ulong fd_epoch_stakes_size( fd_epoch_stakes_t const * self );
5218 : ulong fd_epoch_stakes_footprint( void );
5219 : ulong fd_epoch_stakes_align( void );
5220 :
5221 : void fd_epoch_epoch_stakes_pair_new( fd_epoch_epoch_stakes_pair_t * self );
5222 : int fd_epoch_epoch_stakes_pair_decode( fd_epoch_epoch_stakes_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5223 : int fd_epoch_epoch_stakes_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5224 : void fd_epoch_epoch_stakes_pair_decode_unsafe( fd_epoch_epoch_stakes_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5225 : int fd_epoch_epoch_stakes_pair_decode_offsets( fd_epoch_epoch_stakes_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5226 : int fd_epoch_epoch_stakes_pair_encode( fd_epoch_epoch_stakes_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5227 : void fd_epoch_epoch_stakes_pair_destroy( fd_epoch_epoch_stakes_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5228 : void fd_epoch_epoch_stakes_pair_walk( void * w, fd_epoch_epoch_stakes_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5229 : ulong fd_epoch_epoch_stakes_pair_size( fd_epoch_epoch_stakes_pair_t const * self );
5230 : ulong fd_epoch_epoch_stakes_pair_footprint( void );
5231 : ulong fd_epoch_epoch_stakes_pair_align( void );
5232 :
5233 : void fd_pubkey_u64_pair_new( fd_pubkey_u64_pair_t * self );
5234 : int fd_pubkey_u64_pair_decode( fd_pubkey_u64_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5235 : int fd_pubkey_u64_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5236 : void fd_pubkey_u64_pair_decode_unsafe( fd_pubkey_u64_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5237 : int fd_pubkey_u64_pair_decode_offsets( fd_pubkey_u64_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5238 : int fd_pubkey_u64_pair_encode( fd_pubkey_u64_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5239 : void fd_pubkey_u64_pair_destroy( fd_pubkey_u64_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5240 : void fd_pubkey_u64_pair_walk( void * w, fd_pubkey_u64_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5241 : ulong fd_pubkey_u64_pair_size( fd_pubkey_u64_pair_t const * self );
5242 : ulong fd_pubkey_u64_pair_footprint( void );
5243 : ulong fd_pubkey_u64_pair_align( void );
5244 :
5245 : void fd_unused_accounts_new( fd_unused_accounts_t * self );
5246 : int fd_unused_accounts_decode( fd_unused_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5247 : int fd_unused_accounts_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5248 : void fd_unused_accounts_decode_unsafe( fd_unused_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
5249 : int fd_unused_accounts_decode_offsets( fd_unused_accounts_off_t * self, fd_bincode_decode_ctx_t * ctx );
5250 : int fd_unused_accounts_encode( fd_unused_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
5251 : void fd_unused_accounts_destroy( fd_unused_accounts_t * self, fd_bincode_destroy_ctx_t * ctx );
5252 : void fd_unused_accounts_walk( void * w, fd_unused_accounts_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5253 : ulong fd_unused_accounts_size( fd_unused_accounts_t const * self );
5254 : ulong fd_unused_accounts_footprint( void );
5255 : ulong fd_unused_accounts_align( void );
5256 :
5257 : void fd_deserializable_versioned_bank_new( fd_deserializable_versioned_bank_t * self );
5258 : int fd_deserializable_versioned_bank_decode( fd_deserializable_versioned_bank_t * self, fd_bincode_decode_ctx_t * ctx );
5259 : int fd_deserializable_versioned_bank_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5260 : void fd_deserializable_versioned_bank_decode_unsafe( fd_deserializable_versioned_bank_t * self, fd_bincode_decode_ctx_t * ctx );
5261 : int fd_deserializable_versioned_bank_decode_offsets( fd_deserializable_versioned_bank_off_t * self, fd_bincode_decode_ctx_t * ctx );
5262 : int fd_deserializable_versioned_bank_encode( fd_deserializable_versioned_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
5263 : void fd_deserializable_versioned_bank_destroy( fd_deserializable_versioned_bank_t * self, fd_bincode_destroy_ctx_t * ctx );
5264 : void fd_deserializable_versioned_bank_walk( void * w, fd_deserializable_versioned_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5265 : ulong fd_deserializable_versioned_bank_size( fd_deserializable_versioned_bank_t const * self );
5266 : ulong fd_deserializable_versioned_bank_footprint( void );
5267 : ulong fd_deserializable_versioned_bank_align( void );
5268 :
5269 : void fd_bank_hash_stats_new( fd_bank_hash_stats_t * self );
5270 : int fd_bank_hash_stats_decode( fd_bank_hash_stats_t * self, fd_bincode_decode_ctx_t * ctx );
5271 : int fd_bank_hash_stats_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5272 : void fd_bank_hash_stats_decode_unsafe( fd_bank_hash_stats_t * self, fd_bincode_decode_ctx_t * ctx );
5273 : int fd_bank_hash_stats_decode_offsets( fd_bank_hash_stats_off_t * self, fd_bincode_decode_ctx_t * ctx );
5274 : int fd_bank_hash_stats_encode( fd_bank_hash_stats_t const * self, fd_bincode_encode_ctx_t * ctx );
5275 : void fd_bank_hash_stats_destroy( fd_bank_hash_stats_t * self, fd_bincode_destroy_ctx_t * ctx );
5276 : void fd_bank_hash_stats_walk( void * w, fd_bank_hash_stats_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5277 : ulong fd_bank_hash_stats_size( fd_bank_hash_stats_t const * self );
5278 : ulong fd_bank_hash_stats_footprint( void );
5279 : ulong fd_bank_hash_stats_align( void );
5280 :
5281 : void fd_bank_hash_info_new( fd_bank_hash_info_t * self );
5282 : int fd_bank_hash_info_decode( fd_bank_hash_info_t * self, fd_bincode_decode_ctx_t * ctx );
5283 : int fd_bank_hash_info_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5284 : void fd_bank_hash_info_decode_unsafe( fd_bank_hash_info_t * self, fd_bincode_decode_ctx_t * ctx );
5285 : int fd_bank_hash_info_decode_offsets( fd_bank_hash_info_off_t * self, fd_bincode_decode_ctx_t * ctx );
5286 : int fd_bank_hash_info_encode( fd_bank_hash_info_t const * self, fd_bincode_encode_ctx_t * ctx );
5287 : void fd_bank_hash_info_destroy( fd_bank_hash_info_t * self, fd_bincode_destroy_ctx_t * ctx );
5288 : void fd_bank_hash_info_walk( void * w, fd_bank_hash_info_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5289 : ulong fd_bank_hash_info_size( fd_bank_hash_info_t const * self );
5290 : ulong fd_bank_hash_info_footprint( void );
5291 : ulong fd_bank_hash_info_align( void );
5292 :
5293 : void fd_slot_map_pair_new( fd_slot_map_pair_t * self );
5294 : int fd_slot_map_pair_decode( fd_slot_map_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5295 : int fd_slot_map_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5296 : void fd_slot_map_pair_decode_unsafe( fd_slot_map_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5297 : int fd_slot_map_pair_decode_offsets( fd_slot_map_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5298 : int fd_slot_map_pair_encode( fd_slot_map_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5299 : void fd_slot_map_pair_destroy( fd_slot_map_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5300 : void fd_slot_map_pair_walk( void * w, fd_slot_map_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5301 : ulong fd_slot_map_pair_size( fd_slot_map_pair_t const * self );
5302 : ulong fd_slot_map_pair_footprint( void );
5303 : ulong fd_slot_map_pair_align( void );
5304 :
5305 : void fd_snapshot_acc_vec_new( fd_snapshot_acc_vec_t * self );
5306 : int fd_snapshot_acc_vec_decode( fd_snapshot_acc_vec_t * self, fd_bincode_decode_ctx_t * ctx );
5307 : int fd_snapshot_acc_vec_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5308 : void fd_snapshot_acc_vec_decode_unsafe( fd_snapshot_acc_vec_t * self, fd_bincode_decode_ctx_t * ctx );
5309 : int fd_snapshot_acc_vec_decode_offsets( fd_snapshot_acc_vec_off_t * self, fd_bincode_decode_ctx_t * ctx );
5310 : int fd_snapshot_acc_vec_encode( fd_snapshot_acc_vec_t const * self, fd_bincode_encode_ctx_t * ctx );
5311 : void fd_snapshot_acc_vec_destroy( fd_snapshot_acc_vec_t * self, fd_bincode_destroy_ctx_t * ctx );
5312 : void fd_snapshot_acc_vec_walk( void * w, fd_snapshot_acc_vec_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5313 : ulong fd_snapshot_acc_vec_size( fd_snapshot_acc_vec_t const * self );
5314 : ulong fd_snapshot_acc_vec_footprint( void );
5315 : ulong fd_snapshot_acc_vec_align( void );
5316 :
5317 : void fd_snapshot_slot_acc_vecs_new( fd_snapshot_slot_acc_vecs_t * self );
5318 : int fd_snapshot_slot_acc_vecs_decode( fd_snapshot_slot_acc_vecs_t * self, fd_bincode_decode_ctx_t * ctx );
5319 : int fd_snapshot_slot_acc_vecs_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5320 : void fd_snapshot_slot_acc_vecs_decode_unsafe( fd_snapshot_slot_acc_vecs_t * self, fd_bincode_decode_ctx_t * ctx );
5321 : int fd_snapshot_slot_acc_vecs_decode_offsets( fd_snapshot_slot_acc_vecs_off_t * self, fd_bincode_decode_ctx_t * ctx );
5322 : int fd_snapshot_slot_acc_vecs_encode( fd_snapshot_slot_acc_vecs_t const * self, fd_bincode_encode_ctx_t * ctx );
5323 : void fd_snapshot_slot_acc_vecs_destroy( fd_snapshot_slot_acc_vecs_t * self, fd_bincode_destroy_ctx_t * ctx );
5324 : void fd_snapshot_slot_acc_vecs_walk( void * w, fd_snapshot_slot_acc_vecs_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5325 : ulong fd_snapshot_slot_acc_vecs_size( fd_snapshot_slot_acc_vecs_t const * self );
5326 : ulong fd_snapshot_slot_acc_vecs_footprint( void );
5327 : ulong fd_snapshot_slot_acc_vecs_align( void );
5328 :
5329 : void fd_reward_type_new_disc( fd_reward_type_t * self, uint discriminant );
5330 : void fd_reward_type_new( fd_reward_type_t * self );
5331 : int fd_reward_type_decode( fd_reward_type_t * self, fd_bincode_decode_ctx_t * ctx );
5332 : int fd_reward_type_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5333 : void fd_reward_type_decode_unsafe( fd_reward_type_t * self, fd_bincode_decode_ctx_t * ctx );
5334 : int fd_reward_type_encode( fd_reward_type_t const * self, fd_bincode_encode_ctx_t * ctx );
5335 : void fd_reward_type_destroy( fd_reward_type_t * self, fd_bincode_destroy_ctx_t * ctx );
5336 : void fd_reward_type_walk( void * w, fd_reward_type_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5337 : ulong fd_reward_type_size( fd_reward_type_t const * self );
5338 : ulong fd_reward_type_footprint( void );
5339 : ulong fd_reward_type_align( void );
5340 :
5341 : FD_FN_PURE uchar fd_reward_type_is_fee( fd_reward_type_t const * self );
5342 : FD_FN_PURE uchar fd_reward_type_is_rent( fd_reward_type_t const * self );
5343 : FD_FN_PURE uchar fd_reward_type_is_staking( fd_reward_type_t const * self );
5344 : FD_FN_PURE uchar fd_reward_type_is_voting( fd_reward_type_t const * self );
5345 : enum {
5346 : fd_reward_type_enum_fee = 0,
5347 : fd_reward_type_enum_rent = 1,
5348 : fd_reward_type_enum_staking = 2,
5349 : fd_reward_type_enum_voting = 3,
5350 : };
5351 : void fd_solana_accounts_db_fields_new( fd_solana_accounts_db_fields_t * self );
5352 : int fd_solana_accounts_db_fields_decode( fd_solana_accounts_db_fields_t * self, fd_bincode_decode_ctx_t * ctx );
5353 : int fd_solana_accounts_db_fields_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5354 : void fd_solana_accounts_db_fields_decode_unsafe( fd_solana_accounts_db_fields_t * self, fd_bincode_decode_ctx_t * ctx );
5355 : int fd_solana_accounts_db_fields_decode_offsets( fd_solana_accounts_db_fields_off_t * self, fd_bincode_decode_ctx_t * ctx );
5356 : int fd_solana_accounts_db_fields_encode( fd_solana_accounts_db_fields_t const * self, fd_bincode_encode_ctx_t * ctx );
5357 : void fd_solana_accounts_db_fields_destroy( fd_solana_accounts_db_fields_t * self, fd_bincode_destroy_ctx_t * ctx );
5358 : void fd_solana_accounts_db_fields_walk( void * w, fd_solana_accounts_db_fields_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5359 : ulong fd_solana_accounts_db_fields_size( fd_solana_accounts_db_fields_t const * self );
5360 : ulong fd_solana_accounts_db_fields_footprint( void );
5361 : ulong fd_solana_accounts_db_fields_align( void );
5362 :
5363 : void fd_epoch_stakes_current_new( fd_epoch_stakes_current_t * self );
5364 : int fd_epoch_stakes_current_decode( fd_epoch_stakes_current_t * self, fd_bincode_decode_ctx_t * ctx );
5365 : int fd_epoch_stakes_current_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5366 : void fd_epoch_stakes_current_decode_unsafe( fd_epoch_stakes_current_t * self, fd_bincode_decode_ctx_t * ctx );
5367 : int fd_epoch_stakes_current_decode_offsets( fd_epoch_stakes_current_off_t * self, fd_bincode_decode_ctx_t * ctx );
5368 : int fd_epoch_stakes_current_encode( fd_epoch_stakes_current_t const * self, fd_bincode_encode_ctx_t * ctx );
5369 : void fd_epoch_stakes_current_destroy( fd_epoch_stakes_current_t * self, fd_bincode_destroy_ctx_t * ctx );
5370 : void fd_epoch_stakes_current_walk( void * w, fd_epoch_stakes_current_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5371 : ulong fd_epoch_stakes_current_size( fd_epoch_stakes_current_t const * self );
5372 : ulong fd_epoch_stakes_current_footprint( void );
5373 : ulong fd_epoch_stakes_current_align( void );
5374 :
5375 : void fd_versioned_epoch_stakes_new_disc( fd_versioned_epoch_stakes_t * self, uint discriminant );
5376 : void fd_versioned_epoch_stakes_new( fd_versioned_epoch_stakes_t * self );
5377 : int fd_versioned_epoch_stakes_decode( fd_versioned_epoch_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5378 : int fd_versioned_epoch_stakes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5379 : void fd_versioned_epoch_stakes_decode_unsafe( fd_versioned_epoch_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
5380 : int fd_versioned_epoch_stakes_encode( fd_versioned_epoch_stakes_t const * self, fd_bincode_encode_ctx_t * ctx );
5381 : void fd_versioned_epoch_stakes_destroy( fd_versioned_epoch_stakes_t * self, fd_bincode_destroy_ctx_t * ctx );
5382 : void fd_versioned_epoch_stakes_walk( void * w, fd_versioned_epoch_stakes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5383 : ulong fd_versioned_epoch_stakes_size( fd_versioned_epoch_stakes_t const * self );
5384 : ulong fd_versioned_epoch_stakes_footprint( void );
5385 : ulong fd_versioned_epoch_stakes_align( void );
5386 :
5387 : FD_FN_PURE uchar fd_versioned_epoch_stakes_is_Current( fd_versioned_epoch_stakes_t const * self );
5388 : enum {
5389 : fd_versioned_epoch_stakes_enum_Current = 0,
5390 : };
5391 : void fd_versioned_epoch_stakes_pair_new( fd_versioned_epoch_stakes_pair_t * self );
5392 : int fd_versioned_epoch_stakes_pair_decode( fd_versioned_epoch_stakes_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5393 : int fd_versioned_epoch_stakes_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5394 : void fd_versioned_epoch_stakes_pair_decode_unsafe( fd_versioned_epoch_stakes_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5395 : int fd_versioned_epoch_stakes_pair_decode_offsets( fd_versioned_epoch_stakes_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5396 : int fd_versioned_epoch_stakes_pair_encode( fd_versioned_epoch_stakes_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5397 : void fd_versioned_epoch_stakes_pair_destroy( fd_versioned_epoch_stakes_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5398 : void fd_versioned_epoch_stakes_pair_walk( void * w, fd_versioned_epoch_stakes_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5399 : ulong fd_versioned_epoch_stakes_pair_size( fd_versioned_epoch_stakes_pair_t const * self );
5400 : ulong fd_versioned_epoch_stakes_pair_footprint( void );
5401 : ulong fd_versioned_epoch_stakes_pair_align( void );
5402 :
5403 : void fd_reward_info_new( fd_reward_info_t * self );
5404 : int fd_reward_info_decode( fd_reward_info_t * self, fd_bincode_decode_ctx_t * ctx );
5405 : int fd_reward_info_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5406 : void fd_reward_info_decode_unsafe( fd_reward_info_t * self, fd_bincode_decode_ctx_t * ctx );
5407 : int fd_reward_info_decode_offsets( fd_reward_info_off_t * self, fd_bincode_decode_ctx_t * ctx );
5408 : int fd_reward_info_encode( fd_reward_info_t const * self, fd_bincode_encode_ctx_t * ctx );
5409 : void fd_reward_info_destroy( fd_reward_info_t * self, fd_bincode_destroy_ctx_t * ctx );
5410 : void fd_reward_info_walk( void * w, fd_reward_info_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5411 : ulong fd_reward_info_size( fd_reward_info_t const * self );
5412 : ulong fd_reward_info_footprint( void );
5413 : ulong fd_reward_info_align( void );
5414 :
5415 : void fd_slot_lthash_new( fd_slot_lthash_t * self );
5416 : int fd_slot_lthash_decode( fd_slot_lthash_t * self, fd_bincode_decode_ctx_t * ctx );
5417 : int fd_slot_lthash_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5418 : void fd_slot_lthash_decode_unsafe( fd_slot_lthash_t * self, fd_bincode_decode_ctx_t * ctx );
5419 : int fd_slot_lthash_decode_offsets( fd_slot_lthash_off_t * self, fd_bincode_decode_ctx_t * ctx );
5420 : int fd_slot_lthash_encode( fd_slot_lthash_t const * self, fd_bincode_encode_ctx_t * ctx );
5421 : void fd_slot_lthash_destroy( fd_slot_lthash_t * self, fd_bincode_destroy_ctx_t * ctx );
5422 : void fd_slot_lthash_walk( void * w, fd_slot_lthash_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5423 : ulong fd_slot_lthash_size( fd_slot_lthash_t const * self );
5424 : ulong fd_slot_lthash_footprint( void );
5425 : ulong fd_slot_lthash_align( void );
5426 : int fd_slot_lthash_decode_archival( fd_slot_lthash_t * self, fd_bincode_decode_ctx_t * ctx );
5427 : int fd_slot_lthash_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5428 : void fd_slot_lthash_decode_archival_unsafe( fd_slot_lthash_t * self, fd_bincode_decode_ctx_t * ctx );
5429 : int fd_slot_lthash_encode_archival( fd_slot_lthash_t const * self, fd_bincode_encode_ctx_t * ctx );
5430 :
5431 : void fd_solana_manifest_new( fd_solana_manifest_t * self );
5432 : int fd_solana_manifest_decode( fd_solana_manifest_t * self, fd_bincode_decode_ctx_t * ctx );
5433 : int fd_solana_manifest_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5434 : void fd_solana_manifest_decode_unsafe( fd_solana_manifest_t * self, fd_bincode_decode_ctx_t * ctx );
5435 : int fd_solana_manifest_decode_offsets( fd_solana_manifest_off_t * self, fd_bincode_decode_ctx_t * ctx );
5436 : int fd_solana_manifest_encode( fd_solana_manifest_t const * self, fd_bincode_encode_ctx_t * ctx );
5437 : void fd_solana_manifest_destroy( fd_solana_manifest_t * self, fd_bincode_destroy_ctx_t * ctx );
5438 : void fd_solana_manifest_walk( void * w, fd_solana_manifest_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5439 : ulong fd_solana_manifest_size( fd_solana_manifest_t const * self );
5440 : ulong fd_solana_manifest_footprint( void );
5441 : ulong fd_solana_manifest_align( void );
5442 :
5443 : void fd_rust_duration_new( fd_rust_duration_t * self );
5444 : int fd_rust_duration_decode( fd_rust_duration_t * self, fd_bincode_decode_ctx_t * ctx );
5445 : int fd_rust_duration_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5446 : void fd_rust_duration_decode_unsafe( fd_rust_duration_t * self, fd_bincode_decode_ctx_t * ctx );
5447 : int fd_rust_duration_decode_offsets( fd_rust_duration_off_t * self, fd_bincode_decode_ctx_t * ctx );
5448 : int fd_rust_duration_encode( fd_rust_duration_t const * self, fd_bincode_encode_ctx_t * ctx );
5449 : void fd_rust_duration_destroy( fd_rust_duration_t * self, fd_bincode_destroy_ctx_t * ctx );
5450 : void fd_rust_duration_walk( void * w, fd_rust_duration_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5451 : ulong fd_rust_duration_size( fd_rust_duration_t const * self );
5452 : ulong fd_rust_duration_footprint( void );
5453 : ulong fd_rust_duration_align( void );
5454 :
5455 : void fd_poh_config_new( fd_poh_config_t * self );
5456 : int fd_poh_config_decode( fd_poh_config_t * self, fd_bincode_decode_ctx_t * ctx );
5457 : int fd_poh_config_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5458 : void fd_poh_config_decode_unsafe( fd_poh_config_t * self, fd_bincode_decode_ctx_t * ctx );
5459 : int fd_poh_config_decode_offsets( fd_poh_config_off_t * self, fd_bincode_decode_ctx_t * ctx );
5460 : int fd_poh_config_encode( fd_poh_config_t const * self, fd_bincode_encode_ctx_t * ctx );
5461 : void fd_poh_config_destroy( fd_poh_config_t * self, fd_bincode_destroy_ctx_t * ctx );
5462 : void fd_poh_config_walk( void * w, fd_poh_config_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5463 : ulong fd_poh_config_size( fd_poh_config_t const * self );
5464 : ulong fd_poh_config_footprint( void );
5465 : ulong fd_poh_config_align( void );
5466 :
5467 : void fd_string_pubkey_pair_new( fd_string_pubkey_pair_t * self );
5468 : int fd_string_pubkey_pair_decode( fd_string_pubkey_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5469 : int fd_string_pubkey_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5470 : void fd_string_pubkey_pair_decode_unsafe( fd_string_pubkey_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5471 : int fd_string_pubkey_pair_decode_offsets( fd_string_pubkey_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5472 : int fd_string_pubkey_pair_encode( fd_string_pubkey_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5473 : void fd_string_pubkey_pair_destroy( fd_string_pubkey_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5474 : void fd_string_pubkey_pair_walk( void * w, fd_string_pubkey_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5475 : ulong fd_string_pubkey_pair_size( fd_string_pubkey_pair_t const * self );
5476 : ulong fd_string_pubkey_pair_footprint( void );
5477 : ulong fd_string_pubkey_pair_align( void );
5478 :
5479 : void fd_pubkey_account_pair_new( fd_pubkey_account_pair_t * self );
5480 : int fd_pubkey_account_pair_decode( fd_pubkey_account_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5481 : int fd_pubkey_account_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5482 : void fd_pubkey_account_pair_decode_unsafe( fd_pubkey_account_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5483 : int fd_pubkey_account_pair_decode_offsets( fd_pubkey_account_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5484 : int fd_pubkey_account_pair_encode( fd_pubkey_account_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5485 : void fd_pubkey_account_pair_destroy( fd_pubkey_account_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5486 : void fd_pubkey_account_pair_walk( void * w, fd_pubkey_account_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5487 : ulong fd_pubkey_account_pair_size( fd_pubkey_account_pair_t const * self );
5488 : ulong fd_pubkey_account_pair_footprint( void );
5489 : ulong fd_pubkey_account_pair_align( void );
5490 :
5491 : void fd_genesis_solana_new( fd_genesis_solana_t * self );
5492 : int fd_genesis_solana_decode( fd_genesis_solana_t * self, fd_bincode_decode_ctx_t * ctx );
5493 : int fd_genesis_solana_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5494 : void fd_genesis_solana_decode_unsafe( fd_genesis_solana_t * self, fd_bincode_decode_ctx_t * ctx );
5495 : int fd_genesis_solana_decode_offsets( fd_genesis_solana_off_t * self, fd_bincode_decode_ctx_t * ctx );
5496 : int fd_genesis_solana_encode( fd_genesis_solana_t const * self, fd_bincode_encode_ctx_t * ctx );
5497 : void fd_genesis_solana_destroy( fd_genesis_solana_t * self, fd_bincode_destroy_ctx_t * ctx );
5498 : void fd_genesis_solana_walk( void * w, fd_genesis_solana_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5499 : ulong fd_genesis_solana_size( fd_genesis_solana_t const * self );
5500 : ulong fd_genesis_solana_footprint( void );
5501 : ulong fd_genesis_solana_align( void );
5502 :
5503 : void fd_sol_sysvar_clock_new( fd_sol_sysvar_clock_t * self );
5504 : int fd_sol_sysvar_clock_decode( fd_sol_sysvar_clock_t * self, fd_bincode_decode_ctx_t * ctx );
5505 : int fd_sol_sysvar_clock_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5506 : void fd_sol_sysvar_clock_decode_unsafe( fd_sol_sysvar_clock_t * self, fd_bincode_decode_ctx_t * ctx );
5507 : int fd_sol_sysvar_clock_decode_offsets( fd_sol_sysvar_clock_off_t * self, fd_bincode_decode_ctx_t * ctx );
5508 : int fd_sol_sysvar_clock_encode( fd_sol_sysvar_clock_t const * self, fd_bincode_encode_ctx_t * ctx );
5509 : void fd_sol_sysvar_clock_destroy( fd_sol_sysvar_clock_t * self, fd_bincode_destroy_ctx_t * ctx );
5510 : void fd_sol_sysvar_clock_walk( void * w, fd_sol_sysvar_clock_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5511 : ulong fd_sol_sysvar_clock_size( fd_sol_sysvar_clock_t const * self );
5512 : ulong fd_sol_sysvar_clock_footprint( void );
5513 : ulong fd_sol_sysvar_clock_align( void );
5514 :
5515 : void fd_sol_sysvar_last_restart_slot_new( fd_sol_sysvar_last_restart_slot_t * self );
5516 : int fd_sol_sysvar_last_restart_slot_decode( fd_sol_sysvar_last_restart_slot_t * self, fd_bincode_decode_ctx_t * ctx );
5517 : int fd_sol_sysvar_last_restart_slot_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5518 : void fd_sol_sysvar_last_restart_slot_decode_unsafe( fd_sol_sysvar_last_restart_slot_t * self, fd_bincode_decode_ctx_t * ctx );
5519 : int fd_sol_sysvar_last_restart_slot_decode_offsets( fd_sol_sysvar_last_restart_slot_off_t * self, fd_bincode_decode_ctx_t * ctx );
5520 : int fd_sol_sysvar_last_restart_slot_encode( fd_sol_sysvar_last_restart_slot_t const * self, fd_bincode_encode_ctx_t * ctx );
5521 : void fd_sol_sysvar_last_restart_slot_destroy( fd_sol_sysvar_last_restart_slot_t * self, fd_bincode_destroy_ctx_t * ctx );
5522 : void fd_sol_sysvar_last_restart_slot_walk( void * w, fd_sol_sysvar_last_restart_slot_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5523 : ulong fd_sol_sysvar_last_restart_slot_size( fd_sol_sysvar_last_restart_slot_t const * self );
5524 : ulong fd_sol_sysvar_last_restart_slot_footprint( void );
5525 : ulong fd_sol_sysvar_last_restart_slot_align( void );
5526 : int fd_sol_sysvar_last_restart_slot_decode_archival( fd_sol_sysvar_last_restart_slot_t * self, fd_bincode_decode_ctx_t * ctx );
5527 : int fd_sol_sysvar_last_restart_slot_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5528 : void fd_sol_sysvar_last_restart_slot_decode_archival_unsafe( fd_sol_sysvar_last_restart_slot_t * self, fd_bincode_decode_ctx_t * ctx );
5529 : int fd_sol_sysvar_last_restart_slot_encode_archival( fd_sol_sysvar_last_restart_slot_t const * self, fd_bincode_encode_ctx_t * ctx );
5530 :
5531 : void fd_vote_lockout_new( fd_vote_lockout_t * self );
5532 : int fd_vote_lockout_decode( fd_vote_lockout_t * self, fd_bincode_decode_ctx_t * ctx );
5533 : int fd_vote_lockout_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5534 : void fd_vote_lockout_decode_unsafe( fd_vote_lockout_t * self, fd_bincode_decode_ctx_t * ctx );
5535 : int fd_vote_lockout_decode_offsets( fd_vote_lockout_off_t * self, fd_bincode_decode_ctx_t * ctx );
5536 : int fd_vote_lockout_encode( fd_vote_lockout_t const * self, fd_bincode_encode_ctx_t * ctx );
5537 : void fd_vote_lockout_destroy( fd_vote_lockout_t * self, fd_bincode_destroy_ctx_t * ctx );
5538 : void fd_vote_lockout_walk( void * w, fd_vote_lockout_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5539 : ulong fd_vote_lockout_size( fd_vote_lockout_t const * self );
5540 : ulong fd_vote_lockout_footprint( void );
5541 : ulong fd_vote_lockout_align( void );
5542 :
5543 : void fd_lockout_offset_new( fd_lockout_offset_t * self );
5544 : int fd_lockout_offset_decode( fd_lockout_offset_t * self, fd_bincode_decode_ctx_t * ctx );
5545 : int fd_lockout_offset_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5546 : void fd_lockout_offset_decode_unsafe( fd_lockout_offset_t * self, fd_bincode_decode_ctx_t * ctx );
5547 : int fd_lockout_offset_decode_offsets( fd_lockout_offset_off_t * self, fd_bincode_decode_ctx_t * ctx );
5548 : int fd_lockout_offset_encode( fd_lockout_offset_t const * self, fd_bincode_encode_ctx_t * ctx );
5549 : void fd_lockout_offset_destroy( fd_lockout_offset_t * self, fd_bincode_destroy_ctx_t * ctx );
5550 : void fd_lockout_offset_walk( void * w, fd_lockout_offset_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5551 : ulong fd_lockout_offset_size( fd_lockout_offset_t const * self );
5552 : ulong fd_lockout_offset_footprint( void );
5553 : ulong fd_lockout_offset_align( void );
5554 :
5555 : void fd_vote_authorized_voter_new( fd_vote_authorized_voter_t * self );
5556 : int fd_vote_authorized_voter_decode( fd_vote_authorized_voter_t * self, fd_bincode_decode_ctx_t * ctx );
5557 : int fd_vote_authorized_voter_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5558 : void fd_vote_authorized_voter_decode_unsafe( fd_vote_authorized_voter_t * self, fd_bincode_decode_ctx_t * ctx );
5559 : int fd_vote_authorized_voter_decode_offsets( fd_vote_authorized_voter_off_t * self, fd_bincode_decode_ctx_t * ctx );
5560 : int fd_vote_authorized_voter_encode( fd_vote_authorized_voter_t const * self, fd_bincode_encode_ctx_t * ctx );
5561 : void fd_vote_authorized_voter_destroy( fd_vote_authorized_voter_t * self, fd_bincode_destroy_ctx_t * ctx );
5562 : void fd_vote_authorized_voter_walk( void * w, fd_vote_authorized_voter_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5563 : ulong fd_vote_authorized_voter_size( fd_vote_authorized_voter_t const * self );
5564 : ulong fd_vote_authorized_voter_footprint( void );
5565 : ulong fd_vote_authorized_voter_align( void );
5566 :
5567 : void fd_vote_prior_voter_new( fd_vote_prior_voter_t * self );
5568 : int fd_vote_prior_voter_decode( fd_vote_prior_voter_t * self, fd_bincode_decode_ctx_t * ctx );
5569 : int fd_vote_prior_voter_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5570 : void fd_vote_prior_voter_decode_unsafe( fd_vote_prior_voter_t * self, fd_bincode_decode_ctx_t * ctx );
5571 : int fd_vote_prior_voter_decode_offsets( fd_vote_prior_voter_off_t * self, fd_bincode_decode_ctx_t * ctx );
5572 : int fd_vote_prior_voter_encode( fd_vote_prior_voter_t const * self, fd_bincode_encode_ctx_t * ctx );
5573 : void fd_vote_prior_voter_destroy( fd_vote_prior_voter_t * self, fd_bincode_destroy_ctx_t * ctx );
5574 : void fd_vote_prior_voter_walk( void * w, fd_vote_prior_voter_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5575 : ulong fd_vote_prior_voter_size( fd_vote_prior_voter_t const * self );
5576 : ulong fd_vote_prior_voter_footprint( void );
5577 : ulong fd_vote_prior_voter_align( void );
5578 :
5579 : void fd_vote_prior_voter_0_23_5_new( fd_vote_prior_voter_0_23_5_t * self );
5580 : int fd_vote_prior_voter_0_23_5_decode( fd_vote_prior_voter_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
5581 : int fd_vote_prior_voter_0_23_5_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5582 : void fd_vote_prior_voter_0_23_5_decode_unsafe( fd_vote_prior_voter_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
5583 : int fd_vote_prior_voter_0_23_5_decode_offsets( fd_vote_prior_voter_0_23_5_off_t * self, fd_bincode_decode_ctx_t * ctx );
5584 : int fd_vote_prior_voter_0_23_5_encode( fd_vote_prior_voter_0_23_5_t const * self, fd_bincode_encode_ctx_t * ctx );
5585 : void fd_vote_prior_voter_0_23_5_destroy( fd_vote_prior_voter_0_23_5_t * self, fd_bincode_destroy_ctx_t * ctx );
5586 : void fd_vote_prior_voter_0_23_5_walk( void * w, fd_vote_prior_voter_0_23_5_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5587 : ulong fd_vote_prior_voter_0_23_5_size( fd_vote_prior_voter_0_23_5_t const * self );
5588 : ulong fd_vote_prior_voter_0_23_5_footprint( void );
5589 : ulong fd_vote_prior_voter_0_23_5_align( void );
5590 :
5591 : void fd_vote_epoch_credits_new( fd_vote_epoch_credits_t * self );
5592 : int fd_vote_epoch_credits_decode( fd_vote_epoch_credits_t * self, fd_bincode_decode_ctx_t * ctx );
5593 : int fd_vote_epoch_credits_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5594 : void fd_vote_epoch_credits_decode_unsafe( fd_vote_epoch_credits_t * self, fd_bincode_decode_ctx_t * ctx );
5595 : int fd_vote_epoch_credits_decode_offsets( fd_vote_epoch_credits_off_t * self, fd_bincode_decode_ctx_t * ctx );
5596 : int fd_vote_epoch_credits_encode( fd_vote_epoch_credits_t const * self, fd_bincode_encode_ctx_t * ctx );
5597 : void fd_vote_epoch_credits_destroy( fd_vote_epoch_credits_t * self, fd_bincode_destroy_ctx_t * ctx );
5598 : void fd_vote_epoch_credits_walk( void * w, fd_vote_epoch_credits_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5599 : ulong fd_vote_epoch_credits_size( fd_vote_epoch_credits_t const * self );
5600 : ulong fd_vote_epoch_credits_footprint( void );
5601 : ulong fd_vote_epoch_credits_align( void );
5602 :
5603 : void fd_vote_block_timestamp_new( fd_vote_block_timestamp_t * self );
5604 : int fd_vote_block_timestamp_decode( fd_vote_block_timestamp_t * self, fd_bincode_decode_ctx_t * ctx );
5605 : int fd_vote_block_timestamp_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5606 : void fd_vote_block_timestamp_decode_unsafe( fd_vote_block_timestamp_t * self, fd_bincode_decode_ctx_t * ctx );
5607 : int fd_vote_block_timestamp_decode_offsets( fd_vote_block_timestamp_off_t * self, fd_bincode_decode_ctx_t * ctx );
5608 : int fd_vote_block_timestamp_encode( fd_vote_block_timestamp_t const * self, fd_bincode_encode_ctx_t * ctx );
5609 : void fd_vote_block_timestamp_destroy( fd_vote_block_timestamp_t * self, fd_bincode_destroy_ctx_t * ctx );
5610 : void fd_vote_block_timestamp_walk( void * w, fd_vote_block_timestamp_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5611 : ulong fd_vote_block_timestamp_size( fd_vote_block_timestamp_t const * self );
5612 : ulong fd_vote_block_timestamp_footprint( void );
5613 : ulong fd_vote_block_timestamp_align( void );
5614 :
5615 : void fd_vote_prior_voters_new( fd_vote_prior_voters_t * self );
5616 : int fd_vote_prior_voters_decode( fd_vote_prior_voters_t * self, fd_bincode_decode_ctx_t * ctx );
5617 : int fd_vote_prior_voters_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5618 : void fd_vote_prior_voters_decode_unsafe( fd_vote_prior_voters_t * self, fd_bincode_decode_ctx_t * ctx );
5619 : int fd_vote_prior_voters_decode_offsets( fd_vote_prior_voters_off_t * self, fd_bincode_decode_ctx_t * ctx );
5620 : int fd_vote_prior_voters_encode( fd_vote_prior_voters_t const * self, fd_bincode_encode_ctx_t * ctx );
5621 : void fd_vote_prior_voters_destroy( fd_vote_prior_voters_t * self, fd_bincode_destroy_ctx_t * ctx );
5622 : void fd_vote_prior_voters_walk( void * w, fd_vote_prior_voters_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5623 : ulong fd_vote_prior_voters_size( fd_vote_prior_voters_t const * self );
5624 : ulong fd_vote_prior_voters_footprint( void );
5625 : ulong fd_vote_prior_voters_align( void );
5626 :
5627 : void fd_vote_prior_voters_0_23_5_new( fd_vote_prior_voters_0_23_5_t * self );
5628 : int fd_vote_prior_voters_0_23_5_decode( fd_vote_prior_voters_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
5629 : int fd_vote_prior_voters_0_23_5_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5630 : void fd_vote_prior_voters_0_23_5_decode_unsafe( fd_vote_prior_voters_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
5631 : int fd_vote_prior_voters_0_23_5_decode_offsets( fd_vote_prior_voters_0_23_5_off_t * self, fd_bincode_decode_ctx_t * ctx );
5632 : int fd_vote_prior_voters_0_23_5_encode( fd_vote_prior_voters_0_23_5_t const * self, fd_bincode_encode_ctx_t * ctx );
5633 : void fd_vote_prior_voters_0_23_5_destroy( fd_vote_prior_voters_0_23_5_t * self, fd_bincode_destroy_ctx_t * ctx );
5634 : void fd_vote_prior_voters_0_23_5_walk( void * w, fd_vote_prior_voters_0_23_5_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5635 : ulong fd_vote_prior_voters_0_23_5_size( fd_vote_prior_voters_0_23_5_t const * self );
5636 : ulong fd_vote_prior_voters_0_23_5_footprint( void );
5637 : ulong fd_vote_prior_voters_0_23_5_align( void );
5638 :
5639 : void fd_landed_vote_new( fd_landed_vote_t * self );
5640 : int fd_landed_vote_decode( fd_landed_vote_t * self, fd_bincode_decode_ctx_t * ctx );
5641 : int fd_landed_vote_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5642 : void fd_landed_vote_decode_unsafe( fd_landed_vote_t * self, fd_bincode_decode_ctx_t * ctx );
5643 : int fd_landed_vote_decode_offsets( fd_landed_vote_off_t * self, fd_bincode_decode_ctx_t * ctx );
5644 : int fd_landed_vote_encode( fd_landed_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
5645 : void fd_landed_vote_destroy( fd_landed_vote_t * self, fd_bincode_destroy_ctx_t * ctx );
5646 : void fd_landed_vote_walk( void * w, fd_landed_vote_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5647 : ulong fd_landed_vote_size( fd_landed_vote_t const * self );
5648 : ulong fd_landed_vote_footprint( void );
5649 : ulong fd_landed_vote_align( void );
5650 :
5651 : void fd_vote_state_0_23_5_new( fd_vote_state_0_23_5_t * self );
5652 : int fd_vote_state_0_23_5_decode( fd_vote_state_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
5653 : int fd_vote_state_0_23_5_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5654 : void fd_vote_state_0_23_5_decode_unsafe( fd_vote_state_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
5655 : int fd_vote_state_0_23_5_decode_offsets( fd_vote_state_0_23_5_off_t * self, fd_bincode_decode_ctx_t * ctx );
5656 : int fd_vote_state_0_23_5_encode( fd_vote_state_0_23_5_t const * self, fd_bincode_encode_ctx_t * ctx );
5657 : void fd_vote_state_0_23_5_destroy( fd_vote_state_0_23_5_t * self, fd_bincode_destroy_ctx_t * ctx );
5658 : void fd_vote_state_0_23_5_walk( void * w, fd_vote_state_0_23_5_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5659 : ulong fd_vote_state_0_23_5_size( fd_vote_state_0_23_5_t const * self );
5660 : ulong fd_vote_state_0_23_5_footprint( void );
5661 : ulong fd_vote_state_0_23_5_align( void );
5662 :
5663 : void fd_vote_authorized_voters_new( fd_vote_authorized_voters_t * self );
5664 : int fd_vote_authorized_voters_decode( fd_vote_authorized_voters_t * self, fd_bincode_decode_ctx_t * ctx );
5665 : int fd_vote_authorized_voters_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5666 : void fd_vote_authorized_voters_decode_unsafe( fd_vote_authorized_voters_t * self, fd_bincode_decode_ctx_t * ctx );
5667 : int fd_vote_authorized_voters_decode_offsets( fd_vote_authorized_voters_off_t * self, fd_bincode_decode_ctx_t * ctx );
5668 : int fd_vote_authorized_voters_encode( fd_vote_authorized_voters_t const * self, fd_bincode_encode_ctx_t * ctx );
5669 : void fd_vote_authorized_voters_destroy( fd_vote_authorized_voters_t * self, fd_bincode_destroy_ctx_t * ctx );
5670 : void fd_vote_authorized_voters_walk( void * w, fd_vote_authorized_voters_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5671 : ulong fd_vote_authorized_voters_size( fd_vote_authorized_voters_t const * self );
5672 : ulong fd_vote_authorized_voters_footprint( void );
5673 : ulong fd_vote_authorized_voters_align( void );
5674 :
5675 : void fd_vote_state_1_14_11_new( fd_vote_state_1_14_11_t * self );
5676 : int fd_vote_state_1_14_11_decode( fd_vote_state_1_14_11_t * self, fd_bincode_decode_ctx_t * ctx );
5677 : int fd_vote_state_1_14_11_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5678 : void fd_vote_state_1_14_11_decode_unsafe( fd_vote_state_1_14_11_t * self, fd_bincode_decode_ctx_t * ctx );
5679 : int fd_vote_state_1_14_11_decode_offsets( fd_vote_state_1_14_11_off_t * self, fd_bincode_decode_ctx_t * ctx );
5680 : int fd_vote_state_1_14_11_encode( fd_vote_state_1_14_11_t const * self, fd_bincode_encode_ctx_t * ctx );
5681 : void fd_vote_state_1_14_11_destroy( fd_vote_state_1_14_11_t * self, fd_bincode_destroy_ctx_t * ctx );
5682 : void fd_vote_state_1_14_11_walk( void * w, fd_vote_state_1_14_11_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5683 : ulong fd_vote_state_1_14_11_size( fd_vote_state_1_14_11_t const * self );
5684 : ulong fd_vote_state_1_14_11_footprint( void );
5685 : ulong fd_vote_state_1_14_11_align( void );
5686 :
5687 : void fd_vote_state_new( fd_vote_state_t * self );
5688 : int fd_vote_state_decode( fd_vote_state_t * self, fd_bincode_decode_ctx_t * ctx );
5689 : int fd_vote_state_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5690 : void fd_vote_state_decode_unsafe( fd_vote_state_t * self, fd_bincode_decode_ctx_t * ctx );
5691 : int fd_vote_state_decode_offsets( fd_vote_state_off_t * self, fd_bincode_decode_ctx_t * ctx );
5692 : int fd_vote_state_encode( fd_vote_state_t const * self, fd_bincode_encode_ctx_t * ctx );
5693 : void fd_vote_state_destroy( fd_vote_state_t * self, fd_bincode_destroy_ctx_t * ctx );
5694 : void fd_vote_state_walk( void * w, fd_vote_state_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5695 : ulong fd_vote_state_size( fd_vote_state_t const * self );
5696 : ulong fd_vote_state_footprint( void );
5697 : ulong fd_vote_state_align( void );
5698 :
5699 : void fd_vote_state_versioned_new_disc( fd_vote_state_versioned_t * self, uint discriminant );
5700 : void fd_vote_state_versioned_new( fd_vote_state_versioned_t * self );
5701 : int fd_vote_state_versioned_decode( fd_vote_state_versioned_t * self, fd_bincode_decode_ctx_t * ctx );
5702 : int fd_vote_state_versioned_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5703 : void fd_vote_state_versioned_decode_unsafe( fd_vote_state_versioned_t * self, fd_bincode_decode_ctx_t * ctx );
5704 : int fd_vote_state_versioned_decode_offsets( fd_vote_state_versioned_off_t * self, fd_bincode_decode_ctx_t * ctx );
5705 : int fd_vote_state_versioned_encode( fd_vote_state_versioned_t const * self, fd_bincode_encode_ctx_t * ctx );
5706 : void fd_vote_state_versioned_destroy( fd_vote_state_versioned_t * self, fd_bincode_destroy_ctx_t * ctx );
5707 : void fd_vote_state_versioned_walk( void * w, fd_vote_state_versioned_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5708 : ulong fd_vote_state_versioned_size( fd_vote_state_versioned_t const * self );
5709 : ulong fd_vote_state_versioned_footprint( void );
5710 : ulong fd_vote_state_versioned_align( void );
5711 :
5712 : FD_FN_PURE uchar fd_vote_state_versioned_is_v0_23_5( fd_vote_state_versioned_t const * self );
5713 : FD_FN_PURE uchar fd_vote_state_versioned_is_v1_14_11( fd_vote_state_versioned_t const * self );
5714 : FD_FN_PURE uchar fd_vote_state_versioned_is_current( fd_vote_state_versioned_t const * self );
5715 : enum {
5716 : fd_vote_state_versioned_enum_v0_23_5 = 0,
5717 : fd_vote_state_versioned_enum_v1_14_11 = 1,
5718 : fd_vote_state_versioned_enum_current = 2,
5719 : };
5720 : void fd_vote_state_update_new( fd_vote_state_update_t * self );
5721 : int fd_vote_state_update_decode( fd_vote_state_update_t * self, fd_bincode_decode_ctx_t * ctx );
5722 : int fd_vote_state_update_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5723 : void fd_vote_state_update_decode_unsafe( fd_vote_state_update_t * self, fd_bincode_decode_ctx_t * ctx );
5724 : int fd_vote_state_update_decode_offsets( fd_vote_state_update_off_t * self, fd_bincode_decode_ctx_t * ctx );
5725 : int fd_vote_state_update_encode( fd_vote_state_update_t const * self, fd_bincode_encode_ctx_t * ctx );
5726 : void fd_vote_state_update_destroy( fd_vote_state_update_t * self, fd_bincode_destroy_ctx_t * ctx );
5727 : void fd_vote_state_update_walk( void * w, fd_vote_state_update_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5728 : ulong fd_vote_state_update_size( fd_vote_state_update_t const * self );
5729 : ulong fd_vote_state_update_footprint( void );
5730 : ulong fd_vote_state_update_align( void );
5731 :
5732 : void fd_compact_vote_state_update_new( fd_compact_vote_state_update_t * self );
5733 : int fd_compact_vote_state_update_decode( fd_compact_vote_state_update_t * self, fd_bincode_decode_ctx_t * ctx );
5734 : int fd_compact_vote_state_update_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5735 : void fd_compact_vote_state_update_decode_unsafe( fd_compact_vote_state_update_t * self, fd_bincode_decode_ctx_t * ctx );
5736 : int fd_compact_vote_state_update_decode_offsets( fd_compact_vote_state_update_off_t * self, fd_bincode_decode_ctx_t * ctx );
5737 : int fd_compact_vote_state_update_encode( fd_compact_vote_state_update_t const * self, fd_bincode_encode_ctx_t * ctx );
5738 : void fd_compact_vote_state_update_destroy( fd_compact_vote_state_update_t * self, fd_bincode_destroy_ctx_t * ctx );
5739 : void fd_compact_vote_state_update_walk( void * w, fd_compact_vote_state_update_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5740 : ulong fd_compact_vote_state_update_size( fd_compact_vote_state_update_t const * self );
5741 : ulong fd_compact_vote_state_update_footprint( void );
5742 : ulong fd_compact_vote_state_update_align( void );
5743 :
5744 : void fd_compact_vote_state_update_switch_new( fd_compact_vote_state_update_switch_t * self );
5745 : int fd_compact_vote_state_update_switch_decode( fd_compact_vote_state_update_switch_t * self, fd_bincode_decode_ctx_t * ctx );
5746 : int fd_compact_vote_state_update_switch_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5747 : void fd_compact_vote_state_update_switch_decode_unsafe( fd_compact_vote_state_update_switch_t * self, fd_bincode_decode_ctx_t * ctx );
5748 : int fd_compact_vote_state_update_switch_decode_offsets( fd_compact_vote_state_update_switch_off_t * self, fd_bincode_decode_ctx_t * ctx );
5749 : int fd_compact_vote_state_update_switch_encode( fd_compact_vote_state_update_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
5750 : void fd_compact_vote_state_update_switch_destroy( fd_compact_vote_state_update_switch_t * self, fd_bincode_destroy_ctx_t * ctx );
5751 : void fd_compact_vote_state_update_switch_walk( void * w, fd_compact_vote_state_update_switch_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5752 : ulong fd_compact_vote_state_update_switch_size( fd_compact_vote_state_update_switch_t const * self );
5753 : ulong fd_compact_vote_state_update_switch_footprint( void );
5754 : ulong fd_compact_vote_state_update_switch_align( void );
5755 :
5756 : void fd_compact_tower_sync_new( fd_compact_tower_sync_t * self );
5757 : int fd_compact_tower_sync_decode( fd_compact_tower_sync_t * self, fd_bincode_decode_ctx_t * ctx );
5758 : int fd_compact_tower_sync_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5759 : void fd_compact_tower_sync_decode_unsafe( fd_compact_tower_sync_t * self, fd_bincode_decode_ctx_t * ctx );
5760 : int fd_compact_tower_sync_decode_offsets( fd_compact_tower_sync_off_t * self, fd_bincode_decode_ctx_t * ctx );
5761 : int fd_compact_tower_sync_encode( fd_compact_tower_sync_t const * self, fd_bincode_encode_ctx_t * ctx );
5762 : void fd_compact_tower_sync_destroy( fd_compact_tower_sync_t * self, fd_bincode_destroy_ctx_t * ctx );
5763 : void fd_compact_tower_sync_walk( void * w, fd_compact_tower_sync_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5764 : ulong fd_compact_tower_sync_size( fd_compact_tower_sync_t const * self );
5765 : ulong fd_compact_tower_sync_footprint( void );
5766 : ulong fd_compact_tower_sync_align( void );
5767 :
5768 : void fd_tower_sync_new( fd_tower_sync_t * self );
5769 : int fd_tower_sync_decode( fd_tower_sync_t * self, fd_bincode_decode_ctx_t * ctx );
5770 : int fd_tower_sync_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5771 : void fd_tower_sync_decode_unsafe( fd_tower_sync_t * self, fd_bincode_decode_ctx_t * ctx );
5772 : int fd_tower_sync_decode_offsets( fd_tower_sync_off_t * self, fd_bincode_decode_ctx_t * ctx );
5773 : int fd_tower_sync_encode( fd_tower_sync_t const * self, fd_bincode_encode_ctx_t * ctx );
5774 : void fd_tower_sync_destroy( fd_tower_sync_t * self, fd_bincode_destroy_ctx_t * ctx );
5775 : void fd_tower_sync_walk( void * w, fd_tower_sync_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5776 : ulong fd_tower_sync_size( fd_tower_sync_t const * self );
5777 : ulong fd_tower_sync_footprint( void );
5778 : ulong fd_tower_sync_align( void );
5779 :
5780 : void fd_tower_sync_switch_new( fd_tower_sync_switch_t * self );
5781 : int fd_tower_sync_switch_decode( fd_tower_sync_switch_t * self, fd_bincode_decode_ctx_t * ctx );
5782 : int fd_tower_sync_switch_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5783 : void fd_tower_sync_switch_decode_unsafe( fd_tower_sync_switch_t * self, fd_bincode_decode_ctx_t * ctx );
5784 : int fd_tower_sync_switch_decode_offsets( fd_tower_sync_switch_off_t * self, fd_bincode_decode_ctx_t * ctx );
5785 : int fd_tower_sync_switch_encode( fd_tower_sync_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
5786 : void fd_tower_sync_switch_destroy( fd_tower_sync_switch_t * self, fd_bincode_destroy_ctx_t * ctx );
5787 : void fd_tower_sync_switch_walk( void * w, fd_tower_sync_switch_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5788 : ulong fd_tower_sync_switch_size( fd_tower_sync_switch_t const * self );
5789 : ulong fd_tower_sync_switch_footprint( void );
5790 : ulong fd_tower_sync_switch_align( void );
5791 :
5792 : void fd_slot_history_inner_new( fd_slot_history_inner_t * self );
5793 : int fd_slot_history_inner_decode( fd_slot_history_inner_t * self, fd_bincode_decode_ctx_t * ctx );
5794 : int fd_slot_history_inner_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5795 : void fd_slot_history_inner_decode_unsafe( fd_slot_history_inner_t * self, fd_bincode_decode_ctx_t * ctx );
5796 : int fd_slot_history_inner_decode_offsets( fd_slot_history_inner_off_t * self, fd_bincode_decode_ctx_t * ctx );
5797 : int fd_slot_history_inner_encode( fd_slot_history_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
5798 : void fd_slot_history_inner_destroy( fd_slot_history_inner_t * self, fd_bincode_destroy_ctx_t * ctx );
5799 : void fd_slot_history_inner_walk( void * w, fd_slot_history_inner_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5800 : ulong fd_slot_history_inner_size( fd_slot_history_inner_t const * self );
5801 : ulong fd_slot_history_inner_footprint( void );
5802 : ulong fd_slot_history_inner_align( void );
5803 :
5804 : void fd_slot_history_bitvec_new( fd_slot_history_bitvec_t * self );
5805 : int fd_slot_history_bitvec_decode( fd_slot_history_bitvec_t * self, fd_bincode_decode_ctx_t * ctx );
5806 : int fd_slot_history_bitvec_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5807 : void fd_slot_history_bitvec_decode_unsafe( fd_slot_history_bitvec_t * self, fd_bincode_decode_ctx_t * ctx );
5808 : int fd_slot_history_bitvec_decode_offsets( fd_slot_history_bitvec_off_t * self, fd_bincode_decode_ctx_t * ctx );
5809 : int fd_slot_history_bitvec_encode( fd_slot_history_bitvec_t const * self, fd_bincode_encode_ctx_t * ctx );
5810 : void fd_slot_history_bitvec_destroy( fd_slot_history_bitvec_t * self, fd_bincode_destroy_ctx_t * ctx );
5811 : void fd_slot_history_bitvec_walk( void * w, fd_slot_history_bitvec_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5812 : ulong fd_slot_history_bitvec_size( fd_slot_history_bitvec_t const * self );
5813 : ulong fd_slot_history_bitvec_footprint( void );
5814 : ulong fd_slot_history_bitvec_align( void );
5815 :
5816 : void fd_slot_history_new( fd_slot_history_t * self );
5817 : int fd_slot_history_decode( fd_slot_history_t * self, fd_bincode_decode_ctx_t * ctx );
5818 : int fd_slot_history_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5819 : void fd_slot_history_decode_unsafe( fd_slot_history_t * self, fd_bincode_decode_ctx_t * ctx );
5820 : int fd_slot_history_decode_offsets( fd_slot_history_off_t * self, fd_bincode_decode_ctx_t * ctx );
5821 : int fd_slot_history_encode( fd_slot_history_t const * self, fd_bincode_encode_ctx_t * ctx );
5822 : void fd_slot_history_destroy( fd_slot_history_t * self, fd_bincode_destroy_ctx_t * ctx );
5823 : void fd_slot_history_walk( void * w, fd_slot_history_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5824 : ulong fd_slot_history_size( fd_slot_history_t const * self );
5825 : ulong fd_slot_history_footprint( void );
5826 : ulong fd_slot_history_align( void );
5827 :
5828 : void fd_slot_hash_new( fd_slot_hash_t * self );
5829 : int fd_slot_hash_decode( fd_slot_hash_t * self, fd_bincode_decode_ctx_t * ctx );
5830 : int fd_slot_hash_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5831 : void fd_slot_hash_decode_unsafe( fd_slot_hash_t * self, fd_bincode_decode_ctx_t * ctx );
5832 : int fd_slot_hash_decode_offsets( fd_slot_hash_off_t * self, fd_bincode_decode_ctx_t * ctx );
5833 : int fd_slot_hash_encode( fd_slot_hash_t const * self, fd_bincode_encode_ctx_t * ctx );
5834 : void fd_slot_hash_destroy( fd_slot_hash_t * self, fd_bincode_destroy_ctx_t * ctx );
5835 : void fd_slot_hash_walk( void * w, fd_slot_hash_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5836 : ulong fd_slot_hash_size( fd_slot_hash_t const * self );
5837 : ulong fd_slot_hash_footprint( void );
5838 : ulong fd_slot_hash_align( void );
5839 :
5840 : void fd_slot_hashes_new( fd_slot_hashes_t * self );
5841 : int fd_slot_hashes_decode( fd_slot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
5842 : int fd_slot_hashes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5843 : void fd_slot_hashes_decode_unsafe( fd_slot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
5844 : int fd_slot_hashes_decode_offsets( fd_slot_hashes_off_t * self, fd_bincode_decode_ctx_t * ctx );
5845 : int fd_slot_hashes_encode( fd_slot_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
5846 : void fd_slot_hashes_destroy( fd_slot_hashes_t * self, fd_bincode_destroy_ctx_t * ctx );
5847 : void fd_slot_hashes_walk( void * w, fd_slot_hashes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5848 : ulong fd_slot_hashes_size( fd_slot_hashes_t const * self );
5849 : ulong fd_slot_hashes_footprint( void );
5850 : ulong fd_slot_hashes_align( void );
5851 :
5852 : void fd_block_block_hash_entry_new( fd_block_block_hash_entry_t * self );
5853 : int fd_block_block_hash_entry_decode( fd_block_block_hash_entry_t * self, fd_bincode_decode_ctx_t * ctx );
5854 : int fd_block_block_hash_entry_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5855 : void fd_block_block_hash_entry_decode_unsafe( fd_block_block_hash_entry_t * self, fd_bincode_decode_ctx_t * ctx );
5856 : int fd_block_block_hash_entry_decode_offsets( fd_block_block_hash_entry_off_t * self, fd_bincode_decode_ctx_t * ctx );
5857 : int fd_block_block_hash_entry_encode( fd_block_block_hash_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
5858 : void fd_block_block_hash_entry_destroy( fd_block_block_hash_entry_t * self, fd_bincode_destroy_ctx_t * ctx );
5859 : void fd_block_block_hash_entry_walk( void * w, fd_block_block_hash_entry_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5860 : ulong fd_block_block_hash_entry_size( fd_block_block_hash_entry_t const * self );
5861 : ulong fd_block_block_hash_entry_footprint( void );
5862 : ulong fd_block_block_hash_entry_align( void );
5863 : int fd_block_block_hash_entry_decode_archival( fd_block_block_hash_entry_t * self, fd_bincode_decode_ctx_t * ctx );
5864 : int fd_block_block_hash_entry_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5865 : void fd_block_block_hash_entry_decode_archival_unsafe( fd_block_block_hash_entry_t * self, fd_bincode_decode_ctx_t * ctx );
5866 : int fd_block_block_hash_entry_encode_archival( fd_block_block_hash_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
5867 :
5868 : void fd_recent_block_hashes_new( fd_recent_block_hashes_t * self );
5869 : int fd_recent_block_hashes_decode( fd_recent_block_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
5870 : int fd_recent_block_hashes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5871 : void fd_recent_block_hashes_decode_unsafe( fd_recent_block_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
5872 : int fd_recent_block_hashes_decode_offsets( fd_recent_block_hashes_off_t * self, fd_bincode_decode_ctx_t * ctx );
5873 : int fd_recent_block_hashes_encode( fd_recent_block_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
5874 : void fd_recent_block_hashes_destroy( fd_recent_block_hashes_t * self, fd_bincode_destroy_ctx_t * ctx );
5875 : void fd_recent_block_hashes_walk( void * w, fd_recent_block_hashes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5876 : ulong fd_recent_block_hashes_size( fd_recent_block_hashes_t const * self );
5877 : ulong fd_recent_block_hashes_footprint( void );
5878 : ulong fd_recent_block_hashes_align( void );
5879 : int fd_recent_block_hashes_decode_archival( fd_recent_block_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
5880 : int fd_recent_block_hashes_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5881 : void fd_recent_block_hashes_decode_archival_unsafe( fd_recent_block_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
5882 : int fd_recent_block_hashes_encode_archival( fd_recent_block_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
5883 :
5884 : void fd_slot_meta_new( fd_slot_meta_t * self );
5885 : int fd_slot_meta_decode( fd_slot_meta_t * self, fd_bincode_decode_ctx_t * ctx );
5886 : int fd_slot_meta_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5887 : void fd_slot_meta_decode_unsafe( fd_slot_meta_t * self, fd_bincode_decode_ctx_t * ctx );
5888 : int fd_slot_meta_decode_offsets( fd_slot_meta_off_t * self, fd_bincode_decode_ctx_t * ctx );
5889 : int fd_slot_meta_encode( fd_slot_meta_t const * self, fd_bincode_encode_ctx_t * ctx );
5890 : void fd_slot_meta_destroy( fd_slot_meta_t * self, fd_bincode_destroy_ctx_t * ctx );
5891 : void fd_slot_meta_walk( void * w, fd_slot_meta_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5892 : ulong fd_slot_meta_size( fd_slot_meta_t const * self );
5893 : ulong fd_slot_meta_footprint( void );
5894 : ulong fd_slot_meta_align( void );
5895 :
5896 : void fd_clock_timestamp_vote_new( fd_clock_timestamp_vote_t * self );
5897 : int fd_clock_timestamp_vote_decode( fd_clock_timestamp_vote_t * self, fd_bincode_decode_ctx_t * ctx );
5898 : int fd_clock_timestamp_vote_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5899 : void fd_clock_timestamp_vote_decode_unsafe( fd_clock_timestamp_vote_t * self, fd_bincode_decode_ctx_t * ctx );
5900 : int fd_clock_timestamp_vote_decode_offsets( fd_clock_timestamp_vote_off_t * self, fd_bincode_decode_ctx_t * ctx );
5901 : int fd_clock_timestamp_vote_encode( fd_clock_timestamp_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
5902 : void fd_clock_timestamp_vote_destroy( fd_clock_timestamp_vote_t * self, fd_bincode_destroy_ctx_t * ctx );
5903 : void fd_clock_timestamp_vote_walk( void * w, fd_clock_timestamp_vote_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5904 : ulong fd_clock_timestamp_vote_size( fd_clock_timestamp_vote_t const * self );
5905 : ulong fd_clock_timestamp_vote_footprint( void );
5906 : ulong fd_clock_timestamp_vote_align( void );
5907 : int fd_clock_timestamp_vote_decode_archival( fd_clock_timestamp_vote_t * self, fd_bincode_decode_ctx_t * ctx );
5908 : int fd_clock_timestamp_vote_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5909 : void fd_clock_timestamp_vote_decode_archival_unsafe( fd_clock_timestamp_vote_t * self, fd_bincode_decode_ctx_t * ctx );
5910 : int fd_clock_timestamp_vote_encode_archival( fd_clock_timestamp_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
5911 :
5912 : void fd_clock_timestamp_votes_new( fd_clock_timestamp_votes_t * self );
5913 : int fd_clock_timestamp_votes_decode( fd_clock_timestamp_votes_t * self, fd_bincode_decode_ctx_t * ctx );
5914 : int fd_clock_timestamp_votes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5915 : void fd_clock_timestamp_votes_decode_unsafe( fd_clock_timestamp_votes_t * self, fd_bincode_decode_ctx_t * ctx );
5916 : int fd_clock_timestamp_votes_decode_offsets( fd_clock_timestamp_votes_off_t * self, fd_bincode_decode_ctx_t * ctx );
5917 : int fd_clock_timestamp_votes_encode( fd_clock_timestamp_votes_t const * self, fd_bincode_encode_ctx_t * ctx );
5918 : void fd_clock_timestamp_votes_destroy( fd_clock_timestamp_votes_t * self, fd_bincode_destroy_ctx_t * ctx );
5919 : void fd_clock_timestamp_votes_walk( void * w, fd_clock_timestamp_votes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5920 : ulong fd_clock_timestamp_votes_size( fd_clock_timestamp_votes_t const * self );
5921 : ulong fd_clock_timestamp_votes_footprint( void );
5922 : ulong fd_clock_timestamp_votes_align( void );
5923 : int fd_clock_timestamp_votes_decode_archival( fd_clock_timestamp_votes_t * self, fd_bincode_decode_ctx_t * ctx );
5924 : int fd_clock_timestamp_votes_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
5925 : void fd_clock_timestamp_votes_decode_archival_unsafe( fd_clock_timestamp_votes_t * self, fd_bincode_decode_ctx_t * ctx );
5926 : int fd_clock_timestamp_votes_encode_archival( fd_clock_timestamp_votes_t const * self, fd_bincode_encode_ctx_t * ctx );
5927 :
5928 : void fd_sysvar_fees_new( fd_sysvar_fees_t * self );
5929 : int fd_sysvar_fees_decode( fd_sysvar_fees_t * self, fd_bincode_decode_ctx_t * ctx );
5930 : int fd_sysvar_fees_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5931 : void fd_sysvar_fees_decode_unsafe( fd_sysvar_fees_t * self, fd_bincode_decode_ctx_t * ctx );
5932 : int fd_sysvar_fees_decode_offsets( fd_sysvar_fees_off_t * self, fd_bincode_decode_ctx_t * ctx );
5933 : int fd_sysvar_fees_encode( fd_sysvar_fees_t const * self, fd_bincode_encode_ctx_t * ctx );
5934 : void fd_sysvar_fees_destroy( fd_sysvar_fees_t * self, fd_bincode_destroy_ctx_t * ctx );
5935 : void fd_sysvar_fees_walk( void * w, fd_sysvar_fees_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5936 : ulong fd_sysvar_fees_size( fd_sysvar_fees_t const * self );
5937 : ulong fd_sysvar_fees_footprint( void );
5938 : ulong fd_sysvar_fees_align( void );
5939 :
5940 : void fd_sysvar_epoch_rewards_new( fd_sysvar_epoch_rewards_t * self );
5941 : int fd_sysvar_epoch_rewards_decode( fd_sysvar_epoch_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
5942 : int fd_sysvar_epoch_rewards_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5943 : void fd_sysvar_epoch_rewards_decode_unsafe( fd_sysvar_epoch_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
5944 : int fd_sysvar_epoch_rewards_decode_offsets( fd_sysvar_epoch_rewards_off_t * self, fd_bincode_decode_ctx_t * ctx );
5945 : int fd_sysvar_epoch_rewards_encode( fd_sysvar_epoch_rewards_t const * self, fd_bincode_encode_ctx_t * ctx );
5946 : void fd_sysvar_epoch_rewards_destroy( fd_sysvar_epoch_rewards_t * self, fd_bincode_destroy_ctx_t * ctx );
5947 : void fd_sysvar_epoch_rewards_walk( void * w, fd_sysvar_epoch_rewards_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5948 : ulong fd_sysvar_epoch_rewards_size( fd_sysvar_epoch_rewards_t const * self );
5949 : ulong fd_sysvar_epoch_rewards_footprint( void );
5950 : ulong fd_sysvar_epoch_rewards_align( void );
5951 :
5952 : void fd_config_keys_pair_new( fd_config_keys_pair_t * self );
5953 : int fd_config_keys_pair_decode( fd_config_keys_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5954 : int fd_config_keys_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5955 : void fd_config_keys_pair_decode_unsafe( fd_config_keys_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5956 : int fd_config_keys_pair_decode_offsets( fd_config_keys_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
5957 : int fd_config_keys_pair_encode( fd_config_keys_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5958 : void fd_config_keys_pair_destroy( fd_config_keys_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
5959 : void fd_config_keys_pair_walk( void * w, fd_config_keys_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5960 : ulong fd_config_keys_pair_size( fd_config_keys_pair_t const * self );
5961 : ulong fd_config_keys_pair_footprint( void );
5962 : ulong fd_config_keys_pair_align( void );
5963 :
5964 : void fd_stake_config_new( fd_stake_config_t * self );
5965 : int fd_stake_config_decode( fd_stake_config_t * self, fd_bincode_decode_ctx_t * ctx );
5966 : int fd_stake_config_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5967 : void fd_stake_config_decode_unsafe( fd_stake_config_t * self, fd_bincode_decode_ctx_t * ctx );
5968 : int fd_stake_config_decode_offsets( fd_stake_config_off_t * self, fd_bincode_decode_ctx_t * ctx );
5969 : int fd_stake_config_encode( fd_stake_config_t const * self, fd_bincode_encode_ctx_t * ctx );
5970 : void fd_stake_config_destroy( fd_stake_config_t * self, fd_bincode_destroy_ctx_t * ctx );
5971 : void fd_stake_config_walk( void * w, fd_stake_config_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5972 : ulong fd_stake_config_size( fd_stake_config_t const * self );
5973 : ulong fd_stake_config_footprint( void );
5974 : ulong fd_stake_config_align( void );
5975 :
5976 : void fd_feature_entry_new( fd_feature_entry_t * self );
5977 : int fd_feature_entry_decode( fd_feature_entry_t * self, fd_bincode_decode_ctx_t * ctx );
5978 : int fd_feature_entry_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5979 : void fd_feature_entry_decode_unsafe( fd_feature_entry_t * self, fd_bincode_decode_ctx_t * ctx );
5980 : int fd_feature_entry_decode_offsets( fd_feature_entry_off_t * self, fd_bincode_decode_ctx_t * ctx );
5981 : int fd_feature_entry_encode( fd_feature_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
5982 : void fd_feature_entry_destroy( fd_feature_entry_t * self, fd_bincode_destroy_ctx_t * ctx );
5983 : void fd_feature_entry_walk( void * w, fd_feature_entry_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5984 : ulong fd_feature_entry_size( fd_feature_entry_t const * self );
5985 : ulong fd_feature_entry_footprint( void );
5986 : ulong fd_feature_entry_align( void );
5987 :
5988 : void fd_firedancer_bank_new( fd_firedancer_bank_t * self );
5989 : int fd_firedancer_bank_decode( fd_firedancer_bank_t * self, fd_bincode_decode_ctx_t * ctx );
5990 : int fd_firedancer_bank_decode_preflight( fd_bincode_decode_ctx_t * ctx );
5991 : void fd_firedancer_bank_decode_unsafe( fd_firedancer_bank_t * self, fd_bincode_decode_ctx_t * ctx );
5992 : int fd_firedancer_bank_decode_offsets( fd_firedancer_bank_off_t * self, fd_bincode_decode_ctx_t * ctx );
5993 : int fd_firedancer_bank_encode( fd_firedancer_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
5994 : void fd_firedancer_bank_destroy( fd_firedancer_bank_t * self, fd_bincode_destroy_ctx_t * ctx );
5995 : void fd_firedancer_bank_walk( void * w, fd_firedancer_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5996 : ulong fd_firedancer_bank_size( fd_firedancer_bank_t const * self );
5997 : ulong fd_firedancer_bank_footprint( void );
5998 : ulong fd_firedancer_bank_align( void );
5999 :
6000 : void fd_cluster_type_new_disc( fd_cluster_type_t * self, uint discriminant );
6001 : void fd_cluster_type_new( fd_cluster_type_t * self );
6002 : int fd_cluster_type_decode( fd_cluster_type_t * self, fd_bincode_decode_ctx_t * ctx );
6003 : int fd_cluster_type_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6004 : void fd_cluster_type_decode_unsafe( fd_cluster_type_t * self, fd_bincode_decode_ctx_t * ctx );
6005 : int fd_cluster_type_encode( fd_cluster_type_t const * self, fd_bincode_encode_ctx_t * ctx );
6006 : void fd_cluster_type_destroy( fd_cluster_type_t * self, fd_bincode_destroy_ctx_t * ctx );
6007 : void fd_cluster_type_walk( void * w, fd_cluster_type_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6008 : ulong fd_cluster_type_size( fd_cluster_type_t const * self );
6009 : ulong fd_cluster_type_footprint( void );
6010 : ulong fd_cluster_type_align( void );
6011 :
6012 : FD_FN_PURE uchar fd_cluster_type_is_Testnet( fd_cluster_type_t const * self );
6013 : FD_FN_PURE uchar fd_cluster_type_is_MainnetBeta( fd_cluster_type_t const * self );
6014 : FD_FN_PURE uchar fd_cluster_type_is_Devnet( fd_cluster_type_t const * self );
6015 : FD_FN_PURE uchar fd_cluster_type_is_Development( fd_cluster_type_t const * self );
6016 : enum {
6017 : fd_cluster_type_enum_Testnet = 0,
6018 : fd_cluster_type_enum_MainnetBeta = 1,
6019 : fd_cluster_type_enum_Devnet = 2,
6020 : fd_cluster_type_enum_Development = 3,
6021 : };
6022 : void fd_epoch_bank_new( fd_epoch_bank_t * self );
6023 : int fd_epoch_bank_decode( fd_epoch_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6024 : int fd_epoch_bank_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6025 : void fd_epoch_bank_decode_unsafe( fd_epoch_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6026 : int fd_epoch_bank_decode_offsets( fd_epoch_bank_off_t * self, fd_bincode_decode_ctx_t * ctx );
6027 : int fd_epoch_bank_encode( fd_epoch_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
6028 : void fd_epoch_bank_destroy( fd_epoch_bank_t * self, fd_bincode_destroy_ctx_t * ctx );
6029 : void fd_epoch_bank_walk( void * w, fd_epoch_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6030 : ulong fd_epoch_bank_size( fd_epoch_bank_t const * self );
6031 : ulong fd_epoch_bank_footprint( void );
6032 : ulong fd_epoch_bank_align( void );
6033 : int fd_epoch_bank_decode_archival( fd_epoch_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6034 : int fd_epoch_bank_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
6035 : void fd_epoch_bank_decode_archival_unsafe( fd_epoch_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6036 : int fd_epoch_bank_encode_archival( fd_epoch_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
6037 :
6038 : void fd_slot_bank_new( fd_slot_bank_t * self );
6039 : int fd_slot_bank_decode( fd_slot_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6040 : int fd_slot_bank_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6041 : void fd_slot_bank_decode_unsafe( fd_slot_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6042 : int fd_slot_bank_decode_offsets( fd_slot_bank_off_t * self, fd_bincode_decode_ctx_t * ctx );
6043 : int fd_slot_bank_encode( fd_slot_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
6044 : void fd_slot_bank_destroy( fd_slot_bank_t * self, fd_bincode_destroy_ctx_t * ctx );
6045 : void fd_slot_bank_walk( void * w, fd_slot_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6046 : ulong fd_slot_bank_size( fd_slot_bank_t const * self );
6047 : ulong fd_slot_bank_footprint( void );
6048 : ulong fd_slot_bank_align( void );
6049 : int fd_slot_bank_decode_archival( fd_slot_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6050 : int fd_slot_bank_decode_archival_preflight( fd_bincode_decode_ctx_t * ctx );
6051 : void fd_slot_bank_decode_archival_unsafe( fd_slot_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6052 : int fd_slot_bank_encode_archival( fd_slot_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
6053 :
6054 : void fd_prev_epoch_inflation_rewards_new( fd_prev_epoch_inflation_rewards_t * self );
6055 : int fd_prev_epoch_inflation_rewards_decode( fd_prev_epoch_inflation_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
6056 : int fd_prev_epoch_inflation_rewards_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6057 : void fd_prev_epoch_inflation_rewards_decode_unsafe( fd_prev_epoch_inflation_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
6058 : int fd_prev_epoch_inflation_rewards_decode_offsets( fd_prev_epoch_inflation_rewards_off_t * self, fd_bincode_decode_ctx_t * ctx );
6059 : int fd_prev_epoch_inflation_rewards_encode( fd_prev_epoch_inflation_rewards_t const * self, fd_bincode_encode_ctx_t * ctx );
6060 : void fd_prev_epoch_inflation_rewards_destroy( fd_prev_epoch_inflation_rewards_t * self, fd_bincode_destroy_ctx_t * ctx );
6061 : void fd_prev_epoch_inflation_rewards_walk( void * w, fd_prev_epoch_inflation_rewards_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6062 : ulong fd_prev_epoch_inflation_rewards_size( fd_prev_epoch_inflation_rewards_t const * self );
6063 : ulong fd_prev_epoch_inflation_rewards_footprint( void );
6064 : ulong fd_prev_epoch_inflation_rewards_align( void );
6065 :
6066 : void fd_vote_new( fd_vote_t * self );
6067 : int fd_vote_decode( fd_vote_t * self, fd_bincode_decode_ctx_t * ctx );
6068 : int fd_vote_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6069 : void fd_vote_decode_unsafe( fd_vote_t * self, fd_bincode_decode_ctx_t * ctx );
6070 : int fd_vote_decode_offsets( fd_vote_off_t * self, fd_bincode_decode_ctx_t * ctx );
6071 : int fd_vote_encode( fd_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
6072 : void fd_vote_destroy( fd_vote_t * self, fd_bincode_destroy_ctx_t * ctx );
6073 : void fd_vote_walk( void * w, fd_vote_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6074 : ulong fd_vote_size( fd_vote_t const * self );
6075 : ulong fd_vote_footprint( void );
6076 : ulong fd_vote_align( void );
6077 :
6078 : void fd_vote_init_new( fd_vote_init_t * self );
6079 : int fd_vote_init_decode( fd_vote_init_t * self, fd_bincode_decode_ctx_t * ctx );
6080 : int fd_vote_init_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6081 : void fd_vote_init_decode_unsafe( fd_vote_init_t * self, fd_bincode_decode_ctx_t * ctx );
6082 : int fd_vote_init_decode_offsets( fd_vote_init_off_t * self, fd_bincode_decode_ctx_t * ctx );
6083 : int fd_vote_init_encode( fd_vote_init_t const * self, fd_bincode_encode_ctx_t * ctx );
6084 : void fd_vote_init_destroy( fd_vote_init_t * self, fd_bincode_destroy_ctx_t * ctx );
6085 : void fd_vote_init_walk( void * w, fd_vote_init_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6086 : ulong fd_vote_init_size( fd_vote_init_t const * self );
6087 : ulong fd_vote_init_footprint( void );
6088 : ulong fd_vote_init_align( void );
6089 :
6090 : void fd_vote_authorize_new_disc( fd_vote_authorize_t * self, uint discriminant );
6091 : void fd_vote_authorize_new( fd_vote_authorize_t * self );
6092 : int fd_vote_authorize_decode( fd_vote_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
6093 : int fd_vote_authorize_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6094 : void fd_vote_authorize_decode_unsafe( fd_vote_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
6095 : int fd_vote_authorize_encode( fd_vote_authorize_t const * self, fd_bincode_encode_ctx_t * ctx );
6096 : void fd_vote_authorize_destroy( fd_vote_authorize_t * self, fd_bincode_destroy_ctx_t * ctx );
6097 : void fd_vote_authorize_walk( void * w, fd_vote_authorize_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6098 : ulong fd_vote_authorize_size( fd_vote_authorize_t const * self );
6099 : ulong fd_vote_authorize_footprint( void );
6100 : ulong fd_vote_authorize_align( void );
6101 :
6102 : FD_FN_PURE uchar fd_vote_authorize_is_voter( fd_vote_authorize_t const * self );
6103 : FD_FN_PURE uchar fd_vote_authorize_is_withdrawer( fd_vote_authorize_t const * self );
6104 : enum {
6105 : fd_vote_authorize_enum_voter = 0,
6106 : fd_vote_authorize_enum_withdrawer = 1,
6107 : };
6108 : void fd_vote_authorize_pubkey_new( fd_vote_authorize_pubkey_t * self );
6109 : int fd_vote_authorize_pubkey_decode( fd_vote_authorize_pubkey_t * self, fd_bincode_decode_ctx_t * ctx );
6110 : int fd_vote_authorize_pubkey_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6111 : void fd_vote_authorize_pubkey_decode_unsafe( fd_vote_authorize_pubkey_t * self, fd_bincode_decode_ctx_t * ctx );
6112 : int fd_vote_authorize_pubkey_decode_offsets( fd_vote_authorize_pubkey_off_t * self, fd_bincode_decode_ctx_t * ctx );
6113 : int fd_vote_authorize_pubkey_encode( fd_vote_authorize_pubkey_t const * self, fd_bincode_encode_ctx_t * ctx );
6114 : void fd_vote_authorize_pubkey_destroy( fd_vote_authorize_pubkey_t * self, fd_bincode_destroy_ctx_t * ctx );
6115 : void fd_vote_authorize_pubkey_walk( void * w, fd_vote_authorize_pubkey_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6116 : ulong fd_vote_authorize_pubkey_size( fd_vote_authorize_pubkey_t const * self );
6117 : ulong fd_vote_authorize_pubkey_footprint( void );
6118 : ulong fd_vote_authorize_pubkey_align( void );
6119 :
6120 : void fd_vote_switch_new( fd_vote_switch_t * self );
6121 : int fd_vote_switch_decode( fd_vote_switch_t * self, fd_bincode_decode_ctx_t * ctx );
6122 : int fd_vote_switch_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6123 : void fd_vote_switch_decode_unsafe( fd_vote_switch_t * self, fd_bincode_decode_ctx_t * ctx );
6124 : int fd_vote_switch_decode_offsets( fd_vote_switch_off_t * self, fd_bincode_decode_ctx_t * ctx );
6125 : int fd_vote_switch_encode( fd_vote_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
6126 : void fd_vote_switch_destroy( fd_vote_switch_t * self, fd_bincode_destroy_ctx_t * ctx );
6127 : void fd_vote_switch_walk( void * w, fd_vote_switch_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6128 : ulong fd_vote_switch_size( fd_vote_switch_t const * self );
6129 : ulong fd_vote_switch_footprint( void );
6130 : ulong fd_vote_switch_align( void );
6131 :
6132 : void fd_update_vote_state_switch_new( fd_update_vote_state_switch_t * self );
6133 : int fd_update_vote_state_switch_decode( fd_update_vote_state_switch_t * self, fd_bincode_decode_ctx_t * ctx );
6134 : int fd_update_vote_state_switch_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6135 : void fd_update_vote_state_switch_decode_unsafe( fd_update_vote_state_switch_t * self, fd_bincode_decode_ctx_t * ctx );
6136 : int fd_update_vote_state_switch_decode_offsets( fd_update_vote_state_switch_off_t * self, fd_bincode_decode_ctx_t * ctx );
6137 : int fd_update_vote_state_switch_encode( fd_update_vote_state_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
6138 : void fd_update_vote_state_switch_destroy( fd_update_vote_state_switch_t * self, fd_bincode_destroy_ctx_t * ctx );
6139 : void fd_update_vote_state_switch_walk( void * w, fd_update_vote_state_switch_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6140 : ulong fd_update_vote_state_switch_size( fd_update_vote_state_switch_t const * self );
6141 : ulong fd_update_vote_state_switch_footprint( void );
6142 : ulong fd_update_vote_state_switch_align( void );
6143 :
6144 : void fd_vote_authorize_with_seed_args_new( fd_vote_authorize_with_seed_args_t * self );
6145 : int fd_vote_authorize_with_seed_args_decode( fd_vote_authorize_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6146 : int fd_vote_authorize_with_seed_args_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6147 : void fd_vote_authorize_with_seed_args_decode_unsafe( fd_vote_authorize_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6148 : int fd_vote_authorize_with_seed_args_decode_offsets( fd_vote_authorize_with_seed_args_off_t * self, fd_bincode_decode_ctx_t * ctx );
6149 : int fd_vote_authorize_with_seed_args_encode( fd_vote_authorize_with_seed_args_t const * self, fd_bincode_encode_ctx_t * ctx );
6150 : void fd_vote_authorize_with_seed_args_destroy( fd_vote_authorize_with_seed_args_t * self, fd_bincode_destroy_ctx_t * ctx );
6151 : void fd_vote_authorize_with_seed_args_walk( void * w, fd_vote_authorize_with_seed_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6152 : ulong fd_vote_authorize_with_seed_args_size( fd_vote_authorize_with_seed_args_t const * self );
6153 : ulong fd_vote_authorize_with_seed_args_footprint( void );
6154 : ulong fd_vote_authorize_with_seed_args_align( void );
6155 :
6156 : void fd_vote_authorize_checked_with_seed_args_new( fd_vote_authorize_checked_with_seed_args_t * self );
6157 : int fd_vote_authorize_checked_with_seed_args_decode( fd_vote_authorize_checked_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6158 : int fd_vote_authorize_checked_with_seed_args_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6159 : void fd_vote_authorize_checked_with_seed_args_decode_unsafe( fd_vote_authorize_checked_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6160 : int fd_vote_authorize_checked_with_seed_args_decode_offsets( fd_vote_authorize_checked_with_seed_args_off_t * self, fd_bincode_decode_ctx_t * ctx );
6161 : int fd_vote_authorize_checked_with_seed_args_encode( fd_vote_authorize_checked_with_seed_args_t const * self, fd_bincode_encode_ctx_t * ctx );
6162 : void fd_vote_authorize_checked_with_seed_args_destroy( fd_vote_authorize_checked_with_seed_args_t * self, fd_bincode_destroy_ctx_t * ctx );
6163 : void fd_vote_authorize_checked_with_seed_args_walk( void * w, fd_vote_authorize_checked_with_seed_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6164 : ulong fd_vote_authorize_checked_with_seed_args_size( fd_vote_authorize_checked_with_seed_args_t const * self );
6165 : ulong fd_vote_authorize_checked_with_seed_args_footprint( void );
6166 : ulong fd_vote_authorize_checked_with_seed_args_align( void );
6167 :
6168 : void fd_vote_instruction_new_disc( fd_vote_instruction_t * self, uint discriminant );
6169 : void fd_vote_instruction_new( fd_vote_instruction_t * self );
6170 : int fd_vote_instruction_decode( fd_vote_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6171 : int fd_vote_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6172 : void fd_vote_instruction_decode_unsafe( fd_vote_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6173 : int fd_vote_instruction_encode( fd_vote_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
6174 : void fd_vote_instruction_destroy( fd_vote_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
6175 : void fd_vote_instruction_walk( void * w, fd_vote_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6176 : ulong fd_vote_instruction_size( fd_vote_instruction_t const * self );
6177 : ulong fd_vote_instruction_footprint( void );
6178 : ulong fd_vote_instruction_align( void );
6179 :
6180 : FD_FN_PURE uchar fd_vote_instruction_is_initialize_account( fd_vote_instruction_t const * self );
6181 : FD_FN_PURE uchar fd_vote_instruction_is_authorize( fd_vote_instruction_t const * self );
6182 : FD_FN_PURE uchar fd_vote_instruction_is_vote( fd_vote_instruction_t const * self );
6183 : FD_FN_PURE uchar fd_vote_instruction_is_withdraw( fd_vote_instruction_t const * self );
6184 : FD_FN_PURE uchar fd_vote_instruction_is_update_validator_identity( fd_vote_instruction_t const * self );
6185 : FD_FN_PURE uchar fd_vote_instruction_is_update_commission( fd_vote_instruction_t const * self );
6186 : FD_FN_PURE uchar fd_vote_instruction_is_vote_switch( fd_vote_instruction_t const * self );
6187 : FD_FN_PURE uchar fd_vote_instruction_is_authorize_checked( fd_vote_instruction_t const * self );
6188 : FD_FN_PURE uchar fd_vote_instruction_is_update_vote_state( fd_vote_instruction_t const * self );
6189 : FD_FN_PURE uchar fd_vote_instruction_is_update_vote_state_switch( fd_vote_instruction_t const * self );
6190 : FD_FN_PURE uchar fd_vote_instruction_is_authorize_with_seed( fd_vote_instruction_t const * self );
6191 : FD_FN_PURE uchar fd_vote_instruction_is_authorize_checked_with_seed( fd_vote_instruction_t const * self );
6192 : FD_FN_PURE uchar fd_vote_instruction_is_compact_update_vote_state( fd_vote_instruction_t const * self );
6193 : FD_FN_PURE uchar fd_vote_instruction_is_compact_update_vote_state_switch( fd_vote_instruction_t const * self );
6194 : FD_FN_PURE uchar fd_vote_instruction_is_tower_sync( fd_vote_instruction_t const * self );
6195 : FD_FN_PURE uchar fd_vote_instruction_is_tower_sync_switch( fd_vote_instruction_t const * self );
6196 : enum {
6197 : fd_vote_instruction_enum_initialize_account = 0,
6198 : fd_vote_instruction_enum_authorize = 1,
6199 : fd_vote_instruction_enum_vote = 2,
6200 : fd_vote_instruction_enum_withdraw = 3,
6201 : fd_vote_instruction_enum_update_validator_identity = 4,
6202 : fd_vote_instruction_enum_update_commission = 5,
6203 : fd_vote_instruction_enum_vote_switch = 6,
6204 : fd_vote_instruction_enum_authorize_checked = 7,
6205 : fd_vote_instruction_enum_update_vote_state = 8,
6206 : fd_vote_instruction_enum_update_vote_state_switch = 9,
6207 : fd_vote_instruction_enum_authorize_with_seed = 10,
6208 : fd_vote_instruction_enum_authorize_checked_with_seed = 11,
6209 : fd_vote_instruction_enum_compact_update_vote_state = 12,
6210 : fd_vote_instruction_enum_compact_update_vote_state_switch = 13,
6211 : fd_vote_instruction_enum_tower_sync = 14,
6212 : fd_vote_instruction_enum_tower_sync_switch = 15,
6213 : };
6214 : void fd_system_program_instruction_create_account_new( fd_system_program_instruction_create_account_t * self );
6215 : int fd_system_program_instruction_create_account_decode( fd_system_program_instruction_create_account_t * self, fd_bincode_decode_ctx_t * ctx );
6216 : int fd_system_program_instruction_create_account_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6217 : void fd_system_program_instruction_create_account_decode_unsafe( fd_system_program_instruction_create_account_t * self, fd_bincode_decode_ctx_t * ctx );
6218 : int fd_system_program_instruction_create_account_decode_offsets( fd_system_program_instruction_create_account_off_t * self, fd_bincode_decode_ctx_t * ctx );
6219 : int fd_system_program_instruction_create_account_encode( fd_system_program_instruction_create_account_t const * self, fd_bincode_encode_ctx_t * ctx );
6220 : void fd_system_program_instruction_create_account_destroy( fd_system_program_instruction_create_account_t * self, fd_bincode_destroy_ctx_t * ctx );
6221 : void fd_system_program_instruction_create_account_walk( void * w, fd_system_program_instruction_create_account_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6222 : ulong fd_system_program_instruction_create_account_size( fd_system_program_instruction_create_account_t const * self );
6223 : ulong fd_system_program_instruction_create_account_footprint( void );
6224 : ulong fd_system_program_instruction_create_account_align( void );
6225 :
6226 : void fd_system_program_instruction_create_account_with_seed_new( fd_system_program_instruction_create_account_with_seed_t * self );
6227 : int fd_system_program_instruction_create_account_with_seed_decode( fd_system_program_instruction_create_account_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6228 : int fd_system_program_instruction_create_account_with_seed_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6229 : void fd_system_program_instruction_create_account_with_seed_decode_unsafe( fd_system_program_instruction_create_account_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6230 : int fd_system_program_instruction_create_account_with_seed_decode_offsets( fd_system_program_instruction_create_account_with_seed_off_t * self, fd_bincode_decode_ctx_t * ctx );
6231 : int fd_system_program_instruction_create_account_with_seed_encode( fd_system_program_instruction_create_account_with_seed_t const * self, fd_bincode_encode_ctx_t * ctx );
6232 : void fd_system_program_instruction_create_account_with_seed_destroy( fd_system_program_instruction_create_account_with_seed_t * self, fd_bincode_destroy_ctx_t * ctx );
6233 : void fd_system_program_instruction_create_account_with_seed_walk( void * w, fd_system_program_instruction_create_account_with_seed_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6234 : ulong fd_system_program_instruction_create_account_with_seed_size( fd_system_program_instruction_create_account_with_seed_t const * self );
6235 : ulong fd_system_program_instruction_create_account_with_seed_footprint( void );
6236 : ulong fd_system_program_instruction_create_account_with_seed_align( void );
6237 :
6238 : void fd_system_program_instruction_allocate_with_seed_new( fd_system_program_instruction_allocate_with_seed_t * self );
6239 : int fd_system_program_instruction_allocate_with_seed_decode( fd_system_program_instruction_allocate_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6240 : int fd_system_program_instruction_allocate_with_seed_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6241 : void fd_system_program_instruction_allocate_with_seed_decode_unsafe( fd_system_program_instruction_allocate_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6242 : int fd_system_program_instruction_allocate_with_seed_decode_offsets( fd_system_program_instruction_allocate_with_seed_off_t * self, fd_bincode_decode_ctx_t * ctx );
6243 : int fd_system_program_instruction_allocate_with_seed_encode( fd_system_program_instruction_allocate_with_seed_t const * self, fd_bincode_encode_ctx_t * ctx );
6244 : void fd_system_program_instruction_allocate_with_seed_destroy( fd_system_program_instruction_allocate_with_seed_t * self, fd_bincode_destroy_ctx_t * ctx );
6245 : void fd_system_program_instruction_allocate_with_seed_walk( void * w, fd_system_program_instruction_allocate_with_seed_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6246 : ulong fd_system_program_instruction_allocate_with_seed_size( fd_system_program_instruction_allocate_with_seed_t const * self );
6247 : ulong fd_system_program_instruction_allocate_with_seed_footprint( void );
6248 : ulong fd_system_program_instruction_allocate_with_seed_align( void );
6249 :
6250 : void fd_system_program_instruction_assign_with_seed_new( fd_system_program_instruction_assign_with_seed_t * self );
6251 : int fd_system_program_instruction_assign_with_seed_decode( fd_system_program_instruction_assign_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6252 : int fd_system_program_instruction_assign_with_seed_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6253 : void fd_system_program_instruction_assign_with_seed_decode_unsafe( fd_system_program_instruction_assign_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6254 : int fd_system_program_instruction_assign_with_seed_decode_offsets( fd_system_program_instruction_assign_with_seed_off_t * self, fd_bincode_decode_ctx_t * ctx );
6255 : int fd_system_program_instruction_assign_with_seed_encode( fd_system_program_instruction_assign_with_seed_t const * self, fd_bincode_encode_ctx_t * ctx );
6256 : void fd_system_program_instruction_assign_with_seed_destroy( fd_system_program_instruction_assign_with_seed_t * self, fd_bincode_destroy_ctx_t * ctx );
6257 : void fd_system_program_instruction_assign_with_seed_walk( void * w, fd_system_program_instruction_assign_with_seed_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6258 : ulong fd_system_program_instruction_assign_with_seed_size( fd_system_program_instruction_assign_with_seed_t const * self );
6259 : ulong fd_system_program_instruction_assign_with_seed_footprint( void );
6260 : ulong fd_system_program_instruction_assign_with_seed_align( void );
6261 :
6262 : void fd_system_program_instruction_transfer_with_seed_new( fd_system_program_instruction_transfer_with_seed_t * self );
6263 : int fd_system_program_instruction_transfer_with_seed_decode( fd_system_program_instruction_transfer_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6264 : int fd_system_program_instruction_transfer_with_seed_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6265 : void fd_system_program_instruction_transfer_with_seed_decode_unsafe( fd_system_program_instruction_transfer_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
6266 : int fd_system_program_instruction_transfer_with_seed_decode_offsets( fd_system_program_instruction_transfer_with_seed_off_t * self, fd_bincode_decode_ctx_t * ctx );
6267 : int fd_system_program_instruction_transfer_with_seed_encode( fd_system_program_instruction_transfer_with_seed_t const * self, fd_bincode_encode_ctx_t * ctx );
6268 : void fd_system_program_instruction_transfer_with_seed_destroy( fd_system_program_instruction_transfer_with_seed_t * self, fd_bincode_destroy_ctx_t * ctx );
6269 : void fd_system_program_instruction_transfer_with_seed_walk( void * w, fd_system_program_instruction_transfer_with_seed_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6270 : ulong fd_system_program_instruction_transfer_with_seed_size( fd_system_program_instruction_transfer_with_seed_t const * self );
6271 : ulong fd_system_program_instruction_transfer_with_seed_footprint( void );
6272 : ulong fd_system_program_instruction_transfer_with_seed_align( void );
6273 :
6274 : void fd_system_program_instruction_new_disc( fd_system_program_instruction_t * self, uint discriminant );
6275 : void fd_system_program_instruction_new( fd_system_program_instruction_t * self );
6276 : int fd_system_program_instruction_decode( fd_system_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6277 : int fd_system_program_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6278 : void fd_system_program_instruction_decode_unsafe( fd_system_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6279 : int fd_system_program_instruction_encode( fd_system_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
6280 : void fd_system_program_instruction_destroy( fd_system_program_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
6281 : void fd_system_program_instruction_walk( void * w, fd_system_program_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6282 : ulong fd_system_program_instruction_size( fd_system_program_instruction_t const * self );
6283 : ulong fd_system_program_instruction_footprint( void );
6284 : ulong fd_system_program_instruction_align( void );
6285 :
6286 : FD_FN_PURE uchar fd_system_program_instruction_is_create_account( fd_system_program_instruction_t const * self );
6287 : FD_FN_PURE uchar fd_system_program_instruction_is_assign( fd_system_program_instruction_t const * self );
6288 : FD_FN_PURE uchar fd_system_program_instruction_is_transfer( fd_system_program_instruction_t const * self );
6289 : FD_FN_PURE uchar fd_system_program_instruction_is_create_account_with_seed( fd_system_program_instruction_t const * self );
6290 : FD_FN_PURE uchar fd_system_program_instruction_is_advance_nonce_account( fd_system_program_instruction_t const * self );
6291 : FD_FN_PURE uchar fd_system_program_instruction_is_withdraw_nonce_account( fd_system_program_instruction_t const * self );
6292 : FD_FN_PURE uchar fd_system_program_instruction_is_initialize_nonce_account( fd_system_program_instruction_t const * self );
6293 : FD_FN_PURE uchar fd_system_program_instruction_is_authorize_nonce_account( fd_system_program_instruction_t const * self );
6294 : FD_FN_PURE uchar fd_system_program_instruction_is_allocate( fd_system_program_instruction_t const * self );
6295 : FD_FN_PURE uchar fd_system_program_instruction_is_allocate_with_seed( fd_system_program_instruction_t const * self );
6296 : FD_FN_PURE uchar fd_system_program_instruction_is_assign_with_seed( fd_system_program_instruction_t const * self );
6297 : FD_FN_PURE uchar fd_system_program_instruction_is_transfer_with_seed( fd_system_program_instruction_t const * self );
6298 : FD_FN_PURE uchar fd_system_program_instruction_is_upgrade_nonce_account( fd_system_program_instruction_t const * self );
6299 : enum {
6300 : fd_system_program_instruction_enum_create_account = 0,
6301 : fd_system_program_instruction_enum_assign = 1,
6302 : fd_system_program_instruction_enum_transfer = 2,
6303 : fd_system_program_instruction_enum_create_account_with_seed = 3,
6304 : fd_system_program_instruction_enum_advance_nonce_account = 4,
6305 : fd_system_program_instruction_enum_withdraw_nonce_account = 5,
6306 : fd_system_program_instruction_enum_initialize_nonce_account = 6,
6307 : fd_system_program_instruction_enum_authorize_nonce_account = 7,
6308 : fd_system_program_instruction_enum_allocate = 8,
6309 : fd_system_program_instruction_enum_allocate_with_seed = 9,
6310 : fd_system_program_instruction_enum_assign_with_seed = 10,
6311 : fd_system_program_instruction_enum_transfer_with_seed = 11,
6312 : fd_system_program_instruction_enum_upgrade_nonce_account = 12,
6313 : };
6314 : void fd_system_error_new_disc( fd_system_error_t * self, uint discriminant );
6315 : void fd_system_error_new( fd_system_error_t * self );
6316 : int fd_system_error_decode( fd_system_error_t * self, fd_bincode_decode_ctx_t * ctx );
6317 : int fd_system_error_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6318 : void fd_system_error_decode_unsafe( fd_system_error_t * self, fd_bincode_decode_ctx_t * ctx );
6319 : int fd_system_error_encode( fd_system_error_t const * self, fd_bincode_encode_ctx_t * ctx );
6320 : void fd_system_error_destroy( fd_system_error_t * self, fd_bincode_destroy_ctx_t * ctx );
6321 : void fd_system_error_walk( void * w, fd_system_error_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6322 : ulong fd_system_error_size( fd_system_error_t const * self );
6323 : ulong fd_system_error_footprint( void );
6324 : ulong fd_system_error_align( void );
6325 :
6326 : FD_FN_PURE uchar fd_system_error_is_account_already_in_use( fd_system_error_t const * self );
6327 : FD_FN_PURE uchar fd_system_error_is_result_with_negative_lamports( fd_system_error_t const * self );
6328 : FD_FN_PURE uchar fd_system_error_is_invalid_program_id( fd_system_error_t const * self );
6329 : FD_FN_PURE uchar fd_system_error_is_invalid_account_data_length( fd_system_error_t const * self );
6330 : FD_FN_PURE uchar fd_system_error_is_max_seed_length_exceeded( fd_system_error_t const * self );
6331 : FD_FN_PURE uchar fd_system_error_is_address_with_seed_mismatch( fd_system_error_t const * self );
6332 : FD_FN_PURE uchar fd_system_error_is_nonce_no_recent_blockhashes( fd_system_error_t const * self );
6333 : FD_FN_PURE uchar fd_system_error_is_nonce_blockhash_not_expired( fd_system_error_t const * self );
6334 : FD_FN_PURE uchar fd_system_error_is_nonce_unexpected_blockhash_value( fd_system_error_t const * self );
6335 : enum {
6336 : fd_system_error_enum_account_already_in_use = 0,
6337 : fd_system_error_enum_result_with_negative_lamports = 1,
6338 : fd_system_error_enum_invalid_program_id = 2,
6339 : fd_system_error_enum_invalid_account_data_length = 3,
6340 : fd_system_error_enum_max_seed_length_exceeded = 4,
6341 : fd_system_error_enum_address_with_seed_mismatch = 5,
6342 : fd_system_error_enum_nonce_no_recent_blockhashes = 6,
6343 : fd_system_error_enum_nonce_blockhash_not_expired = 7,
6344 : fd_system_error_enum_nonce_unexpected_blockhash_value = 8,
6345 : };
6346 : void fd_stake_authorized_new( fd_stake_authorized_t * self );
6347 : int fd_stake_authorized_decode( fd_stake_authorized_t * self, fd_bincode_decode_ctx_t * ctx );
6348 : int fd_stake_authorized_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6349 : void fd_stake_authorized_decode_unsafe( fd_stake_authorized_t * self, fd_bincode_decode_ctx_t * ctx );
6350 : int fd_stake_authorized_decode_offsets( fd_stake_authorized_off_t * self, fd_bincode_decode_ctx_t * ctx );
6351 : int fd_stake_authorized_encode( fd_stake_authorized_t const * self, fd_bincode_encode_ctx_t * ctx );
6352 : void fd_stake_authorized_destroy( fd_stake_authorized_t * self, fd_bincode_destroy_ctx_t * ctx );
6353 : void fd_stake_authorized_walk( void * w, fd_stake_authorized_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6354 : ulong fd_stake_authorized_size( fd_stake_authorized_t const * self );
6355 : ulong fd_stake_authorized_footprint( void );
6356 : ulong fd_stake_authorized_align( void );
6357 :
6358 : void fd_stake_lockup_new( fd_stake_lockup_t * self );
6359 : int fd_stake_lockup_decode( fd_stake_lockup_t * self, fd_bincode_decode_ctx_t * ctx );
6360 : int fd_stake_lockup_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6361 : void fd_stake_lockup_decode_unsafe( fd_stake_lockup_t * self, fd_bincode_decode_ctx_t * ctx );
6362 : int fd_stake_lockup_decode_offsets( fd_stake_lockup_off_t * self, fd_bincode_decode_ctx_t * ctx );
6363 : int fd_stake_lockup_encode( fd_stake_lockup_t const * self, fd_bincode_encode_ctx_t * ctx );
6364 : void fd_stake_lockup_destroy( fd_stake_lockup_t * self, fd_bincode_destroy_ctx_t * ctx );
6365 : void fd_stake_lockup_walk( void * w, fd_stake_lockup_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6366 : ulong fd_stake_lockup_size( fd_stake_lockup_t const * self );
6367 : ulong fd_stake_lockup_footprint( void );
6368 : ulong fd_stake_lockup_align( void );
6369 :
6370 : void fd_stake_instruction_initialize_new( fd_stake_instruction_initialize_t * self );
6371 : int fd_stake_instruction_initialize_decode( fd_stake_instruction_initialize_t * self, fd_bincode_decode_ctx_t * ctx );
6372 : int fd_stake_instruction_initialize_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6373 : void fd_stake_instruction_initialize_decode_unsafe( fd_stake_instruction_initialize_t * self, fd_bincode_decode_ctx_t * ctx );
6374 : int fd_stake_instruction_initialize_decode_offsets( fd_stake_instruction_initialize_off_t * self, fd_bincode_decode_ctx_t * ctx );
6375 : int fd_stake_instruction_initialize_encode( fd_stake_instruction_initialize_t const * self, fd_bincode_encode_ctx_t * ctx );
6376 : void fd_stake_instruction_initialize_destroy( fd_stake_instruction_initialize_t * self, fd_bincode_destroy_ctx_t * ctx );
6377 : void fd_stake_instruction_initialize_walk( void * w, fd_stake_instruction_initialize_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6378 : ulong fd_stake_instruction_initialize_size( fd_stake_instruction_initialize_t const * self );
6379 : ulong fd_stake_instruction_initialize_footprint( void );
6380 : ulong fd_stake_instruction_initialize_align( void );
6381 :
6382 : void fd_stake_lockup_custodian_args_new( fd_stake_lockup_custodian_args_t * self );
6383 : int fd_stake_lockup_custodian_args_decode( fd_stake_lockup_custodian_args_t * self, fd_bincode_decode_ctx_t * ctx );
6384 : int fd_stake_lockup_custodian_args_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6385 : void fd_stake_lockup_custodian_args_decode_unsafe( fd_stake_lockup_custodian_args_t * self, fd_bincode_decode_ctx_t * ctx );
6386 : int fd_stake_lockup_custodian_args_decode_offsets( fd_stake_lockup_custodian_args_off_t * self, fd_bincode_decode_ctx_t * ctx );
6387 : int fd_stake_lockup_custodian_args_encode( fd_stake_lockup_custodian_args_t const * self, fd_bincode_encode_ctx_t * ctx );
6388 : void fd_stake_lockup_custodian_args_destroy( fd_stake_lockup_custodian_args_t * self, fd_bincode_destroy_ctx_t * ctx );
6389 : void fd_stake_lockup_custodian_args_walk( void * w, fd_stake_lockup_custodian_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6390 : ulong fd_stake_lockup_custodian_args_size( fd_stake_lockup_custodian_args_t const * self );
6391 : ulong fd_stake_lockup_custodian_args_footprint( void );
6392 : ulong fd_stake_lockup_custodian_args_align( void );
6393 :
6394 : void fd_stake_authorize_new_disc( fd_stake_authorize_t * self, uint discriminant );
6395 : void fd_stake_authorize_new( fd_stake_authorize_t * self );
6396 : int fd_stake_authorize_decode( fd_stake_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
6397 : int fd_stake_authorize_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6398 : void fd_stake_authorize_decode_unsafe( fd_stake_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
6399 : int fd_stake_authorize_encode( fd_stake_authorize_t const * self, fd_bincode_encode_ctx_t * ctx );
6400 : void fd_stake_authorize_destroy( fd_stake_authorize_t * self, fd_bincode_destroy_ctx_t * ctx );
6401 : void fd_stake_authorize_walk( void * w, fd_stake_authorize_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6402 : ulong fd_stake_authorize_size( fd_stake_authorize_t const * self );
6403 : ulong fd_stake_authorize_footprint( void );
6404 : ulong fd_stake_authorize_align( void );
6405 :
6406 : FD_FN_PURE uchar fd_stake_authorize_is_staker( fd_stake_authorize_t const * self );
6407 : FD_FN_PURE uchar fd_stake_authorize_is_withdrawer( fd_stake_authorize_t const * self );
6408 : enum {
6409 : fd_stake_authorize_enum_staker = 0,
6410 : fd_stake_authorize_enum_withdrawer = 1,
6411 : };
6412 : void fd_stake_instruction_authorize_new( fd_stake_instruction_authorize_t * self );
6413 : int fd_stake_instruction_authorize_decode( fd_stake_instruction_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
6414 : int fd_stake_instruction_authorize_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6415 : void fd_stake_instruction_authorize_decode_unsafe( fd_stake_instruction_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
6416 : int fd_stake_instruction_authorize_decode_offsets( fd_stake_instruction_authorize_off_t * self, fd_bincode_decode_ctx_t * ctx );
6417 : int fd_stake_instruction_authorize_encode( fd_stake_instruction_authorize_t const * self, fd_bincode_encode_ctx_t * ctx );
6418 : void fd_stake_instruction_authorize_destroy( fd_stake_instruction_authorize_t * self, fd_bincode_destroy_ctx_t * ctx );
6419 : void fd_stake_instruction_authorize_walk( void * w, fd_stake_instruction_authorize_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6420 : ulong fd_stake_instruction_authorize_size( fd_stake_instruction_authorize_t const * self );
6421 : ulong fd_stake_instruction_authorize_footprint( void );
6422 : ulong fd_stake_instruction_authorize_align( void );
6423 :
6424 : void fd_authorize_with_seed_args_new( fd_authorize_with_seed_args_t * self );
6425 : int fd_authorize_with_seed_args_decode( fd_authorize_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6426 : int fd_authorize_with_seed_args_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6427 : void fd_authorize_with_seed_args_decode_unsafe( fd_authorize_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6428 : int fd_authorize_with_seed_args_decode_offsets( fd_authorize_with_seed_args_off_t * self, fd_bincode_decode_ctx_t * ctx );
6429 : int fd_authorize_with_seed_args_encode( fd_authorize_with_seed_args_t const * self, fd_bincode_encode_ctx_t * ctx );
6430 : void fd_authorize_with_seed_args_destroy( fd_authorize_with_seed_args_t * self, fd_bincode_destroy_ctx_t * ctx );
6431 : void fd_authorize_with_seed_args_walk( void * w, fd_authorize_with_seed_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6432 : ulong fd_authorize_with_seed_args_size( fd_authorize_with_seed_args_t const * self );
6433 : ulong fd_authorize_with_seed_args_footprint( void );
6434 : ulong fd_authorize_with_seed_args_align( void );
6435 :
6436 : void fd_authorize_checked_with_seed_args_new( fd_authorize_checked_with_seed_args_t * self );
6437 : int fd_authorize_checked_with_seed_args_decode( fd_authorize_checked_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6438 : int fd_authorize_checked_with_seed_args_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6439 : void fd_authorize_checked_with_seed_args_decode_unsafe( fd_authorize_checked_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
6440 : int fd_authorize_checked_with_seed_args_decode_offsets( fd_authorize_checked_with_seed_args_off_t * self, fd_bincode_decode_ctx_t * ctx );
6441 : int fd_authorize_checked_with_seed_args_encode( fd_authorize_checked_with_seed_args_t const * self, fd_bincode_encode_ctx_t * ctx );
6442 : void fd_authorize_checked_with_seed_args_destroy( fd_authorize_checked_with_seed_args_t * self, fd_bincode_destroy_ctx_t * ctx );
6443 : void fd_authorize_checked_with_seed_args_walk( void * w, fd_authorize_checked_with_seed_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6444 : ulong fd_authorize_checked_with_seed_args_size( fd_authorize_checked_with_seed_args_t const * self );
6445 : ulong fd_authorize_checked_with_seed_args_footprint( void );
6446 : ulong fd_authorize_checked_with_seed_args_align( void );
6447 :
6448 : void fd_lockup_checked_args_new( fd_lockup_checked_args_t * self );
6449 : int fd_lockup_checked_args_decode( fd_lockup_checked_args_t * self, fd_bincode_decode_ctx_t * ctx );
6450 : int fd_lockup_checked_args_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6451 : void fd_lockup_checked_args_decode_unsafe( fd_lockup_checked_args_t * self, fd_bincode_decode_ctx_t * ctx );
6452 : int fd_lockup_checked_args_decode_offsets( fd_lockup_checked_args_off_t * self, fd_bincode_decode_ctx_t * ctx );
6453 : int fd_lockup_checked_args_encode( fd_lockup_checked_args_t const * self, fd_bincode_encode_ctx_t * ctx );
6454 : void fd_lockup_checked_args_destroy( fd_lockup_checked_args_t * self, fd_bincode_destroy_ctx_t * ctx );
6455 : void fd_lockup_checked_args_walk( void * w, fd_lockup_checked_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6456 : ulong fd_lockup_checked_args_size( fd_lockup_checked_args_t const * self );
6457 : ulong fd_lockup_checked_args_footprint( void );
6458 : ulong fd_lockup_checked_args_align( void );
6459 :
6460 : void fd_lockup_args_new( fd_lockup_args_t * self );
6461 : int fd_lockup_args_decode( fd_lockup_args_t * self, fd_bincode_decode_ctx_t * ctx );
6462 : int fd_lockup_args_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6463 : void fd_lockup_args_decode_unsafe( fd_lockup_args_t * self, fd_bincode_decode_ctx_t * ctx );
6464 : int fd_lockup_args_decode_offsets( fd_lockup_args_off_t * self, fd_bincode_decode_ctx_t * ctx );
6465 : int fd_lockup_args_encode( fd_lockup_args_t const * self, fd_bincode_encode_ctx_t * ctx );
6466 : void fd_lockup_args_destroy( fd_lockup_args_t * self, fd_bincode_destroy_ctx_t * ctx );
6467 : void fd_lockup_args_walk( void * w, fd_lockup_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6468 : ulong fd_lockup_args_size( fd_lockup_args_t const * self );
6469 : ulong fd_lockup_args_footprint( void );
6470 : ulong fd_lockup_args_align( void );
6471 :
6472 : void fd_stake_instruction_new_disc( fd_stake_instruction_t * self, uint discriminant );
6473 : void fd_stake_instruction_new( fd_stake_instruction_t * self );
6474 : int fd_stake_instruction_decode( fd_stake_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6475 : int fd_stake_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6476 : void fd_stake_instruction_decode_unsafe( fd_stake_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6477 : int fd_stake_instruction_encode( fd_stake_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
6478 : void fd_stake_instruction_destroy( fd_stake_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
6479 : void fd_stake_instruction_walk( void * w, fd_stake_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6480 : ulong fd_stake_instruction_size( fd_stake_instruction_t const * self );
6481 : ulong fd_stake_instruction_footprint( void );
6482 : ulong fd_stake_instruction_align( void );
6483 :
6484 : FD_FN_PURE uchar fd_stake_instruction_is_initialize( fd_stake_instruction_t const * self );
6485 : FD_FN_PURE uchar fd_stake_instruction_is_authorize( fd_stake_instruction_t const * self );
6486 : FD_FN_PURE uchar fd_stake_instruction_is_delegate_stake( fd_stake_instruction_t const * self );
6487 : FD_FN_PURE uchar fd_stake_instruction_is_split( fd_stake_instruction_t const * self );
6488 : FD_FN_PURE uchar fd_stake_instruction_is_withdraw( fd_stake_instruction_t const * self );
6489 : FD_FN_PURE uchar fd_stake_instruction_is_deactivate( fd_stake_instruction_t const * self );
6490 : FD_FN_PURE uchar fd_stake_instruction_is_set_lockup( fd_stake_instruction_t const * self );
6491 : FD_FN_PURE uchar fd_stake_instruction_is_merge( fd_stake_instruction_t const * self );
6492 : FD_FN_PURE uchar fd_stake_instruction_is_authorize_with_seed( fd_stake_instruction_t const * self );
6493 : FD_FN_PURE uchar fd_stake_instruction_is_initialize_checked( fd_stake_instruction_t const * self );
6494 : FD_FN_PURE uchar fd_stake_instruction_is_authorize_checked( fd_stake_instruction_t const * self );
6495 : FD_FN_PURE uchar fd_stake_instruction_is_authorize_checked_with_seed( fd_stake_instruction_t const * self );
6496 : FD_FN_PURE uchar fd_stake_instruction_is_set_lockup_checked( fd_stake_instruction_t const * self );
6497 : FD_FN_PURE uchar fd_stake_instruction_is_get_minimum_delegation( fd_stake_instruction_t const * self );
6498 : FD_FN_PURE uchar fd_stake_instruction_is_deactivate_delinquent( fd_stake_instruction_t const * self );
6499 : FD_FN_PURE uchar fd_stake_instruction_is_redelegate( fd_stake_instruction_t const * self );
6500 : FD_FN_PURE uchar fd_stake_instruction_is_move_stake( fd_stake_instruction_t const * self );
6501 : FD_FN_PURE uchar fd_stake_instruction_is_move_lamports( fd_stake_instruction_t const * self );
6502 : enum {
6503 : fd_stake_instruction_enum_initialize = 0,
6504 : fd_stake_instruction_enum_authorize = 1,
6505 : fd_stake_instruction_enum_delegate_stake = 2,
6506 : fd_stake_instruction_enum_split = 3,
6507 : fd_stake_instruction_enum_withdraw = 4,
6508 : fd_stake_instruction_enum_deactivate = 5,
6509 : fd_stake_instruction_enum_set_lockup = 6,
6510 : fd_stake_instruction_enum_merge = 7,
6511 : fd_stake_instruction_enum_authorize_with_seed = 8,
6512 : fd_stake_instruction_enum_initialize_checked = 9,
6513 : fd_stake_instruction_enum_authorize_checked = 10,
6514 : fd_stake_instruction_enum_authorize_checked_with_seed = 11,
6515 : fd_stake_instruction_enum_set_lockup_checked = 12,
6516 : fd_stake_instruction_enum_get_minimum_delegation = 13,
6517 : fd_stake_instruction_enum_deactivate_delinquent = 14,
6518 : fd_stake_instruction_enum_redelegate = 15,
6519 : fd_stake_instruction_enum_move_stake = 16,
6520 : fd_stake_instruction_enum_move_lamports = 17,
6521 : };
6522 : void fd_stake_meta_new( fd_stake_meta_t * self );
6523 : int fd_stake_meta_decode( fd_stake_meta_t * self, fd_bincode_decode_ctx_t * ctx );
6524 : int fd_stake_meta_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6525 : void fd_stake_meta_decode_unsafe( fd_stake_meta_t * self, fd_bincode_decode_ctx_t * ctx );
6526 : int fd_stake_meta_decode_offsets( fd_stake_meta_off_t * self, fd_bincode_decode_ctx_t * ctx );
6527 : int fd_stake_meta_encode( fd_stake_meta_t const * self, fd_bincode_encode_ctx_t * ctx );
6528 : void fd_stake_meta_destroy( fd_stake_meta_t * self, fd_bincode_destroy_ctx_t * ctx );
6529 : void fd_stake_meta_walk( void * w, fd_stake_meta_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6530 : ulong fd_stake_meta_size( fd_stake_meta_t const * self );
6531 : ulong fd_stake_meta_footprint( void );
6532 : ulong fd_stake_meta_align( void );
6533 :
6534 : void fd_stake_flags_new( fd_stake_flags_t * self );
6535 : int fd_stake_flags_decode( fd_stake_flags_t * self, fd_bincode_decode_ctx_t * ctx );
6536 : int fd_stake_flags_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6537 : void fd_stake_flags_decode_unsafe( fd_stake_flags_t * self, fd_bincode_decode_ctx_t * ctx );
6538 : int fd_stake_flags_decode_offsets( fd_stake_flags_off_t * self, fd_bincode_decode_ctx_t * ctx );
6539 : int fd_stake_flags_encode( fd_stake_flags_t const * self, fd_bincode_encode_ctx_t * ctx );
6540 : void fd_stake_flags_destroy( fd_stake_flags_t * self, fd_bincode_destroy_ctx_t * ctx );
6541 : void fd_stake_flags_walk( void * w, fd_stake_flags_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6542 : ulong fd_stake_flags_size( fd_stake_flags_t const * self );
6543 : ulong fd_stake_flags_footprint( void );
6544 : ulong fd_stake_flags_align( void );
6545 :
6546 : void fd_stake_state_v2_initialized_new( fd_stake_state_v2_initialized_t * self );
6547 : int fd_stake_state_v2_initialized_decode( fd_stake_state_v2_initialized_t * self, fd_bincode_decode_ctx_t * ctx );
6548 : int fd_stake_state_v2_initialized_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6549 : void fd_stake_state_v2_initialized_decode_unsafe( fd_stake_state_v2_initialized_t * self, fd_bincode_decode_ctx_t * ctx );
6550 : int fd_stake_state_v2_initialized_decode_offsets( fd_stake_state_v2_initialized_off_t * self, fd_bincode_decode_ctx_t * ctx );
6551 : int fd_stake_state_v2_initialized_encode( fd_stake_state_v2_initialized_t const * self, fd_bincode_encode_ctx_t * ctx );
6552 : void fd_stake_state_v2_initialized_destroy( fd_stake_state_v2_initialized_t * self, fd_bincode_destroy_ctx_t * ctx );
6553 : void fd_stake_state_v2_initialized_walk( void * w, fd_stake_state_v2_initialized_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6554 : ulong fd_stake_state_v2_initialized_size( fd_stake_state_v2_initialized_t const * self );
6555 : ulong fd_stake_state_v2_initialized_footprint( void );
6556 : ulong fd_stake_state_v2_initialized_align( void );
6557 :
6558 : void fd_stake_state_v2_stake_new( fd_stake_state_v2_stake_t * self );
6559 : int fd_stake_state_v2_stake_decode( fd_stake_state_v2_stake_t * self, fd_bincode_decode_ctx_t * ctx );
6560 : int fd_stake_state_v2_stake_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6561 : void fd_stake_state_v2_stake_decode_unsafe( fd_stake_state_v2_stake_t * self, fd_bincode_decode_ctx_t * ctx );
6562 : int fd_stake_state_v2_stake_decode_offsets( fd_stake_state_v2_stake_off_t * self, fd_bincode_decode_ctx_t * ctx );
6563 : int fd_stake_state_v2_stake_encode( fd_stake_state_v2_stake_t const * self, fd_bincode_encode_ctx_t * ctx );
6564 : void fd_stake_state_v2_stake_destroy( fd_stake_state_v2_stake_t * self, fd_bincode_destroy_ctx_t * ctx );
6565 : void fd_stake_state_v2_stake_walk( void * w, fd_stake_state_v2_stake_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6566 : ulong fd_stake_state_v2_stake_size( fd_stake_state_v2_stake_t const * self );
6567 : ulong fd_stake_state_v2_stake_footprint( void );
6568 : ulong fd_stake_state_v2_stake_align( void );
6569 :
6570 : void fd_stake_state_v2_new_disc( fd_stake_state_v2_t * self, uint discriminant );
6571 : void fd_stake_state_v2_new( fd_stake_state_v2_t * self );
6572 : int fd_stake_state_v2_decode( fd_stake_state_v2_t * self, fd_bincode_decode_ctx_t * ctx );
6573 : int fd_stake_state_v2_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6574 : void fd_stake_state_v2_decode_unsafe( fd_stake_state_v2_t * self, fd_bincode_decode_ctx_t * ctx );
6575 : int fd_stake_state_v2_encode( fd_stake_state_v2_t const * self, fd_bincode_encode_ctx_t * ctx );
6576 : void fd_stake_state_v2_destroy( fd_stake_state_v2_t * self, fd_bincode_destroy_ctx_t * ctx );
6577 : void fd_stake_state_v2_walk( void * w, fd_stake_state_v2_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6578 : ulong fd_stake_state_v2_size( fd_stake_state_v2_t const * self );
6579 : ulong fd_stake_state_v2_footprint( void );
6580 : ulong fd_stake_state_v2_align( void );
6581 :
6582 : FD_FN_PURE uchar fd_stake_state_v2_is_uninitialized( fd_stake_state_v2_t const * self );
6583 : FD_FN_PURE uchar fd_stake_state_v2_is_initialized( fd_stake_state_v2_t const * self );
6584 : FD_FN_PURE uchar fd_stake_state_v2_is_stake( fd_stake_state_v2_t const * self );
6585 : FD_FN_PURE uchar fd_stake_state_v2_is_rewards_pool( fd_stake_state_v2_t const * self );
6586 : enum {
6587 : fd_stake_state_v2_enum_uninitialized = 0,
6588 : fd_stake_state_v2_enum_initialized = 1,
6589 : fd_stake_state_v2_enum_stake = 2,
6590 : fd_stake_state_v2_enum_rewards_pool = 3,
6591 : };
6592 : void fd_nonce_data_new( fd_nonce_data_t * self );
6593 : int fd_nonce_data_decode( fd_nonce_data_t * self, fd_bincode_decode_ctx_t * ctx );
6594 : int fd_nonce_data_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6595 : void fd_nonce_data_decode_unsafe( fd_nonce_data_t * self, fd_bincode_decode_ctx_t * ctx );
6596 : int fd_nonce_data_decode_offsets( fd_nonce_data_off_t * self, fd_bincode_decode_ctx_t * ctx );
6597 : int fd_nonce_data_encode( fd_nonce_data_t const * self, fd_bincode_encode_ctx_t * ctx );
6598 : void fd_nonce_data_destroy( fd_nonce_data_t * self, fd_bincode_destroy_ctx_t * ctx );
6599 : void fd_nonce_data_walk( void * w, fd_nonce_data_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6600 : ulong fd_nonce_data_size( fd_nonce_data_t const * self );
6601 : ulong fd_nonce_data_footprint( void );
6602 : ulong fd_nonce_data_align( void );
6603 :
6604 : void fd_nonce_state_new_disc( fd_nonce_state_t * self, uint discriminant );
6605 : void fd_nonce_state_new( fd_nonce_state_t * self );
6606 : int fd_nonce_state_decode( fd_nonce_state_t * self, fd_bincode_decode_ctx_t * ctx );
6607 : int fd_nonce_state_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6608 : void fd_nonce_state_decode_unsafe( fd_nonce_state_t * self, fd_bincode_decode_ctx_t * ctx );
6609 : int fd_nonce_state_encode( fd_nonce_state_t const * self, fd_bincode_encode_ctx_t * ctx );
6610 : void fd_nonce_state_destroy( fd_nonce_state_t * self, fd_bincode_destroy_ctx_t * ctx );
6611 : void fd_nonce_state_walk( void * w, fd_nonce_state_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6612 : ulong fd_nonce_state_size( fd_nonce_state_t const * self );
6613 : ulong fd_nonce_state_footprint( void );
6614 : ulong fd_nonce_state_align( void );
6615 :
6616 : FD_FN_PURE uchar fd_nonce_state_is_uninitialized( fd_nonce_state_t const * self );
6617 : FD_FN_PURE uchar fd_nonce_state_is_initialized( fd_nonce_state_t const * self );
6618 : enum {
6619 : fd_nonce_state_enum_uninitialized = 0,
6620 : fd_nonce_state_enum_initialized = 1,
6621 : };
6622 : void fd_nonce_state_versions_new_disc( fd_nonce_state_versions_t * self, uint discriminant );
6623 : void fd_nonce_state_versions_new( fd_nonce_state_versions_t * self );
6624 : int fd_nonce_state_versions_decode( fd_nonce_state_versions_t * self, fd_bincode_decode_ctx_t * ctx );
6625 : int fd_nonce_state_versions_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6626 : void fd_nonce_state_versions_decode_unsafe( fd_nonce_state_versions_t * self, fd_bincode_decode_ctx_t * ctx );
6627 : int fd_nonce_state_versions_encode( fd_nonce_state_versions_t const * self, fd_bincode_encode_ctx_t * ctx );
6628 : void fd_nonce_state_versions_destroy( fd_nonce_state_versions_t * self, fd_bincode_destroy_ctx_t * ctx );
6629 : void fd_nonce_state_versions_walk( void * w, fd_nonce_state_versions_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6630 : ulong fd_nonce_state_versions_size( fd_nonce_state_versions_t const * self );
6631 : ulong fd_nonce_state_versions_footprint( void );
6632 : ulong fd_nonce_state_versions_align( void );
6633 :
6634 : FD_FN_PURE uchar fd_nonce_state_versions_is_legacy( fd_nonce_state_versions_t const * self );
6635 : FD_FN_PURE uchar fd_nonce_state_versions_is_current( fd_nonce_state_versions_t const * self );
6636 : enum {
6637 : fd_nonce_state_versions_enum_legacy = 0,
6638 : fd_nonce_state_versions_enum_current = 1,
6639 : };
6640 : void fd_compute_budget_program_instruction_request_units_deprecated_new( fd_compute_budget_program_instruction_request_units_deprecated_t * self );
6641 : int fd_compute_budget_program_instruction_request_units_deprecated_decode( fd_compute_budget_program_instruction_request_units_deprecated_t * self, fd_bincode_decode_ctx_t * ctx );
6642 : int fd_compute_budget_program_instruction_request_units_deprecated_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6643 : void fd_compute_budget_program_instruction_request_units_deprecated_decode_unsafe( fd_compute_budget_program_instruction_request_units_deprecated_t * self, fd_bincode_decode_ctx_t * ctx );
6644 : int fd_compute_budget_program_instruction_request_units_deprecated_decode_offsets( fd_compute_budget_program_instruction_request_units_deprecated_off_t * self, fd_bincode_decode_ctx_t * ctx );
6645 : int fd_compute_budget_program_instruction_request_units_deprecated_encode( fd_compute_budget_program_instruction_request_units_deprecated_t const * self, fd_bincode_encode_ctx_t * ctx );
6646 : void fd_compute_budget_program_instruction_request_units_deprecated_destroy( fd_compute_budget_program_instruction_request_units_deprecated_t * self, fd_bincode_destroy_ctx_t * ctx );
6647 : void fd_compute_budget_program_instruction_request_units_deprecated_walk( void * w, fd_compute_budget_program_instruction_request_units_deprecated_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6648 : ulong fd_compute_budget_program_instruction_request_units_deprecated_size( fd_compute_budget_program_instruction_request_units_deprecated_t const * self );
6649 : ulong fd_compute_budget_program_instruction_request_units_deprecated_footprint( void );
6650 : ulong fd_compute_budget_program_instruction_request_units_deprecated_align( void );
6651 :
6652 : void fd_compute_budget_program_instruction_new_disc( fd_compute_budget_program_instruction_t * self, uint discriminant );
6653 : void fd_compute_budget_program_instruction_new( fd_compute_budget_program_instruction_t * self );
6654 : int fd_compute_budget_program_instruction_decode( fd_compute_budget_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6655 : int fd_compute_budget_program_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6656 : void fd_compute_budget_program_instruction_decode_unsafe( fd_compute_budget_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6657 : int fd_compute_budget_program_instruction_encode( fd_compute_budget_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
6658 : void fd_compute_budget_program_instruction_destroy( fd_compute_budget_program_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
6659 : void fd_compute_budget_program_instruction_walk( void * w, fd_compute_budget_program_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6660 : ulong fd_compute_budget_program_instruction_size( fd_compute_budget_program_instruction_t const * self );
6661 : ulong fd_compute_budget_program_instruction_footprint( void );
6662 : ulong fd_compute_budget_program_instruction_align( void );
6663 :
6664 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_request_units_deprecated( fd_compute_budget_program_instruction_t const * self );
6665 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_request_heap_frame( fd_compute_budget_program_instruction_t const * self );
6666 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_set_compute_unit_limit( fd_compute_budget_program_instruction_t const * self );
6667 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_set_compute_unit_price( fd_compute_budget_program_instruction_t const * self );
6668 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_set_loaded_accounts_data_size_limit( fd_compute_budget_program_instruction_t const * self );
6669 : enum {
6670 : fd_compute_budget_program_instruction_enum_request_units_deprecated = 0,
6671 : fd_compute_budget_program_instruction_enum_request_heap_frame = 1,
6672 : fd_compute_budget_program_instruction_enum_set_compute_unit_limit = 2,
6673 : fd_compute_budget_program_instruction_enum_set_compute_unit_price = 3,
6674 : fd_compute_budget_program_instruction_enum_set_loaded_accounts_data_size_limit = 4,
6675 : };
6676 : void fd_config_keys_new( fd_config_keys_t * self );
6677 : int fd_config_keys_decode( fd_config_keys_t * self, fd_bincode_decode_ctx_t * ctx );
6678 : int fd_config_keys_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6679 : void fd_config_keys_decode_unsafe( fd_config_keys_t * self, fd_bincode_decode_ctx_t * ctx );
6680 : int fd_config_keys_decode_offsets( fd_config_keys_off_t * self, fd_bincode_decode_ctx_t * ctx );
6681 : int fd_config_keys_encode( fd_config_keys_t const * self, fd_bincode_encode_ctx_t * ctx );
6682 : void fd_config_keys_destroy( fd_config_keys_t * self, fd_bincode_destroy_ctx_t * ctx );
6683 : void fd_config_keys_walk( void * w, fd_config_keys_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6684 : ulong fd_config_keys_size( fd_config_keys_t const * self );
6685 : ulong fd_config_keys_footprint( void );
6686 : ulong fd_config_keys_align( void );
6687 :
6688 : void fd_bpf_loader_program_instruction_write_new( fd_bpf_loader_program_instruction_write_t * self );
6689 : int fd_bpf_loader_program_instruction_write_decode( fd_bpf_loader_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
6690 : int fd_bpf_loader_program_instruction_write_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6691 : void fd_bpf_loader_program_instruction_write_decode_unsafe( fd_bpf_loader_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
6692 : int fd_bpf_loader_program_instruction_write_decode_offsets( fd_bpf_loader_program_instruction_write_off_t * self, fd_bincode_decode_ctx_t * ctx );
6693 : int fd_bpf_loader_program_instruction_write_encode( fd_bpf_loader_program_instruction_write_t const * self, fd_bincode_encode_ctx_t * ctx );
6694 : void fd_bpf_loader_program_instruction_write_destroy( fd_bpf_loader_program_instruction_write_t * self, fd_bincode_destroy_ctx_t * ctx );
6695 : void fd_bpf_loader_program_instruction_write_walk( void * w, fd_bpf_loader_program_instruction_write_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6696 : ulong fd_bpf_loader_program_instruction_write_size( fd_bpf_loader_program_instruction_write_t const * self );
6697 : ulong fd_bpf_loader_program_instruction_write_footprint( void );
6698 : ulong fd_bpf_loader_program_instruction_write_align( void );
6699 :
6700 : void fd_bpf_loader_program_instruction_new_disc( fd_bpf_loader_program_instruction_t * self, uint discriminant );
6701 : void fd_bpf_loader_program_instruction_new( fd_bpf_loader_program_instruction_t * self );
6702 : int fd_bpf_loader_program_instruction_decode( fd_bpf_loader_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6703 : int fd_bpf_loader_program_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6704 : void fd_bpf_loader_program_instruction_decode_unsafe( fd_bpf_loader_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6705 : int fd_bpf_loader_program_instruction_encode( fd_bpf_loader_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
6706 : void fd_bpf_loader_program_instruction_destroy( fd_bpf_loader_program_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
6707 : void fd_bpf_loader_program_instruction_walk( void * w, fd_bpf_loader_program_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6708 : ulong fd_bpf_loader_program_instruction_size( fd_bpf_loader_program_instruction_t const * self );
6709 : ulong fd_bpf_loader_program_instruction_footprint( void );
6710 : ulong fd_bpf_loader_program_instruction_align( void );
6711 :
6712 : FD_FN_PURE uchar fd_bpf_loader_program_instruction_is_write( fd_bpf_loader_program_instruction_t const * self );
6713 : FD_FN_PURE uchar fd_bpf_loader_program_instruction_is_finalize( fd_bpf_loader_program_instruction_t const * self );
6714 : enum {
6715 : fd_bpf_loader_program_instruction_enum_write = 0,
6716 : fd_bpf_loader_program_instruction_enum_finalize = 1,
6717 : };
6718 : void fd_bpf_loader_v4_program_instruction_write_new( fd_bpf_loader_v4_program_instruction_write_t * self );
6719 : int fd_bpf_loader_v4_program_instruction_write_decode( fd_bpf_loader_v4_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
6720 : int fd_bpf_loader_v4_program_instruction_write_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6721 : void fd_bpf_loader_v4_program_instruction_write_decode_unsafe( fd_bpf_loader_v4_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
6722 : int fd_bpf_loader_v4_program_instruction_write_decode_offsets( fd_bpf_loader_v4_program_instruction_write_off_t * self, fd_bincode_decode_ctx_t * ctx );
6723 : int fd_bpf_loader_v4_program_instruction_write_encode( fd_bpf_loader_v4_program_instruction_write_t const * self, fd_bincode_encode_ctx_t * ctx );
6724 : void fd_bpf_loader_v4_program_instruction_write_destroy( fd_bpf_loader_v4_program_instruction_write_t * self, fd_bincode_destroy_ctx_t * ctx );
6725 : void fd_bpf_loader_v4_program_instruction_write_walk( void * w, fd_bpf_loader_v4_program_instruction_write_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6726 : ulong fd_bpf_loader_v4_program_instruction_write_size( fd_bpf_loader_v4_program_instruction_write_t const * self );
6727 : ulong fd_bpf_loader_v4_program_instruction_write_footprint( void );
6728 : ulong fd_bpf_loader_v4_program_instruction_write_align( void );
6729 :
6730 : void fd_bpf_loader_v4_program_instruction_new_disc( fd_bpf_loader_v4_program_instruction_t * self, uint discriminant );
6731 : void fd_bpf_loader_v4_program_instruction_new( fd_bpf_loader_v4_program_instruction_t * self );
6732 : int fd_bpf_loader_v4_program_instruction_decode( fd_bpf_loader_v4_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6733 : int fd_bpf_loader_v4_program_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6734 : void fd_bpf_loader_v4_program_instruction_decode_unsafe( fd_bpf_loader_v4_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6735 : int fd_bpf_loader_v4_program_instruction_encode( fd_bpf_loader_v4_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
6736 : void fd_bpf_loader_v4_program_instruction_destroy( fd_bpf_loader_v4_program_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
6737 : void fd_bpf_loader_v4_program_instruction_walk( void * w, fd_bpf_loader_v4_program_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6738 : ulong fd_bpf_loader_v4_program_instruction_size( fd_bpf_loader_v4_program_instruction_t const * self );
6739 : ulong fd_bpf_loader_v4_program_instruction_footprint( void );
6740 : ulong fd_bpf_loader_v4_program_instruction_align( void );
6741 :
6742 : FD_FN_PURE uchar fd_bpf_loader_v4_program_instruction_is_write( fd_bpf_loader_v4_program_instruction_t const * self );
6743 : FD_FN_PURE uchar fd_bpf_loader_v4_program_instruction_is_truncate( fd_bpf_loader_v4_program_instruction_t const * self );
6744 : FD_FN_PURE uchar fd_bpf_loader_v4_program_instruction_is_deploy( fd_bpf_loader_v4_program_instruction_t const * self );
6745 : FD_FN_PURE uchar fd_bpf_loader_v4_program_instruction_is_retract( fd_bpf_loader_v4_program_instruction_t const * self );
6746 : FD_FN_PURE uchar fd_bpf_loader_v4_program_instruction_is_transfer_authority( fd_bpf_loader_v4_program_instruction_t const * self );
6747 : enum {
6748 : fd_bpf_loader_v4_program_instruction_enum_write = 0,
6749 : fd_bpf_loader_v4_program_instruction_enum_truncate = 1,
6750 : fd_bpf_loader_v4_program_instruction_enum_deploy = 2,
6751 : fd_bpf_loader_v4_program_instruction_enum_retract = 3,
6752 : fd_bpf_loader_v4_program_instruction_enum_transfer_authority = 4,
6753 : };
6754 : void fd_bpf_upgradeable_loader_program_instruction_write_new( fd_bpf_upgradeable_loader_program_instruction_write_t * self );
6755 : int fd_bpf_upgradeable_loader_program_instruction_write_decode( fd_bpf_upgradeable_loader_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
6756 : int fd_bpf_upgradeable_loader_program_instruction_write_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6757 : void fd_bpf_upgradeable_loader_program_instruction_write_decode_unsafe( fd_bpf_upgradeable_loader_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
6758 : int fd_bpf_upgradeable_loader_program_instruction_write_decode_offsets( fd_bpf_upgradeable_loader_program_instruction_write_off_t * self, fd_bincode_decode_ctx_t * ctx );
6759 : int fd_bpf_upgradeable_loader_program_instruction_write_encode( fd_bpf_upgradeable_loader_program_instruction_write_t const * self, fd_bincode_encode_ctx_t * ctx );
6760 : void fd_bpf_upgradeable_loader_program_instruction_write_destroy( fd_bpf_upgradeable_loader_program_instruction_write_t * self, fd_bincode_destroy_ctx_t * ctx );
6761 : void fd_bpf_upgradeable_loader_program_instruction_write_walk( void * w, fd_bpf_upgradeable_loader_program_instruction_write_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6762 : ulong fd_bpf_upgradeable_loader_program_instruction_write_size( fd_bpf_upgradeable_loader_program_instruction_write_t const * self );
6763 : ulong fd_bpf_upgradeable_loader_program_instruction_write_footprint( void );
6764 : ulong fd_bpf_upgradeable_loader_program_instruction_write_align( void );
6765 :
6766 : void fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_new( fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t * self );
6767 : int fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode( fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t * self, fd_bincode_decode_ctx_t * ctx );
6768 : int fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6769 : void fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_unsafe( fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t * self, fd_bincode_decode_ctx_t * ctx );
6770 : int fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_offsets( fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_off_t * self, fd_bincode_decode_ctx_t * ctx );
6771 : int fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_encode( fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t const * self, fd_bincode_encode_ctx_t * ctx );
6772 : void fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_destroy( fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t * self, fd_bincode_destroy_ctx_t * ctx );
6773 : void fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_walk( void * w, fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6774 : ulong fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_size( fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t const * self );
6775 : ulong fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_footprint( void );
6776 : ulong fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_align( void );
6777 :
6778 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_new( fd_bpf_upgradeable_loader_program_instruction_extend_program_t * self );
6779 : int fd_bpf_upgradeable_loader_program_instruction_extend_program_decode( fd_bpf_upgradeable_loader_program_instruction_extend_program_t * self, fd_bincode_decode_ctx_t * ctx );
6780 : int fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6781 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_unsafe( fd_bpf_upgradeable_loader_program_instruction_extend_program_t * self, fd_bincode_decode_ctx_t * ctx );
6782 : int fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_offsets( fd_bpf_upgradeable_loader_program_instruction_extend_program_off_t * self, fd_bincode_decode_ctx_t * ctx );
6783 : int fd_bpf_upgradeable_loader_program_instruction_extend_program_encode( fd_bpf_upgradeable_loader_program_instruction_extend_program_t const * self, fd_bincode_encode_ctx_t * ctx );
6784 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_destroy( fd_bpf_upgradeable_loader_program_instruction_extend_program_t * self, fd_bincode_destroy_ctx_t * ctx );
6785 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_walk( void * w, fd_bpf_upgradeable_loader_program_instruction_extend_program_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6786 : ulong fd_bpf_upgradeable_loader_program_instruction_extend_program_size( fd_bpf_upgradeable_loader_program_instruction_extend_program_t const * self );
6787 : ulong fd_bpf_upgradeable_loader_program_instruction_extend_program_footprint( void );
6788 : ulong fd_bpf_upgradeable_loader_program_instruction_extend_program_align( void );
6789 :
6790 : void fd_bpf_upgradeable_loader_program_instruction_new_disc( fd_bpf_upgradeable_loader_program_instruction_t * self, uint discriminant );
6791 : void fd_bpf_upgradeable_loader_program_instruction_new( fd_bpf_upgradeable_loader_program_instruction_t * self );
6792 : int fd_bpf_upgradeable_loader_program_instruction_decode( fd_bpf_upgradeable_loader_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6793 : int fd_bpf_upgradeable_loader_program_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6794 : void fd_bpf_upgradeable_loader_program_instruction_decode_unsafe( fd_bpf_upgradeable_loader_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
6795 : int fd_bpf_upgradeable_loader_program_instruction_encode( fd_bpf_upgradeable_loader_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
6796 : void fd_bpf_upgradeable_loader_program_instruction_destroy( fd_bpf_upgradeable_loader_program_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
6797 : void fd_bpf_upgradeable_loader_program_instruction_walk( void * w, fd_bpf_upgradeable_loader_program_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6798 : ulong fd_bpf_upgradeable_loader_program_instruction_size( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6799 : ulong fd_bpf_upgradeable_loader_program_instruction_footprint( void );
6800 : ulong fd_bpf_upgradeable_loader_program_instruction_align( void );
6801 :
6802 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_initialize_buffer( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6803 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_write( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6804 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_deploy_with_max_data_len( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6805 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_upgrade( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6806 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_set_authority( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6807 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_close( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6808 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_extend_program( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6809 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_set_authority_checked( fd_bpf_upgradeable_loader_program_instruction_t const * self );
6810 : enum {
6811 : fd_bpf_upgradeable_loader_program_instruction_enum_initialize_buffer = 0,
6812 : fd_bpf_upgradeable_loader_program_instruction_enum_write = 1,
6813 : fd_bpf_upgradeable_loader_program_instruction_enum_deploy_with_max_data_len = 2,
6814 : fd_bpf_upgradeable_loader_program_instruction_enum_upgrade = 3,
6815 : fd_bpf_upgradeable_loader_program_instruction_enum_set_authority = 4,
6816 : fd_bpf_upgradeable_loader_program_instruction_enum_close = 5,
6817 : fd_bpf_upgradeable_loader_program_instruction_enum_extend_program = 6,
6818 : fd_bpf_upgradeable_loader_program_instruction_enum_set_authority_checked = 7,
6819 : };
6820 : void fd_bpf_upgradeable_loader_state_buffer_new( fd_bpf_upgradeable_loader_state_buffer_t * self );
6821 : int fd_bpf_upgradeable_loader_state_buffer_decode( fd_bpf_upgradeable_loader_state_buffer_t * self, fd_bincode_decode_ctx_t * ctx );
6822 : int fd_bpf_upgradeable_loader_state_buffer_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6823 : void fd_bpf_upgradeable_loader_state_buffer_decode_unsafe( fd_bpf_upgradeable_loader_state_buffer_t * self, fd_bincode_decode_ctx_t * ctx );
6824 : int fd_bpf_upgradeable_loader_state_buffer_decode_offsets( fd_bpf_upgradeable_loader_state_buffer_off_t * self, fd_bincode_decode_ctx_t * ctx );
6825 : int fd_bpf_upgradeable_loader_state_buffer_encode( fd_bpf_upgradeable_loader_state_buffer_t const * self, fd_bincode_encode_ctx_t * ctx );
6826 : void fd_bpf_upgradeable_loader_state_buffer_destroy( fd_bpf_upgradeable_loader_state_buffer_t * self, fd_bincode_destroy_ctx_t * ctx );
6827 : void fd_bpf_upgradeable_loader_state_buffer_walk( void * w, fd_bpf_upgradeable_loader_state_buffer_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6828 : ulong fd_bpf_upgradeable_loader_state_buffer_size( fd_bpf_upgradeable_loader_state_buffer_t const * self );
6829 : ulong fd_bpf_upgradeable_loader_state_buffer_footprint( void );
6830 : ulong fd_bpf_upgradeable_loader_state_buffer_align( void );
6831 :
6832 : void fd_bpf_upgradeable_loader_state_program_new( fd_bpf_upgradeable_loader_state_program_t * self );
6833 : int fd_bpf_upgradeable_loader_state_program_decode( fd_bpf_upgradeable_loader_state_program_t * self, fd_bincode_decode_ctx_t * ctx );
6834 : int fd_bpf_upgradeable_loader_state_program_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6835 : void fd_bpf_upgradeable_loader_state_program_decode_unsafe( fd_bpf_upgradeable_loader_state_program_t * self, fd_bincode_decode_ctx_t * ctx );
6836 : int fd_bpf_upgradeable_loader_state_program_decode_offsets( fd_bpf_upgradeable_loader_state_program_off_t * self, fd_bincode_decode_ctx_t * ctx );
6837 : int fd_bpf_upgradeable_loader_state_program_encode( fd_bpf_upgradeable_loader_state_program_t const * self, fd_bincode_encode_ctx_t * ctx );
6838 : void fd_bpf_upgradeable_loader_state_program_destroy( fd_bpf_upgradeable_loader_state_program_t * self, fd_bincode_destroy_ctx_t * ctx );
6839 : void fd_bpf_upgradeable_loader_state_program_walk( void * w, fd_bpf_upgradeable_loader_state_program_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6840 : ulong fd_bpf_upgradeable_loader_state_program_size( fd_bpf_upgradeable_loader_state_program_t const * self );
6841 : ulong fd_bpf_upgradeable_loader_state_program_footprint( void );
6842 : ulong fd_bpf_upgradeable_loader_state_program_align( void );
6843 :
6844 : void fd_bpf_upgradeable_loader_state_program_data_new( fd_bpf_upgradeable_loader_state_program_data_t * self );
6845 : int fd_bpf_upgradeable_loader_state_program_data_decode( fd_bpf_upgradeable_loader_state_program_data_t * self, fd_bincode_decode_ctx_t * ctx );
6846 : int fd_bpf_upgradeable_loader_state_program_data_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6847 : void fd_bpf_upgradeable_loader_state_program_data_decode_unsafe( fd_bpf_upgradeable_loader_state_program_data_t * self, fd_bincode_decode_ctx_t * ctx );
6848 : int fd_bpf_upgradeable_loader_state_program_data_decode_offsets( fd_bpf_upgradeable_loader_state_program_data_off_t * self, fd_bincode_decode_ctx_t * ctx );
6849 : int fd_bpf_upgradeable_loader_state_program_data_encode( fd_bpf_upgradeable_loader_state_program_data_t const * self, fd_bincode_encode_ctx_t * ctx );
6850 : void fd_bpf_upgradeable_loader_state_program_data_destroy( fd_bpf_upgradeable_loader_state_program_data_t * self, fd_bincode_destroy_ctx_t * ctx );
6851 : void fd_bpf_upgradeable_loader_state_program_data_walk( void * w, fd_bpf_upgradeable_loader_state_program_data_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6852 : ulong fd_bpf_upgradeable_loader_state_program_data_size( fd_bpf_upgradeable_loader_state_program_data_t const * self );
6853 : ulong fd_bpf_upgradeable_loader_state_program_data_footprint( void );
6854 : ulong fd_bpf_upgradeable_loader_state_program_data_align( void );
6855 :
6856 : void fd_bpf_upgradeable_loader_state_new_disc( fd_bpf_upgradeable_loader_state_t * self, uint discriminant );
6857 : void fd_bpf_upgradeable_loader_state_new( fd_bpf_upgradeable_loader_state_t * self );
6858 : int fd_bpf_upgradeable_loader_state_decode( fd_bpf_upgradeable_loader_state_t * self, fd_bincode_decode_ctx_t * ctx );
6859 : int fd_bpf_upgradeable_loader_state_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6860 : void fd_bpf_upgradeable_loader_state_decode_unsafe( fd_bpf_upgradeable_loader_state_t * self, fd_bincode_decode_ctx_t * ctx );
6861 : int fd_bpf_upgradeable_loader_state_encode( fd_bpf_upgradeable_loader_state_t const * self, fd_bincode_encode_ctx_t * ctx );
6862 : void fd_bpf_upgradeable_loader_state_destroy( fd_bpf_upgradeable_loader_state_t * self, fd_bincode_destroy_ctx_t * ctx );
6863 : void fd_bpf_upgradeable_loader_state_walk( void * w, fd_bpf_upgradeable_loader_state_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6864 : ulong fd_bpf_upgradeable_loader_state_size( fd_bpf_upgradeable_loader_state_t const * self );
6865 : ulong fd_bpf_upgradeable_loader_state_footprint( void );
6866 : ulong fd_bpf_upgradeable_loader_state_align( void );
6867 :
6868 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_uninitialized( fd_bpf_upgradeable_loader_state_t const * self );
6869 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_buffer( fd_bpf_upgradeable_loader_state_t const * self );
6870 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_program( fd_bpf_upgradeable_loader_state_t const * self );
6871 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_program_data( fd_bpf_upgradeable_loader_state_t const * self );
6872 : enum {
6873 : fd_bpf_upgradeable_loader_state_enum_uninitialized = 0,
6874 : fd_bpf_upgradeable_loader_state_enum_buffer = 1,
6875 : fd_bpf_upgradeable_loader_state_enum_program = 2,
6876 : fd_bpf_upgradeable_loader_state_enum_program_data = 3,
6877 : };
6878 : void fd_frozen_hash_status_new( fd_frozen_hash_status_t * self );
6879 : int fd_frozen_hash_status_decode( fd_frozen_hash_status_t * self, fd_bincode_decode_ctx_t * ctx );
6880 : int fd_frozen_hash_status_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6881 : void fd_frozen_hash_status_decode_unsafe( fd_frozen_hash_status_t * self, fd_bincode_decode_ctx_t * ctx );
6882 : int fd_frozen_hash_status_decode_offsets( fd_frozen_hash_status_off_t * self, fd_bincode_decode_ctx_t * ctx );
6883 : int fd_frozen_hash_status_encode( fd_frozen_hash_status_t const * self, fd_bincode_encode_ctx_t * ctx );
6884 : void fd_frozen_hash_status_destroy( fd_frozen_hash_status_t * self, fd_bincode_destroy_ctx_t * ctx );
6885 : void fd_frozen_hash_status_walk( void * w, fd_frozen_hash_status_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6886 : ulong fd_frozen_hash_status_size( fd_frozen_hash_status_t const * self );
6887 : ulong fd_frozen_hash_status_footprint( void );
6888 : ulong fd_frozen_hash_status_align( void );
6889 :
6890 : void fd_frozen_hash_versioned_new_disc( fd_frozen_hash_versioned_t * self, uint discriminant );
6891 : void fd_frozen_hash_versioned_new( fd_frozen_hash_versioned_t * self );
6892 : int fd_frozen_hash_versioned_decode( fd_frozen_hash_versioned_t * self, fd_bincode_decode_ctx_t * ctx );
6893 : int fd_frozen_hash_versioned_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6894 : void fd_frozen_hash_versioned_decode_unsafe( fd_frozen_hash_versioned_t * self, fd_bincode_decode_ctx_t * ctx );
6895 : int fd_frozen_hash_versioned_encode( fd_frozen_hash_versioned_t const * self, fd_bincode_encode_ctx_t * ctx );
6896 : void fd_frozen_hash_versioned_destroy( fd_frozen_hash_versioned_t * self, fd_bincode_destroy_ctx_t * ctx );
6897 : void fd_frozen_hash_versioned_walk( void * w, fd_frozen_hash_versioned_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6898 : ulong fd_frozen_hash_versioned_size( fd_frozen_hash_versioned_t const * self );
6899 : ulong fd_frozen_hash_versioned_footprint( void );
6900 : ulong fd_frozen_hash_versioned_align( void );
6901 :
6902 : FD_FN_PURE uchar fd_frozen_hash_versioned_is_current( fd_frozen_hash_versioned_t const * self );
6903 : enum {
6904 : fd_frozen_hash_versioned_enum_current = 0,
6905 : };
6906 : void fd_lookup_table_meta_new( fd_lookup_table_meta_t * self );
6907 : int fd_lookup_table_meta_decode( fd_lookup_table_meta_t * self, fd_bincode_decode_ctx_t * ctx );
6908 : int fd_lookup_table_meta_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6909 : void fd_lookup_table_meta_decode_unsafe( fd_lookup_table_meta_t * self, fd_bincode_decode_ctx_t * ctx );
6910 : int fd_lookup_table_meta_decode_offsets( fd_lookup_table_meta_off_t * self, fd_bincode_decode_ctx_t * ctx );
6911 : int fd_lookup_table_meta_encode( fd_lookup_table_meta_t const * self, fd_bincode_encode_ctx_t * ctx );
6912 : void fd_lookup_table_meta_destroy( fd_lookup_table_meta_t * self, fd_bincode_destroy_ctx_t * ctx );
6913 : void fd_lookup_table_meta_walk( void * w, fd_lookup_table_meta_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6914 : ulong fd_lookup_table_meta_size( fd_lookup_table_meta_t const * self );
6915 : ulong fd_lookup_table_meta_footprint( void );
6916 : ulong fd_lookup_table_meta_align( void );
6917 :
6918 : void fd_address_lookup_table_new( fd_address_lookup_table_t * self );
6919 : int fd_address_lookup_table_decode( fd_address_lookup_table_t * self, fd_bincode_decode_ctx_t * ctx );
6920 : int fd_address_lookup_table_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6921 : void fd_address_lookup_table_decode_unsafe( fd_address_lookup_table_t * self, fd_bincode_decode_ctx_t * ctx );
6922 : int fd_address_lookup_table_decode_offsets( fd_address_lookup_table_off_t * self, fd_bincode_decode_ctx_t * ctx );
6923 : int fd_address_lookup_table_encode( fd_address_lookup_table_t const * self, fd_bincode_encode_ctx_t * ctx );
6924 : void fd_address_lookup_table_destroy( fd_address_lookup_table_t * self, fd_bincode_destroy_ctx_t * ctx );
6925 : void fd_address_lookup_table_walk( void * w, fd_address_lookup_table_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6926 : ulong fd_address_lookup_table_size( fd_address_lookup_table_t const * self );
6927 : ulong fd_address_lookup_table_footprint( void );
6928 : ulong fd_address_lookup_table_align( void );
6929 :
6930 : void fd_address_lookup_table_state_new_disc( fd_address_lookup_table_state_t * self, uint discriminant );
6931 : void fd_address_lookup_table_state_new( fd_address_lookup_table_state_t * self );
6932 : int fd_address_lookup_table_state_decode( fd_address_lookup_table_state_t * self, fd_bincode_decode_ctx_t * ctx );
6933 : int fd_address_lookup_table_state_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6934 : void fd_address_lookup_table_state_decode_unsafe( fd_address_lookup_table_state_t * self, fd_bincode_decode_ctx_t * ctx );
6935 : int fd_address_lookup_table_state_encode( fd_address_lookup_table_state_t const * self, fd_bincode_encode_ctx_t * ctx );
6936 : void fd_address_lookup_table_state_destroy( fd_address_lookup_table_state_t * self, fd_bincode_destroy_ctx_t * ctx );
6937 : void fd_address_lookup_table_state_walk( void * w, fd_address_lookup_table_state_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6938 : ulong fd_address_lookup_table_state_size( fd_address_lookup_table_state_t const * self );
6939 : ulong fd_address_lookup_table_state_footprint( void );
6940 : ulong fd_address_lookup_table_state_align( void );
6941 :
6942 : FD_FN_PURE uchar fd_address_lookup_table_state_is_uninitialized( fd_address_lookup_table_state_t const * self );
6943 : FD_FN_PURE uchar fd_address_lookup_table_state_is_lookup_table( fd_address_lookup_table_state_t const * self );
6944 : enum {
6945 : fd_address_lookup_table_state_enum_uninitialized = 0,
6946 : fd_address_lookup_table_state_enum_lookup_table = 1,
6947 : };
6948 : void fd_gossip_bitvec_u8_inner_new( fd_gossip_bitvec_u8_inner_t * self );
6949 : int fd_gossip_bitvec_u8_inner_decode( fd_gossip_bitvec_u8_inner_t * self, fd_bincode_decode_ctx_t * ctx );
6950 : int fd_gossip_bitvec_u8_inner_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6951 : void fd_gossip_bitvec_u8_inner_decode_unsafe( fd_gossip_bitvec_u8_inner_t * self, fd_bincode_decode_ctx_t * ctx );
6952 : int fd_gossip_bitvec_u8_inner_decode_offsets( fd_gossip_bitvec_u8_inner_off_t * self, fd_bincode_decode_ctx_t * ctx );
6953 : int fd_gossip_bitvec_u8_inner_encode( fd_gossip_bitvec_u8_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
6954 : void fd_gossip_bitvec_u8_inner_destroy( fd_gossip_bitvec_u8_inner_t * self, fd_bincode_destroy_ctx_t * ctx );
6955 : void fd_gossip_bitvec_u8_inner_walk( void * w, fd_gossip_bitvec_u8_inner_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6956 : ulong fd_gossip_bitvec_u8_inner_size( fd_gossip_bitvec_u8_inner_t const * self );
6957 : ulong fd_gossip_bitvec_u8_inner_footprint( void );
6958 : ulong fd_gossip_bitvec_u8_inner_align( void );
6959 :
6960 : void fd_gossip_bitvec_u8_new( fd_gossip_bitvec_u8_t * self );
6961 : int fd_gossip_bitvec_u8_decode( fd_gossip_bitvec_u8_t * self, fd_bincode_decode_ctx_t * ctx );
6962 : int fd_gossip_bitvec_u8_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6963 : void fd_gossip_bitvec_u8_decode_unsafe( fd_gossip_bitvec_u8_t * self, fd_bincode_decode_ctx_t * ctx );
6964 : int fd_gossip_bitvec_u8_decode_offsets( fd_gossip_bitvec_u8_off_t * self, fd_bincode_decode_ctx_t * ctx );
6965 : int fd_gossip_bitvec_u8_encode( fd_gossip_bitvec_u8_t const * self, fd_bincode_encode_ctx_t * ctx );
6966 : void fd_gossip_bitvec_u8_destroy( fd_gossip_bitvec_u8_t * self, fd_bincode_destroy_ctx_t * ctx );
6967 : void fd_gossip_bitvec_u8_walk( void * w, fd_gossip_bitvec_u8_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6968 : ulong fd_gossip_bitvec_u8_size( fd_gossip_bitvec_u8_t const * self );
6969 : ulong fd_gossip_bitvec_u8_footprint( void );
6970 : ulong fd_gossip_bitvec_u8_align( void );
6971 :
6972 : void fd_gossip_bitvec_u64_inner_new( fd_gossip_bitvec_u64_inner_t * self );
6973 : int fd_gossip_bitvec_u64_inner_decode( fd_gossip_bitvec_u64_inner_t * self, fd_bincode_decode_ctx_t * ctx );
6974 : int fd_gossip_bitvec_u64_inner_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6975 : void fd_gossip_bitvec_u64_inner_decode_unsafe( fd_gossip_bitvec_u64_inner_t * self, fd_bincode_decode_ctx_t * ctx );
6976 : int fd_gossip_bitvec_u64_inner_decode_offsets( fd_gossip_bitvec_u64_inner_off_t * self, fd_bincode_decode_ctx_t * ctx );
6977 : int fd_gossip_bitvec_u64_inner_encode( fd_gossip_bitvec_u64_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
6978 : void fd_gossip_bitvec_u64_inner_destroy( fd_gossip_bitvec_u64_inner_t * self, fd_bincode_destroy_ctx_t * ctx );
6979 : void fd_gossip_bitvec_u64_inner_walk( void * w, fd_gossip_bitvec_u64_inner_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6980 : ulong fd_gossip_bitvec_u64_inner_size( fd_gossip_bitvec_u64_inner_t const * self );
6981 : ulong fd_gossip_bitvec_u64_inner_footprint( void );
6982 : ulong fd_gossip_bitvec_u64_inner_align( void );
6983 :
6984 : void fd_gossip_bitvec_u64_new( fd_gossip_bitvec_u64_t * self );
6985 : int fd_gossip_bitvec_u64_decode( fd_gossip_bitvec_u64_t * self, fd_bincode_decode_ctx_t * ctx );
6986 : int fd_gossip_bitvec_u64_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6987 : void fd_gossip_bitvec_u64_decode_unsafe( fd_gossip_bitvec_u64_t * self, fd_bincode_decode_ctx_t * ctx );
6988 : int fd_gossip_bitvec_u64_decode_offsets( fd_gossip_bitvec_u64_off_t * self, fd_bincode_decode_ctx_t * ctx );
6989 : int fd_gossip_bitvec_u64_encode( fd_gossip_bitvec_u64_t const * self, fd_bincode_encode_ctx_t * ctx );
6990 : void fd_gossip_bitvec_u64_destroy( fd_gossip_bitvec_u64_t * self, fd_bincode_destroy_ctx_t * ctx );
6991 : void fd_gossip_bitvec_u64_walk( void * w, fd_gossip_bitvec_u64_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6992 : ulong fd_gossip_bitvec_u64_size( fd_gossip_bitvec_u64_t const * self );
6993 : ulong fd_gossip_bitvec_u64_footprint( void );
6994 : ulong fd_gossip_bitvec_u64_align( void );
6995 :
6996 : void fd_gossip_ping_new( fd_gossip_ping_t * self );
6997 : int fd_gossip_ping_decode( fd_gossip_ping_t * self, fd_bincode_decode_ctx_t * ctx );
6998 : int fd_gossip_ping_decode_preflight( fd_bincode_decode_ctx_t * ctx );
6999 : void fd_gossip_ping_decode_unsafe( fd_gossip_ping_t * self, fd_bincode_decode_ctx_t * ctx );
7000 : int fd_gossip_ping_decode_offsets( fd_gossip_ping_off_t * self, fd_bincode_decode_ctx_t * ctx );
7001 : int fd_gossip_ping_encode( fd_gossip_ping_t const * self, fd_bincode_encode_ctx_t * ctx );
7002 : void fd_gossip_ping_destroy( fd_gossip_ping_t * self, fd_bincode_destroy_ctx_t * ctx );
7003 : void fd_gossip_ping_walk( void * w, fd_gossip_ping_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7004 : ulong fd_gossip_ping_size( fd_gossip_ping_t const * self );
7005 : ulong fd_gossip_ping_footprint( void );
7006 : ulong fd_gossip_ping_align( void );
7007 :
7008 : void fd_gossip_ip_addr_new_disc( fd_gossip_ip_addr_t * self, uint discriminant );
7009 : void fd_gossip_ip_addr_new( fd_gossip_ip_addr_t * self );
7010 : int fd_gossip_ip_addr_decode( fd_gossip_ip_addr_t * self, fd_bincode_decode_ctx_t * ctx );
7011 : int fd_gossip_ip_addr_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7012 : void fd_gossip_ip_addr_decode_unsafe( fd_gossip_ip_addr_t * self, fd_bincode_decode_ctx_t * ctx );
7013 : int fd_gossip_ip_addr_encode( fd_gossip_ip_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
7014 : void fd_gossip_ip_addr_destroy( fd_gossip_ip_addr_t * self, fd_bincode_destroy_ctx_t * ctx );
7015 : void fd_gossip_ip_addr_walk( void * w, fd_gossip_ip_addr_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7016 : ulong fd_gossip_ip_addr_size( fd_gossip_ip_addr_t const * self );
7017 : ulong fd_gossip_ip_addr_footprint( void );
7018 : ulong fd_gossip_ip_addr_align( void );
7019 :
7020 : FD_FN_PURE uchar fd_gossip_ip_addr_is_ip4( fd_gossip_ip_addr_t const * self );
7021 : FD_FN_PURE uchar fd_gossip_ip_addr_is_ip6( fd_gossip_ip_addr_t const * self );
7022 : enum {
7023 : fd_gossip_ip_addr_enum_ip4 = 0,
7024 : fd_gossip_ip_addr_enum_ip6 = 1,
7025 : };
7026 : void fd_gossip_prune_data_new( fd_gossip_prune_data_t * self );
7027 : int fd_gossip_prune_data_decode( fd_gossip_prune_data_t * self, fd_bincode_decode_ctx_t * ctx );
7028 : int fd_gossip_prune_data_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7029 : void fd_gossip_prune_data_decode_unsafe( fd_gossip_prune_data_t * self, fd_bincode_decode_ctx_t * ctx );
7030 : int fd_gossip_prune_data_decode_offsets( fd_gossip_prune_data_off_t * self, fd_bincode_decode_ctx_t * ctx );
7031 : int fd_gossip_prune_data_encode( fd_gossip_prune_data_t const * self, fd_bincode_encode_ctx_t * ctx );
7032 : void fd_gossip_prune_data_destroy( fd_gossip_prune_data_t * self, fd_bincode_destroy_ctx_t * ctx );
7033 : void fd_gossip_prune_data_walk( void * w, fd_gossip_prune_data_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7034 : ulong fd_gossip_prune_data_size( fd_gossip_prune_data_t const * self );
7035 : ulong fd_gossip_prune_data_footprint( void );
7036 : ulong fd_gossip_prune_data_align( void );
7037 :
7038 : void fd_gossip_prune_sign_data_new( fd_gossip_prune_sign_data_t * self );
7039 : int fd_gossip_prune_sign_data_decode( fd_gossip_prune_sign_data_t * self, fd_bincode_decode_ctx_t * ctx );
7040 : int fd_gossip_prune_sign_data_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7041 : void fd_gossip_prune_sign_data_decode_unsafe( fd_gossip_prune_sign_data_t * self, fd_bincode_decode_ctx_t * ctx );
7042 : int fd_gossip_prune_sign_data_decode_offsets( fd_gossip_prune_sign_data_off_t * self, fd_bincode_decode_ctx_t * ctx );
7043 : int fd_gossip_prune_sign_data_encode( fd_gossip_prune_sign_data_t const * self, fd_bincode_encode_ctx_t * ctx );
7044 : void fd_gossip_prune_sign_data_destroy( fd_gossip_prune_sign_data_t * self, fd_bincode_destroy_ctx_t * ctx );
7045 : void fd_gossip_prune_sign_data_walk( void * w, fd_gossip_prune_sign_data_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7046 : ulong fd_gossip_prune_sign_data_size( fd_gossip_prune_sign_data_t const * self );
7047 : ulong fd_gossip_prune_sign_data_footprint( void );
7048 : ulong fd_gossip_prune_sign_data_align( void );
7049 :
7050 : void fd_gossip_socket_addr_new( fd_gossip_socket_addr_t * self );
7051 : int fd_gossip_socket_addr_decode( fd_gossip_socket_addr_t * self, fd_bincode_decode_ctx_t * ctx );
7052 : int fd_gossip_socket_addr_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7053 : void fd_gossip_socket_addr_decode_unsafe( fd_gossip_socket_addr_t * self, fd_bincode_decode_ctx_t * ctx );
7054 : int fd_gossip_socket_addr_decode_offsets( fd_gossip_socket_addr_off_t * self, fd_bincode_decode_ctx_t * ctx );
7055 : int fd_gossip_socket_addr_encode( fd_gossip_socket_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
7056 : void fd_gossip_socket_addr_destroy( fd_gossip_socket_addr_t * self, fd_bincode_destroy_ctx_t * ctx );
7057 : void fd_gossip_socket_addr_walk( void * w, fd_gossip_socket_addr_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7058 : ulong fd_gossip_socket_addr_size( fd_gossip_socket_addr_t const * self );
7059 : ulong fd_gossip_socket_addr_footprint( void );
7060 : ulong fd_gossip_socket_addr_align( void );
7061 :
7062 : void fd_gossip_contact_info_v1_new( fd_gossip_contact_info_v1_t * self );
7063 : int fd_gossip_contact_info_v1_decode( fd_gossip_contact_info_v1_t * self, fd_bincode_decode_ctx_t * ctx );
7064 : int fd_gossip_contact_info_v1_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7065 : void fd_gossip_contact_info_v1_decode_unsafe( fd_gossip_contact_info_v1_t * self, fd_bincode_decode_ctx_t * ctx );
7066 : int fd_gossip_contact_info_v1_decode_offsets( fd_gossip_contact_info_v1_off_t * self, fd_bincode_decode_ctx_t * ctx );
7067 : int fd_gossip_contact_info_v1_encode( fd_gossip_contact_info_v1_t const * self, fd_bincode_encode_ctx_t * ctx );
7068 : void fd_gossip_contact_info_v1_destroy( fd_gossip_contact_info_v1_t * self, fd_bincode_destroy_ctx_t * ctx );
7069 : void fd_gossip_contact_info_v1_walk( void * w, fd_gossip_contact_info_v1_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7070 : ulong fd_gossip_contact_info_v1_size( fd_gossip_contact_info_v1_t const * self );
7071 : ulong fd_gossip_contact_info_v1_footprint( void );
7072 : ulong fd_gossip_contact_info_v1_align( void );
7073 :
7074 : void fd_gossip_vote_new( fd_gossip_vote_t * self );
7075 : int fd_gossip_vote_decode( fd_gossip_vote_t * self, fd_bincode_decode_ctx_t * ctx );
7076 : int fd_gossip_vote_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7077 : void fd_gossip_vote_decode_unsafe( fd_gossip_vote_t * self, fd_bincode_decode_ctx_t * ctx );
7078 : int fd_gossip_vote_decode_offsets( fd_gossip_vote_off_t * self, fd_bincode_decode_ctx_t * ctx );
7079 : int fd_gossip_vote_encode( fd_gossip_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
7080 : void fd_gossip_vote_destroy( fd_gossip_vote_t * self, fd_bincode_destroy_ctx_t * ctx );
7081 : void fd_gossip_vote_walk( void * w, fd_gossip_vote_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7082 : ulong fd_gossip_vote_size( fd_gossip_vote_t const * self );
7083 : ulong fd_gossip_vote_footprint( void );
7084 : ulong fd_gossip_vote_align( void );
7085 :
7086 : void fd_gossip_lowest_slot_new( fd_gossip_lowest_slot_t * self );
7087 : int fd_gossip_lowest_slot_decode( fd_gossip_lowest_slot_t * self, fd_bincode_decode_ctx_t * ctx );
7088 : int fd_gossip_lowest_slot_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7089 : void fd_gossip_lowest_slot_decode_unsafe( fd_gossip_lowest_slot_t * self, fd_bincode_decode_ctx_t * ctx );
7090 : int fd_gossip_lowest_slot_decode_offsets( fd_gossip_lowest_slot_off_t * self, fd_bincode_decode_ctx_t * ctx );
7091 : int fd_gossip_lowest_slot_encode( fd_gossip_lowest_slot_t const * self, fd_bincode_encode_ctx_t * ctx );
7092 : void fd_gossip_lowest_slot_destroy( fd_gossip_lowest_slot_t * self, fd_bincode_destroy_ctx_t * ctx );
7093 : void fd_gossip_lowest_slot_walk( void * w, fd_gossip_lowest_slot_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7094 : ulong fd_gossip_lowest_slot_size( fd_gossip_lowest_slot_t const * self );
7095 : ulong fd_gossip_lowest_slot_footprint( void );
7096 : ulong fd_gossip_lowest_slot_align( void );
7097 :
7098 : void fd_gossip_slot_hashes_new( fd_gossip_slot_hashes_t * self );
7099 : int fd_gossip_slot_hashes_decode( fd_gossip_slot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7100 : int fd_gossip_slot_hashes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7101 : void fd_gossip_slot_hashes_decode_unsafe( fd_gossip_slot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7102 : int fd_gossip_slot_hashes_decode_offsets( fd_gossip_slot_hashes_off_t * self, fd_bincode_decode_ctx_t * ctx );
7103 : int fd_gossip_slot_hashes_encode( fd_gossip_slot_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
7104 : void fd_gossip_slot_hashes_destroy( fd_gossip_slot_hashes_t * self, fd_bincode_destroy_ctx_t * ctx );
7105 : void fd_gossip_slot_hashes_walk( void * w, fd_gossip_slot_hashes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7106 : ulong fd_gossip_slot_hashes_size( fd_gossip_slot_hashes_t const * self );
7107 : ulong fd_gossip_slot_hashes_footprint( void );
7108 : ulong fd_gossip_slot_hashes_align( void );
7109 :
7110 : void fd_gossip_slots_new( fd_gossip_slots_t * self );
7111 : int fd_gossip_slots_decode( fd_gossip_slots_t * self, fd_bincode_decode_ctx_t * ctx );
7112 : int fd_gossip_slots_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7113 : void fd_gossip_slots_decode_unsafe( fd_gossip_slots_t * self, fd_bincode_decode_ctx_t * ctx );
7114 : int fd_gossip_slots_decode_offsets( fd_gossip_slots_off_t * self, fd_bincode_decode_ctx_t * ctx );
7115 : int fd_gossip_slots_encode( fd_gossip_slots_t const * self, fd_bincode_encode_ctx_t * ctx );
7116 : void fd_gossip_slots_destroy( fd_gossip_slots_t * self, fd_bincode_destroy_ctx_t * ctx );
7117 : void fd_gossip_slots_walk( void * w, fd_gossip_slots_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7118 : ulong fd_gossip_slots_size( fd_gossip_slots_t const * self );
7119 : ulong fd_gossip_slots_footprint( void );
7120 : ulong fd_gossip_slots_align( void );
7121 :
7122 : void fd_gossip_flate2_slots_new( fd_gossip_flate2_slots_t * self );
7123 : int fd_gossip_flate2_slots_decode( fd_gossip_flate2_slots_t * self, fd_bincode_decode_ctx_t * ctx );
7124 : int fd_gossip_flate2_slots_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7125 : void fd_gossip_flate2_slots_decode_unsafe( fd_gossip_flate2_slots_t * self, fd_bincode_decode_ctx_t * ctx );
7126 : int fd_gossip_flate2_slots_decode_offsets( fd_gossip_flate2_slots_off_t * self, fd_bincode_decode_ctx_t * ctx );
7127 : int fd_gossip_flate2_slots_encode( fd_gossip_flate2_slots_t const * self, fd_bincode_encode_ctx_t * ctx );
7128 : void fd_gossip_flate2_slots_destroy( fd_gossip_flate2_slots_t * self, fd_bincode_destroy_ctx_t * ctx );
7129 : void fd_gossip_flate2_slots_walk( void * w, fd_gossip_flate2_slots_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7130 : ulong fd_gossip_flate2_slots_size( fd_gossip_flate2_slots_t const * self );
7131 : ulong fd_gossip_flate2_slots_footprint( void );
7132 : ulong fd_gossip_flate2_slots_align( void );
7133 :
7134 : void fd_gossip_slots_enum_new_disc( fd_gossip_slots_enum_t * self, uint discriminant );
7135 : void fd_gossip_slots_enum_new( fd_gossip_slots_enum_t * self );
7136 : int fd_gossip_slots_enum_decode( fd_gossip_slots_enum_t * self, fd_bincode_decode_ctx_t * ctx );
7137 : int fd_gossip_slots_enum_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7138 : void fd_gossip_slots_enum_decode_unsafe( fd_gossip_slots_enum_t * self, fd_bincode_decode_ctx_t * ctx );
7139 : int fd_gossip_slots_enum_encode( fd_gossip_slots_enum_t const * self, fd_bincode_encode_ctx_t * ctx );
7140 : void fd_gossip_slots_enum_destroy( fd_gossip_slots_enum_t * self, fd_bincode_destroy_ctx_t * ctx );
7141 : void fd_gossip_slots_enum_walk( void * w, fd_gossip_slots_enum_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7142 : ulong fd_gossip_slots_enum_size( fd_gossip_slots_enum_t const * self );
7143 : ulong fd_gossip_slots_enum_footprint( void );
7144 : ulong fd_gossip_slots_enum_align( void );
7145 :
7146 : FD_FN_PURE uchar fd_gossip_slots_enum_is_flate2( fd_gossip_slots_enum_t const * self );
7147 : FD_FN_PURE uchar fd_gossip_slots_enum_is_uncompressed( fd_gossip_slots_enum_t const * self );
7148 : enum {
7149 : fd_gossip_slots_enum_enum_flate2 = 0,
7150 : fd_gossip_slots_enum_enum_uncompressed = 1,
7151 : };
7152 : void fd_gossip_epoch_slots_new( fd_gossip_epoch_slots_t * self );
7153 : int fd_gossip_epoch_slots_decode( fd_gossip_epoch_slots_t * self, fd_bincode_decode_ctx_t * ctx );
7154 : int fd_gossip_epoch_slots_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7155 : void fd_gossip_epoch_slots_decode_unsafe( fd_gossip_epoch_slots_t * self, fd_bincode_decode_ctx_t * ctx );
7156 : int fd_gossip_epoch_slots_decode_offsets( fd_gossip_epoch_slots_off_t * self, fd_bincode_decode_ctx_t * ctx );
7157 : int fd_gossip_epoch_slots_encode( fd_gossip_epoch_slots_t const * self, fd_bincode_encode_ctx_t * ctx );
7158 : void fd_gossip_epoch_slots_destroy( fd_gossip_epoch_slots_t * self, fd_bincode_destroy_ctx_t * ctx );
7159 : void fd_gossip_epoch_slots_walk( void * w, fd_gossip_epoch_slots_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7160 : ulong fd_gossip_epoch_slots_size( fd_gossip_epoch_slots_t const * self );
7161 : ulong fd_gossip_epoch_slots_footprint( void );
7162 : ulong fd_gossip_epoch_slots_align( void );
7163 :
7164 : void fd_gossip_version_v1_new( fd_gossip_version_v1_t * self );
7165 : int fd_gossip_version_v1_decode( fd_gossip_version_v1_t * self, fd_bincode_decode_ctx_t * ctx );
7166 : int fd_gossip_version_v1_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7167 : void fd_gossip_version_v1_decode_unsafe( fd_gossip_version_v1_t * self, fd_bincode_decode_ctx_t * ctx );
7168 : int fd_gossip_version_v1_decode_offsets( fd_gossip_version_v1_off_t * self, fd_bincode_decode_ctx_t * ctx );
7169 : int fd_gossip_version_v1_encode( fd_gossip_version_v1_t const * self, fd_bincode_encode_ctx_t * ctx );
7170 : void fd_gossip_version_v1_destroy( fd_gossip_version_v1_t * self, fd_bincode_destroy_ctx_t * ctx );
7171 : void fd_gossip_version_v1_walk( void * w, fd_gossip_version_v1_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7172 : ulong fd_gossip_version_v1_size( fd_gossip_version_v1_t const * self );
7173 : ulong fd_gossip_version_v1_footprint( void );
7174 : ulong fd_gossip_version_v1_align( void );
7175 :
7176 : void fd_gossip_version_v2_new( fd_gossip_version_v2_t * self );
7177 : int fd_gossip_version_v2_decode( fd_gossip_version_v2_t * self, fd_bincode_decode_ctx_t * ctx );
7178 : int fd_gossip_version_v2_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7179 : void fd_gossip_version_v2_decode_unsafe( fd_gossip_version_v2_t * self, fd_bincode_decode_ctx_t * ctx );
7180 : int fd_gossip_version_v2_decode_offsets( fd_gossip_version_v2_off_t * self, fd_bincode_decode_ctx_t * ctx );
7181 : int fd_gossip_version_v2_encode( fd_gossip_version_v2_t const * self, fd_bincode_encode_ctx_t * ctx );
7182 : void fd_gossip_version_v2_destroy( fd_gossip_version_v2_t * self, fd_bincode_destroy_ctx_t * ctx );
7183 : void fd_gossip_version_v2_walk( void * w, fd_gossip_version_v2_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7184 : ulong fd_gossip_version_v2_size( fd_gossip_version_v2_t const * self );
7185 : ulong fd_gossip_version_v2_footprint( void );
7186 : ulong fd_gossip_version_v2_align( void );
7187 :
7188 : void fd_gossip_version_v3_new( fd_gossip_version_v3_t * self );
7189 : int fd_gossip_version_v3_decode( fd_gossip_version_v3_t * self, fd_bincode_decode_ctx_t * ctx );
7190 : int fd_gossip_version_v3_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7191 : void fd_gossip_version_v3_decode_unsafe( fd_gossip_version_v3_t * self, fd_bincode_decode_ctx_t * ctx );
7192 : int fd_gossip_version_v3_decode_offsets( fd_gossip_version_v3_off_t * self, fd_bincode_decode_ctx_t * ctx );
7193 : int fd_gossip_version_v3_encode( fd_gossip_version_v3_t const * self, fd_bincode_encode_ctx_t * ctx );
7194 : void fd_gossip_version_v3_destroy( fd_gossip_version_v3_t * self, fd_bincode_destroy_ctx_t * ctx );
7195 : void fd_gossip_version_v3_walk( void * w, fd_gossip_version_v3_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7196 : ulong fd_gossip_version_v3_size( fd_gossip_version_v3_t const * self );
7197 : ulong fd_gossip_version_v3_footprint( void );
7198 : ulong fd_gossip_version_v3_align( void );
7199 :
7200 : void fd_gossip_node_instance_new( fd_gossip_node_instance_t * self );
7201 : int fd_gossip_node_instance_decode( fd_gossip_node_instance_t * self, fd_bincode_decode_ctx_t * ctx );
7202 : int fd_gossip_node_instance_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7203 : void fd_gossip_node_instance_decode_unsafe( fd_gossip_node_instance_t * self, fd_bincode_decode_ctx_t * ctx );
7204 : int fd_gossip_node_instance_decode_offsets( fd_gossip_node_instance_off_t * self, fd_bincode_decode_ctx_t * ctx );
7205 : int fd_gossip_node_instance_encode( fd_gossip_node_instance_t const * self, fd_bincode_encode_ctx_t * ctx );
7206 : void fd_gossip_node_instance_destroy( fd_gossip_node_instance_t * self, fd_bincode_destroy_ctx_t * ctx );
7207 : void fd_gossip_node_instance_walk( void * w, fd_gossip_node_instance_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7208 : ulong fd_gossip_node_instance_size( fd_gossip_node_instance_t const * self );
7209 : ulong fd_gossip_node_instance_footprint( void );
7210 : ulong fd_gossip_node_instance_align( void );
7211 :
7212 : void fd_gossip_duplicate_shred_new( fd_gossip_duplicate_shred_t * self );
7213 : int fd_gossip_duplicate_shred_decode( fd_gossip_duplicate_shred_t * self, fd_bincode_decode_ctx_t * ctx );
7214 : int fd_gossip_duplicate_shred_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7215 : void fd_gossip_duplicate_shred_decode_unsafe( fd_gossip_duplicate_shred_t * self, fd_bincode_decode_ctx_t * ctx );
7216 : int fd_gossip_duplicate_shred_decode_offsets( fd_gossip_duplicate_shred_off_t * self, fd_bincode_decode_ctx_t * ctx );
7217 : int fd_gossip_duplicate_shred_encode( fd_gossip_duplicate_shred_t const * self, fd_bincode_encode_ctx_t * ctx );
7218 : void fd_gossip_duplicate_shred_destroy( fd_gossip_duplicate_shred_t * self, fd_bincode_destroy_ctx_t * ctx );
7219 : void fd_gossip_duplicate_shred_walk( void * w, fd_gossip_duplicate_shred_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7220 : ulong fd_gossip_duplicate_shred_size( fd_gossip_duplicate_shred_t const * self );
7221 : ulong fd_gossip_duplicate_shred_footprint( void );
7222 : ulong fd_gossip_duplicate_shred_align( void );
7223 :
7224 : void fd_gossip_incremental_snapshot_hashes_new( fd_gossip_incremental_snapshot_hashes_t * self );
7225 : int fd_gossip_incremental_snapshot_hashes_decode( fd_gossip_incremental_snapshot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7226 : int fd_gossip_incremental_snapshot_hashes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7227 : void fd_gossip_incremental_snapshot_hashes_decode_unsafe( fd_gossip_incremental_snapshot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7228 : int fd_gossip_incremental_snapshot_hashes_decode_offsets( fd_gossip_incremental_snapshot_hashes_off_t * self, fd_bincode_decode_ctx_t * ctx );
7229 : int fd_gossip_incremental_snapshot_hashes_encode( fd_gossip_incremental_snapshot_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
7230 : void fd_gossip_incremental_snapshot_hashes_destroy( fd_gossip_incremental_snapshot_hashes_t * self, fd_bincode_destroy_ctx_t * ctx );
7231 : void fd_gossip_incremental_snapshot_hashes_walk( void * w, fd_gossip_incremental_snapshot_hashes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7232 : ulong fd_gossip_incremental_snapshot_hashes_size( fd_gossip_incremental_snapshot_hashes_t const * self );
7233 : ulong fd_gossip_incremental_snapshot_hashes_footprint( void );
7234 : ulong fd_gossip_incremental_snapshot_hashes_align( void );
7235 :
7236 : void fd_gossip_socket_entry_new( fd_gossip_socket_entry_t * self );
7237 : int fd_gossip_socket_entry_decode( fd_gossip_socket_entry_t * self, fd_bincode_decode_ctx_t * ctx );
7238 : int fd_gossip_socket_entry_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7239 : void fd_gossip_socket_entry_decode_unsafe( fd_gossip_socket_entry_t * self, fd_bincode_decode_ctx_t * ctx );
7240 : int fd_gossip_socket_entry_decode_offsets( fd_gossip_socket_entry_off_t * self, fd_bincode_decode_ctx_t * ctx );
7241 : int fd_gossip_socket_entry_encode( fd_gossip_socket_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
7242 : void fd_gossip_socket_entry_destroy( fd_gossip_socket_entry_t * self, fd_bincode_destroy_ctx_t * ctx );
7243 : void fd_gossip_socket_entry_walk( void * w, fd_gossip_socket_entry_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7244 : ulong fd_gossip_socket_entry_size( fd_gossip_socket_entry_t const * self );
7245 : ulong fd_gossip_socket_entry_footprint( void );
7246 : ulong fd_gossip_socket_entry_align( void );
7247 :
7248 : void fd_gossip_contact_info_v2_new( fd_gossip_contact_info_v2_t * self );
7249 : int fd_gossip_contact_info_v2_decode( fd_gossip_contact_info_v2_t * self, fd_bincode_decode_ctx_t * ctx );
7250 : int fd_gossip_contact_info_v2_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7251 : void fd_gossip_contact_info_v2_decode_unsafe( fd_gossip_contact_info_v2_t * self, fd_bincode_decode_ctx_t * ctx );
7252 : int fd_gossip_contact_info_v2_decode_offsets( fd_gossip_contact_info_v2_off_t * self, fd_bincode_decode_ctx_t * ctx );
7253 : int fd_gossip_contact_info_v2_encode( fd_gossip_contact_info_v2_t const * self, fd_bincode_encode_ctx_t * ctx );
7254 : void fd_gossip_contact_info_v2_destroy( fd_gossip_contact_info_v2_t * self, fd_bincode_destroy_ctx_t * ctx );
7255 : void fd_gossip_contact_info_v2_walk( void * w, fd_gossip_contact_info_v2_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7256 : ulong fd_gossip_contact_info_v2_size( fd_gossip_contact_info_v2_t const * self );
7257 : ulong fd_gossip_contact_info_v2_footprint( void );
7258 : ulong fd_gossip_contact_info_v2_align( void );
7259 :
7260 : void fd_crds_data_new_disc( fd_crds_data_t * self, uint discriminant );
7261 : void fd_crds_data_new( fd_crds_data_t * self );
7262 : int fd_crds_data_decode( fd_crds_data_t * self, fd_bincode_decode_ctx_t * ctx );
7263 : int fd_crds_data_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7264 : void fd_crds_data_decode_unsafe( fd_crds_data_t * self, fd_bincode_decode_ctx_t * ctx );
7265 : int fd_crds_data_encode( fd_crds_data_t const * self, fd_bincode_encode_ctx_t * ctx );
7266 : void fd_crds_data_destroy( fd_crds_data_t * self, fd_bincode_destroy_ctx_t * ctx );
7267 : void fd_crds_data_walk( void * w, fd_crds_data_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7268 : ulong fd_crds_data_size( fd_crds_data_t const * self );
7269 : ulong fd_crds_data_footprint( void );
7270 : ulong fd_crds_data_align( void );
7271 :
7272 : FD_FN_PURE uchar fd_crds_data_is_contact_info_v1( fd_crds_data_t const * self );
7273 : FD_FN_PURE uchar fd_crds_data_is_vote( fd_crds_data_t const * self );
7274 : FD_FN_PURE uchar fd_crds_data_is_lowest_slot( fd_crds_data_t const * self );
7275 : FD_FN_PURE uchar fd_crds_data_is_snapshot_hashes( fd_crds_data_t const * self );
7276 : FD_FN_PURE uchar fd_crds_data_is_accounts_hashes( fd_crds_data_t const * self );
7277 : FD_FN_PURE uchar fd_crds_data_is_epoch_slots( fd_crds_data_t const * self );
7278 : FD_FN_PURE uchar fd_crds_data_is_version_v1( fd_crds_data_t const * self );
7279 : FD_FN_PURE uchar fd_crds_data_is_version_v2( fd_crds_data_t const * self );
7280 : FD_FN_PURE uchar fd_crds_data_is_node_instance( fd_crds_data_t const * self );
7281 : FD_FN_PURE uchar fd_crds_data_is_duplicate_shred( fd_crds_data_t const * self );
7282 : FD_FN_PURE uchar fd_crds_data_is_incremental_snapshot_hashes( fd_crds_data_t const * self );
7283 : FD_FN_PURE uchar fd_crds_data_is_contact_info_v2( fd_crds_data_t const * self );
7284 : enum {
7285 : fd_crds_data_enum_contact_info_v1 = 0,
7286 : fd_crds_data_enum_vote = 1,
7287 : fd_crds_data_enum_lowest_slot = 2,
7288 : fd_crds_data_enum_snapshot_hashes = 3,
7289 : fd_crds_data_enum_accounts_hashes = 4,
7290 : fd_crds_data_enum_epoch_slots = 5,
7291 : fd_crds_data_enum_version_v1 = 6,
7292 : fd_crds_data_enum_version_v2 = 7,
7293 : fd_crds_data_enum_node_instance = 8,
7294 : fd_crds_data_enum_duplicate_shred = 9,
7295 : fd_crds_data_enum_incremental_snapshot_hashes = 10,
7296 : fd_crds_data_enum_contact_info_v2 = 11,
7297 : };
7298 : void fd_crds_bloom_new( fd_crds_bloom_t * self );
7299 : int fd_crds_bloom_decode( fd_crds_bloom_t * self, fd_bincode_decode_ctx_t * ctx );
7300 : int fd_crds_bloom_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7301 : void fd_crds_bloom_decode_unsafe( fd_crds_bloom_t * self, fd_bincode_decode_ctx_t * ctx );
7302 : int fd_crds_bloom_decode_offsets( fd_crds_bloom_off_t * self, fd_bincode_decode_ctx_t * ctx );
7303 : int fd_crds_bloom_encode( fd_crds_bloom_t const * self, fd_bincode_encode_ctx_t * ctx );
7304 : void fd_crds_bloom_destroy( fd_crds_bloom_t * self, fd_bincode_destroy_ctx_t * ctx );
7305 : void fd_crds_bloom_walk( void * w, fd_crds_bloom_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7306 : ulong fd_crds_bloom_size( fd_crds_bloom_t const * self );
7307 : ulong fd_crds_bloom_footprint( void );
7308 : ulong fd_crds_bloom_align( void );
7309 :
7310 : void fd_crds_filter_new( fd_crds_filter_t * self );
7311 : int fd_crds_filter_decode( fd_crds_filter_t * self, fd_bincode_decode_ctx_t * ctx );
7312 : int fd_crds_filter_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7313 : void fd_crds_filter_decode_unsafe( fd_crds_filter_t * self, fd_bincode_decode_ctx_t * ctx );
7314 : int fd_crds_filter_decode_offsets( fd_crds_filter_off_t * self, fd_bincode_decode_ctx_t * ctx );
7315 : int fd_crds_filter_encode( fd_crds_filter_t const * self, fd_bincode_encode_ctx_t * ctx );
7316 : void fd_crds_filter_destroy( fd_crds_filter_t * self, fd_bincode_destroy_ctx_t * ctx );
7317 : void fd_crds_filter_walk( void * w, fd_crds_filter_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7318 : ulong fd_crds_filter_size( fd_crds_filter_t const * self );
7319 : ulong fd_crds_filter_footprint( void );
7320 : ulong fd_crds_filter_align( void );
7321 :
7322 : void fd_crds_value_new( fd_crds_value_t * self );
7323 : int fd_crds_value_decode( fd_crds_value_t * self, fd_bincode_decode_ctx_t * ctx );
7324 : int fd_crds_value_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7325 : void fd_crds_value_decode_unsafe( fd_crds_value_t * self, fd_bincode_decode_ctx_t * ctx );
7326 : int fd_crds_value_decode_offsets( fd_crds_value_off_t * self, fd_bincode_decode_ctx_t * ctx );
7327 : int fd_crds_value_encode( fd_crds_value_t const * self, fd_bincode_encode_ctx_t * ctx );
7328 : void fd_crds_value_destroy( fd_crds_value_t * self, fd_bincode_destroy_ctx_t * ctx );
7329 : void fd_crds_value_walk( void * w, fd_crds_value_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7330 : ulong fd_crds_value_size( fd_crds_value_t const * self );
7331 : ulong fd_crds_value_footprint( void );
7332 : ulong fd_crds_value_align( void );
7333 :
7334 : void fd_gossip_pull_req_new( fd_gossip_pull_req_t * self );
7335 : int fd_gossip_pull_req_decode( fd_gossip_pull_req_t * self, fd_bincode_decode_ctx_t * ctx );
7336 : int fd_gossip_pull_req_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7337 : void fd_gossip_pull_req_decode_unsafe( fd_gossip_pull_req_t * self, fd_bincode_decode_ctx_t * ctx );
7338 : int fd_gossip_pull_req_decode_offsets( fd_gossip_pull_req_off_t * self, fd_bincode_decode_ctx_t * ctx );
7339 : int fd_gossip_pull_req_encode( fd_gossip_pull_req_t const * self, fd_bincode_encode_ctx_t * ctx );
7340 : void fd_gossip_pull_req_destroy( fd_gossip_pull_req_t * self, fd_bincode_destroy_ctx_t * ctx );
7341 : void fd_gossip_pull_req_walk( void * w, fd_gossip_pull_req_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7342 : ulong fd_gossip_pull_req_size( fd_gossip_pull_req_t const * self );
7343 : ulong fd_gossip_pull_req_footprint( void );
7344 : ulong fd_gossip_pull_req_align( void );
7345 :
7346 : void fd_gossip_pull_resp_new( fd_gossip_pull_resp_t * self );
7347 : int fd_gossip_pull_resp_decode( fd_gossip_pull_resp_t * self, fd_bincode_decode_ctx_t * ctx );
7348 : int fd_gossip_pull_resp_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7349 : void fd_gossip_pull_resp_decode_unsafe( fd_gossip_pull_resp_t * self, fd_bincode_decode_ctx_t * ctx );
7350 : int fd_gossip_pull_resp_decode_offsets( fd_gossip_pull_resp_off_t * self, fd_bincode_decode_ctx_t * ctx );
7351 : int fd_gossip_pull_resp_encode( fd_gossip_pull_resp_t const * self, fd_bincode_encode_ctx_t * ctx );
7352 : void fd_gossip_pull_resp_destroy( fd_gossip_pull_resp_t * self, fd_bincode_destroy_ctx_t * ctx );
7353 : void fd_gossip_pull_resp_walk( void * w, fd_gossip_pull_resp_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7354 : ulong fd_gossip_pull_resp_size( fd_gossip_pull_resp_t const * self );
7355 : ulong fd_gossip_pull_resp_footprint( void );
7356 : ulong fd_gossip_pull_resp_align( void );
7357 :
7358 : void fd_gossip_push_msg_new( fd_gossip_push_msg_t * self );
7359 : int fd_gossip_push_msg_decode( fd_gossip_push_msg_t * self, fd_bincode_decode_ctx_t * ctx );
7360 : int fd_gossip_push_msg_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7361 : void fd_gossip_push_msg_decode_unsafe( fd_gossip_push_msg_t * self, fd_bincode_decode_ctx_t * ctx );
7362 : int fd_gossip_push_msg_decode_offsets( fd_gossip_push_msg_off_t * self, fd_bincode_decode_ctx_t * ctx );
7363 : int fd_gossip_push_msg_encode( fd_gossip_push_msg_t const * self, fd_bincode_encode_ctx_t * ctx );
7364 : void fd_gossip_push_msg_destroy( fd_gossip_push_msg_t * self, fd_bincode_destroy_ctx_t * ctx );
7365 : void fd_gossip_push_msg_walk( void * w, fd_gossip_push_msg_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7366 : ulong fd_gossip_push_msg_size( fd_gossip_push_msg_t const * self );
7367 : ulong fd_gossip_push_msg_footprint( void );
7368 : ulong fd_gossip_push_msg_align( void );
7369 :
7370 : void fd_gossip_prune_msg_new( fd_gossip_prune_msg_t * self );
7371 : int fd_gossip_prune_msg_decode( fd_gossip_prune_msg_t * self, fd_bincode_decode_ctx_t * ctx );
7372 : int fd_gossip_prune_msg_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7373 : void fd_gossip_prune_msg_decode_unsafe( fd_gossip_prune_msg_t * self, fd_bincode_decode_ctx_t * ctx );
7374 : int fd_gossip_prune_msg_decode_offsets( fd_gossip_prune_msg_off_t * self, fd_bincode_decode_ctx_t * ctx );
7375 : int fd_gossip_prune_msg_encode( fd_gossip_prune_msg_t const * self, fd_bincode_encode_ctx_t * ctx );
7376 : void fd_gossip_prune_msg_destroy( fd_gossip_prune_msg_t * self, fd_bincode_destroy_ctx_t * ctx );
7377 : void fd_gossip_prune_msg_walk( void * w, fd_gossip_prune_msg_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7378 : ulong fd_gossip_prune_msg_size( fd_gossip_prune_msg_t const * self );
7379 : ulong fd_gossip_prune_msg_footprint( void );
7380 : ulong fd_gossip_prune_msg_align( void );
7381 :
7382 : void fd_gossip_msg_new_disc( fd_gossip_msg_t * self, uint discriminant );
7383 : void fd_gossip_msg_new( fd_gossip_msg_t * self );
7384 : int fd_gossip_msg_decode( fd_gossip_msg_t * self, fd_bincode_decode_ctx_t * ctx );
7385 : int fd_gossip_msg_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7386 : void fd_gossip_msg_decode_unsafe( fd_gossip_msg_t * self, fd_bincode_decode_ctx_t * ctx );
7387 : int fd_gossip_msg_encode( fd_gossip_msg_t const * self, fd_bincode_encode_ctx_t * ctx );
7388 : void fd_gossip_msg_destroy( fd_gossip_msg_t * self, fd_bincode_destroy_ctx_t * ctx );
7389 : void fd_gossip_msg_walk( void * w, fd_gossip_msg_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7390 : ulong fd_gossip_msg_size( fd_gossip_msg_t const * self );
7391 : ulong fd_gossip_msg_footprint( void );
7392 : ulong fd_gossip_msg_align( void );
7393 :
7394 : FD_FN_PURE uchar fd_gossip_msg_is_pull_req( fd_gossip_msg_t const * self );
7395 : FD_FN_PURE uchar fd_gossip_msg_is_pull_resp( fd_gossip_msg_t const * self );
7396 : FD_FN_PURE uchar fd_gossip_msg_is_push_msg( fd_gossip_msg_t const * self );
7397 : FD_FN_PURE uchar fd_gossip_msg_is_prune_msg( fd_gossip_msg_t const * self );
7398 : FD_FN_PURE uchar fd_gossip_msg_is_ping( fd_gossip_msg_t const * self );
7399 : FD_FN_PURE uchar fd_gossip_msg_is_pong( fd_gossip_msg_t const * self );
7400 : enum {
7401 : fd_gossip_msg_enum_pull_req = 0,
7402 : fd_gossip_msg_enum_pull_resp = 1,
7403 : fd_gossip_msg_enum_push_msg = 2,
7404 : fd_gossip_msg_enum_prune_msg = 3,
7405 : fd_gossip_msg_enum_ping = 4,
7406 : fd_gossip_msg_enum_pong = 5,
7407 : };
7408 : void fd_addrlut_create_new( fd_addrlut_create_t * self );
7409 : int fd_addrlut_create_decode( fd_addrlut_create_t * self, fd_bincode_decode_ctx_t * ctx );
7410 : int fd_addrlut_create_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7411 : void fd_addrlut_create_decode_unsafe( fd_addrlut_create_t * self, fd_bincode_decode_ctx_t * ctx );
7412 : int fd_addrlut_create_decode_offsets( fd_addrlut_create_off_t * self, fd_bincode_decode_ctx_t * ctx );
7413 : int fd_addrlut_create_encode( fd_addrlut_create_t const * self, fd_bincode_encode_ctx_t * ctx );
7414 : void fd_addrlut_create_destroy( fd_addrlut_create_t * self, fd_bincode_destroy_ctx_t * ctx );
7415 : void fd_addrlut_create_walk( void * w, fd_addrlut_create_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7416 : ulong fd_addrlut_create_size( fd_addrlut_create_t const * self );
7417 : ulong fd_addrlut_create_footprint( void );
7418 : ulong fd_addrlut_create_align( void );
7419 :
7420 : void fd_addrlut_extend_new( fd_addrlut_extend_t * self );
7421 : int fd_addrlut_extend_decode( fd_addrlut_extend_t * self, fd_bincode_decode_ctx_t * ctx );
7422 : int fd_addrlut_extend_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7423 : void fd_addrlut_extend_decode_unsafe( fd_addrlut_extend_t * self, fd_bincode_decode_ctx_t * ctx );
7424 : int fd_addrlut_extend_decode_offsets( fd_addrlut_extend_off_t * self, fd_bincode_decode_ctx_t * ctx );
7425 : int fd_addrlut_extend_encode( fd_addrlut_extend_t const * self, fd_bincode_encode_ctx_t * ctx );
7426 : void fd_addrlut_extend_destroy( fd_addrlut_extend_t * self, fd_bincode_destroy_ctx_t * ctx );
7427 : void fd_addrlut_extend_walk( void * w, fd_addrlut_extend_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7428 : ulong fd_addrlut_extend_size( fd_addrlut_extend_t const * self );
7429 : ulong fd_addrlut_extend_footprint( void );
7430 : ulong fd_addrlut_extend_align( void );
7431 :
7432 : void fd_addrlut_instruction_new_disc( fd_addrlut_instruction_t * self, uint discriminant );
7433 : void fd_addrlut_instruction_new( fd_addrlut_instruction_t * self );
7434 : int fd_addrlut_instruction_decode( fd_addrlut_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
7435 : int fd_addrlut_instruction_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7436 : void fd_addrlut_instruction_decode_unsafe( fd_addrlut_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
7437 : int fd_addrlut_instruction_encode( fd_addrlut_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
7438 : void fd_addrlut_instruction_destroy( fd_addrlut_instruction_t * self, fd_bincode_destroy_ctx_t * ctx );
7439 : void fd_addrlut_instruction_walk( void * w, fd_addrlut_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7440 : ulong fd_addrlut_instruction_size( fd_addrlut_instruction_t const * self );
7441 : ulong fd_addrlut_instruction_footprint( void );
7442 : ulong fd_addrlut_instruction_align( void );
7443 :
7444 : FD_FN_PURE uchar fd_addrlut_instruction_is_create_lut( fd_addrlut_instruction_t const * self );
7445 : FD_FN_PURE uchar fd_addrlut_instruction_is_freeze_lut( fd_addrlut_instruction_t const * self );
7446 : FD_FN_PURE uchar fd_addrlut_instruction_is_extend_lut( fd_addrlut_instruction_t const * self );
7447 : FD_FN_PURE uchar fd_addrlut_instruction_is_deactivate_lut( fd_addrlut_instruction_t const * self );
7448 : FD_FN_PURE uchar fd_addrlut_instruction_is_close_lut( fd_addrlut_instruction_t const * self );
7449 : enum {
7450 : fd_addrlut_instruction_enum_create_lut = 0,
7451 : fd_addrlut_instruction_enum_freeze_lut = 1,
7452 : fd_addrlut_instruction_enum_extend_lut = 2,
7453 : fd_addrlut_instruction_enum_deactivate_lut = 3,
7454 : fd_addrlut_instruction_enum_close_lut = 4,
7455 : };
7456 : void fd_repair_request_header_new( fd_repair_request_header_t * self );
7457 : int fd_repair_request_header_decode( fd_repair_request_header_t * self, fd_bincode_decode_ctx_t * ctx );
7458 : int fd_repair_request_header_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7459 : void fd_repair_request_header_decode_unsafe( fd_repair_request_header_t * self, fd_bincode_decode_ctx_t * ctx );
7460 : int fd_repair_request_header_decode_offsets( fd_repair_request_header_off_t * self, fd_bincode_decode_ctx_t * ctx );
7461 : int fd_repair_request_header_encode( fd_repair_request_header_t const * self, fd_bincode_encode_ctx_t * ctx );
7462 : void fd_repair_request_header_destroy( fd_repair_request_header_t * self, fd_bincode_destroy_ctx_t * ctx );
7463 : void fd_repair_request_header_walk( void * w, fd_repair_request_header_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7464 : ulong fd_repair_request_header_size( fd_repair_request_header_t const * self );
7465 : ulong fd_repair_request_header_footprint( void );
7466 : ulong fd_repair_request_header_align( void );
7467 :
7468 : void fd_repair_window_index_new( fd_repair_window_index_t * self );
7469 : int fd_repair_window_index_decode( fd_repair_window_index_t * self, fd_bincode_decode_ctx_t * ctx );
7470 : int fd_repair_window_index_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7471 : void fd_repair_window_index_decode_unsafe( fd_repair_window_index_t * self, fd_bincode_decode_ctx_t * ctx );
7472 : int fd_repair_window_index_decode_offsets( fd_repair_window_index_off_t * self, fd_bincode_decode_ctx_t * ctx );
7473 : int fd_repair_window_index_encode( fd_repair_window_index_t const * self, fd_bincode_encode_ctx_t * ctx );
7474 : void fd_repair_window_index_destroy( fd_repair_window_index_t * self, fd_bincode_destroy_ctx_t * ctx );
7475 : void fd_repair_window_index_walk( void * w, fd_repair_window_index_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7476 : ulong fd_repair_window_index_size( fd_repair_window_index_t const * self );
7477 : ulong fd_repair_window_index_footprint( void );
7478 : ulong fd_repair_window_index_align( void );
7479 :
7480 : void fd_repair_highest_window_index_new( fd_repair_highest_window_index_t * self );
7481 : int fd_repair_highest_window_index_decode( fd_repair_highest_window_index_t * self, fd_bincode_decode_ctx_t * ctx );
7482 : int fd_repair_highest_window_index_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7483 : void fd_repair_highest_window_index_decode_unsafe( fd_repair_highest_window_index_t * self, fd_bincode_decode_ctx_t * ctx );
7484 : int fd_repair_highest_window_index_decode_offsets( fd_repair_highest_window_index_off_t * self, fd_bincode_decode_ctx_t * ctx );
7485 : int fd_repair_highest_window_index_encode( fd_repair_highest_window_index_t const * self, fd_bincode_encode_ctx_t * ctx );
7486 : void fd_repair_highest_window_index_destroy( fd_repair_highest_window_index_t * self, fd_bincode_destroy_ctx_t * ctx );
7487 : void fd_repair_highest_window_index_walk( void * w, fd_repair_highest_window_index_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7488 : ulong fd_repair_highest_window_index_size( fd_repair_highest_window_index_t const * self );
7489 : ulong fd_repair_highest_window_index_footprint( void );
7490 : ulong fd_repair_highest_window_index_align( void );
7491 :
7492 : void fd_repair_orphan_new( fd_repair_orphan_t * self );
7493 : int fd_repair_orphan_decode( fd_repair_orphan_t * self, fd_bincode_decode_ctx_t * ctx );
7494 : int fd_repair_orphan_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7495 : void fd_repair_orphan_decode_unsafe( fd_repair_orphan_t * self, fd_bincode_decode_ctx_t * ctx );
7496 : int fd_repair_orphan_decode_offsets( fd_repair_orphan_off_t * self, fd_bincode_decode_ctx_t * ctx );
7497 : int fd_repair_orphan_encode( fd_repair_orphan_t const * self, fd_bincode_encode_ctx_t * ctx );
7498 : void fd_repair_orphan_destroy( fd_repair_orphan_t * self, fd_bincode_destroy_ctx_t * ctx );
7499 : void fd_repair_orphan_walk( void * w, fd_repair_orphan_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7500 : ulong fd_repair_orphan_size( fd_repair_orphan_t const * self );
7501 : ulong fd_repair_orphan_footprint( void );
7502 : ulong fd_repair_orphan_align( void );
7503 :
7504 : void fd_repair_ancestor_hashes_new( fd_repair_ancestor_hashes_t * self );
7505 : int fd_repair_ancestor_hashes_decode( fd_repair_ancestor_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7506 : int fd_repair_ancestor_hashes_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7507 : void fd_repair_ancestor_hashes_decode_unsafe( fd_repair_ancestor_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7508 : int fd_repair_ancestor_hashes_decode_offsets( fd_repair_ancestor_hashes_off_t * self, fd_bincode_decode_ctx_t * ctx );
7509 : int fd_repair_ancestor_hashes_encode( fd_repair_ancestor_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
7510 : void fd_repair_ancestor_hashes_destroy( fd_repair_ancestor_hashes_t * self, fd_bincode_destroy_ctx_t * ctx );
7511 : void fd_repair_ancestor_hashes_walk( void * w, fd_repair_ancestor_hashes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7512 : ulong fd_repair_ancestor_hashes_size( fd_repair_ancestor_hashes_t const * self );
7513 : ulong fd_repair_ancestor_hashes_footprint( void );
7514 : ulong fd_repair_ancestor_hashes_align( void );
7515 :
7516 : void fd_repair_protocol_new_disc( fd_repair_protocol_t * self, uint discriminant );
7517 : void fd_repair_protocol_new( fd_repair_protocol_t * self );
7518 : int fd_repair_protocol_decode( fd_repair_protocol_t * self, fd_bincode_decode_ctx_t * ctx );
7519 : int fd_repair_protocol_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7520 : void fd_repair_protocol_decode_unsafe( fd_repair_protocol_t * self, fd_bincode_decode_ctx_t * ctx );
7521 : int fd_repair_protocol_encode( fd_repair_protocol_t const * self, fd_bincode_encode_ctx_t * ctx );
7522 : void fd_repair_protocol_destroy( fd_repair_protocol_t * self, fd_bincode_destroy_ctx_t * ctx );
7523 : void fd_repair_protocol_walk( void * w, fd_repair_protocol_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7524 : ulong fd_repair_protocol_size( fd_repair_protocol_t const * self );
7525 : ulong fd_repair_protocol_footprint( void );
7526 : ulong fd_repair_protocol_align( void );
7527 :
7528 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyWindowIndex( fd_repair_protocol_t const * self );
7529 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyHighestWindowIndex( fd_repair_protocol_t const * self );
7530 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyOrphan( fd_repair_protocol_t const * self );
7531 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyWindowIndexWithNonce( fd_repair_protocol_t const * self );
7532 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyHighestWindowIndexWithNonce( fd_repair_protocol_t const * self );
7533 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyOrphanWithNonce( fd_repair_protocol_t const * self );
7534 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyAncestorHashes( fd_repair_protocol_t const * self );
7535 : FD_FN_PURE uchar fd_repair_protocol_is_pong( fd_repair_protocol_t const * self );
7536 : FD_FN_PURE uchar fd_repair_protocol_is_window_index( fd_repair_protocol_t const * self );
7537 : FD_FN_PURE uchar fd_repair_protocol_is_highest_window_index( fd_repair_protocol_t const * self );
7538 : FD_FN_PURE uchar fd_repair_protocol_is_orphan( fd_repair_protocol_t const * self );
7539 : FD_FN_PURE uchar fd_repair_protocol_is_ancestor_hashes( fd_repair_protocol_t const * self );
7540 : enum {
7541 : fd_repair_protocol_enum_LegacyWindowIndex = 0,
7542 : fd_repair_protocol_enum_LegacyHighestWindowIndex = 1,
7543 : fd_repair_protocol_enum_LegacyOrphan = 2,
7544 : fd_repair_protocol_enum_LegacyWindowIndexWithNonce = 3,
7545 : fd_repair_protocol_enum_LegacyHighestWindowIndexWithNonce = 4,
7546 : fd_repair_protocol_enum_LegacyOrphanWithNonce = 5,
7547 : fd_repair_protocol_enum_LegacyAncestorHashes = 6,
7548 : fd_repair_protocol_enum_pong = 7,
7549 : fd_repair_protocol_enum_window_index = 8,
7550 : fd_repair_protocol_enum_highest_window_index = 9,
7551 : fd_repair_protocol_enum_orphan = 10,
7552 : fd_repair_protocol_enum_ancestor_hashes = 11,
7553 : };
7554 : void fd_repair_response_new_disc( fd_repair_response_t * self, uint discriminant );
7555 : void fd_repair_response_new( fd_repair_response_t * self );
7556 : int fd_repair_response_decode( fd_repair_response_t * self, fd_bincode_decode_ctx_t * ctx );
7557 : int fd_repair_response_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7558 : void fd_repair_response_decode_unsafe( fd_repair_response_t * self, fd_bincode_decode_ctx_t * ctx );
7559 : int fd_repair_response_encode( fd_repair_response_t const * self, fd_bincode_encode_ctx_t * ctx );
7560 : void fd_repair_response_destroy( fd_repair_response_t * self, fd_bincode_destroy_ctx_t * ctx );
7561 : void fd_repair_response_walk( void * w, fd_repair_response_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7562 : ulong fd_repair_response_size( fd_repair_response_t const * self );
7563 : ulong fd_repair_response_footprint( void );
7564 : ulong fd_repair_response_align( void );
7565 :
7566 : FD_FN_PURE uchar fd_repair_response_is_ping( fd_repair_response_t const * self );
7567 : enum {
7568 : fd_repair_response_enum_ping = 0,
7569 : };
7570 : void fd_instr_error_enum_new_disc( fd_instr_error_enum_t * self, uint discriminant );
7571 : void fd_instr_error_enum_new( fd_instr_error_enum_t * self );
7572 : int fd_instr_error_enum_decode( fd_instr_error_enum_t * self, fd_bincode_decode_ctx_t * ctx );
7573 : int fd_instr_error_enum_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7574 : void fd_instr_error_enum_decode_unsafe( fd_instr_error_enum_t * self, fd_bincode_decode_ctx_t * ctx );
7575 : int fd_instr_error_enum_encode( fd_instr_error_enum_t const * self, fd_bincode_encode_ctx_t * ctx );
7576 : void fd_instr_error_enum_destroy( fd_instr_error_enum_t * self, fd_bincode_destroy_ctx_t * ctx );
7577 : void fd_instr_error_enum_walk( void * w, fd_instr_error_enum_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7578 : ulong fd_instr_error_enum_size( fd_instr_error_enum_t const * self );
7579 : ulong fd_instr_error_enum_footprint( void );
7580 : ulong fd_instr_error_enum_align( void );
7581 :
7582 : FD_FN_PURE uchar fd_instr_error_enum_is_generic_error( fd_instr_error_enum_t const * self );
7583 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_argument( fd_instr_error_enum_t const * self );
7584 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_instruction_data( fd_instr_error_enum_t const * self );
7585 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_account_data( fd_instr_error_enum_t const * self );
7586 : FD_FN_PURE uchar fd_instr_error_enum_is_account_data_too_small( fd_instr_error_enum_t const * self );
7587 : FD_FN_PURE uchar fd_instr_error_enum_is_insufficient_funds( fd_instr_error_enum_t const * self );
7588 : FD_FN_PURE uchar fd_instr_error_enum_is_incorrect_program_id( fd_instr_error_enum_t const * self );
7589 : FD_FN_PURE uchar fd_instr_error_enum_is_missing_required_signature( fd_instr_error_enum_t const * self );
7590 : FD_FN_PURE uchar fd_instr_error_enum_is_account_already_initialized( fd_instr_error_enum_t const * self );
7591 : FD_FN_PURE uchar fd_instr_error_enum_is_uninitialized_account( fd_instr_error_enum_t const * self );
7592 : FD_FN_PURE uchar fd_instr_error_enum_is_unbalanced_instruction( fd_instr_error_enum_t const * self );
7593 : FD_FN_PURE uchar fd_instr_error_enum_is_modified_program_id( fd_instr_error_enum_t const * self );
7594 : FD_FN_PURE uchar fd_instr_error_enum_is_external_account_lamport_spend( fd_instr_error_enum_t const * self );
7595 : FD_FN_PURE uchar fd_instr_error_enum_is_external_account_data_modified( fd_instr_error_enum_t const * self );
7596 : FD_FN_PURE uchar fd_instr_error_enum_is_readonly_lamport_change( fd_instr_error_enum_t const * self );
7597 : FD_FN_PURE uchar fd_instr_error_enum_is_readonly_data_modified( fd_instr_error_enum_t const * self );
7598 : FD_FN_PURE uchar fd_instr_error_enum_is_duplicate_account_index( fd_instr_error_enum_t const * self );
7599 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_modified( fd_instr_error_enum_t const * self );
7600 : FD_FN_PURE uchar fd_instr_error_enum_is_rent_epoch_modified( fd_instr_error_enum_t const * self );
7601 : FD_FN_PURE uchar fd_instr_error_enum_is_not_enough_account_keys( fd_instr_error_enum_t const * self );
7602 : FD_FN_PURE uchar fd_instr_error_enum_is_account_data_size_changed( fd_instr_error_enum_t const * self );
7603 : FD_FN_PURE uchar fd_instr_error_enum_is_account_not_executable( fd_instr_error_enum_t const * self );
7604 : FD_FN_PURE uchar fd_instr_error_enum_is_account_borrow_failed( fd_instr_error_enum_t const * self );
7605 : FD_FN_PURE uchar fd_instr_error_enum_is_account_borrow_outstanding( fd_instr_error_enum_t const * self );
7606 : FD_FN_PURE uchar fd_instr_error_enum_is_duplicate_account_out_of_sync( fd_instr_error_enum_t const * self );
7607 : FD_FN_PURE uchar fd_instr_error_enum_is_custom( fd_instr_error_enum_t const * self );
7608 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_error( fd_instr_error_enum_t const * self );
7609 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_data_modified( fd_instr_error_enum_t const * self );
7610 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_lamport_change( fd_instr_error_enum_t const * self );
7611 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_account_not_rent_exempt( fd_instr_error_enum_t const * self );
7612 : FD_FN_PURE uchar fd_instr_error_enum_is_unsupported_program_id( fd_instr_error_enum_t const * self );
7613 : FD_FN_PURE uchar fd_instr_error_enum_is_call_depth( fd_instr_error_enum_t const * self );
7614 : FD_FN_PURE uchar fd_instr_error_enum_is_missing_account( fd_instr_error_enum_t const * self );
7615 : FD_FN_PURE uchar fd_instr_error_enum_is_reentrancy_not_allowed( fd_instr_error_enum_t const * self );
7616 : FD_FN_PURE uchar fd_instr_error_enum_is_max_seed_length_exceeded( fd_instr_error_enum_t const * self );
7617 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_seeds( fd_instr_error_enum_t const * self );
7618 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_realloc( fd_instr_error_enum_t const * self );
7619 : FD_FN_PURE uchar fd_instr_error_enum_is_computational_budget_exceeded( fd_instr_error_enum_t const * self );
7620 : FD_FN_PURE uchar fd_instr_error_enum_is_privilege_escalation( fd_instr_error_enum_t const * self );
7621 : FD_FN_PURE uchar fd_instr_error_enum_is_program_environment_setup_failure( fd_instr_error_enum_t const * self );
7622 : FD_FN_PURE uchar fd_instr_error_enum_is_program_failed_to_complete( fd_instr_error_enum_t const * self );
7623 : FD_FN_PURE uchar fd_instr_error_enum_is_program_failed_to_compile( fd_instr_error_enum_t const * self );
7624 : FD_FN_PURE uchar fd_instr_error_enum_is_immutable( fd_instr_error_enum_t const * self );
7625 : FD_FN_PURE uchar fd_instr_error_enum_is_incorrect_authority( fd_instr_error_enum_t const * self );
7626 : FD_FN_PURE uchar fd_instr_error_enum_is_borsh_io_error( fd_instr_error_enum_t const * self );
7627 : FD_FN_PURE uchar fd_instr_error_enum_is_account_not_rent_exempt( fd_instr_error_enum_t const * self );
7628 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_account_owner( fd_instr_error_enum_t const * self );
7629 : FD_FN_PURE uchar fd_instr_error_enum_is_arithmetic_overflow( fd_instr_error_enum_t const * self );
7630 : FD_FN_PURE uchar fd_instr_error_enum_is_unsupported_sysvar( fd_instr_error_enum_t const * self );
7631 : FD_FN_PURE uchar fd_instr_error_enum_is_illegal_owner( fd_instr_error_enum_t const * self );
7632 : FD_FN_PURE uchar fd_instr_error_enum_is_max_accounts_data_allocations_exceeded( fd_instr_error_enum_t const * self );
7633 : FD_FN_PURE uchar fd_instr_error_enum_is_max_accounts_exceeded( fd_instr_error_enum_t const * self );
7634 : FD_FN_PURE uchar fd_instr_error_enum_is_max_instruction_trace_length_exceeded( fd_instr_error_enum_t const * self );
7635 : FD_FN_PURE uchar fd_instr_error_enum_is_builtin_programs_must_consume_compute_units( fd_instr_error_enum_t const * self );
7636 : enum {
7637 : fd_instr_error_enum_enum_generic_error = 0,
7638 : fd_instr_error_enum_enum_invalid_argument = 1,
7639 : fd_instr_error_enum_enum_invalid_instruction_data = 2,
7640 : fd_instr_error_enum_enum_invalid_account_data = 3,
7641 : fd_instr_error_enum_enum_account_data_too_small = 4,
7642 : fd_instr_error_enum_enum_insufficient_funds = 5,
7643 : fd_instr_error_enum_enum_incorrect_program_id = 6,
7644 : fd_instr_error_enum_enum_missing_required_signature = 7,
7645 : fd_instr_error_enum_enum_account_already_initialized = 8,
7646 : fd_instr_error_enum_enum_uninitialized_account = 9,
7647 : fd_instr_error_enum_enum_unbalanced_instruction = 10,
7648 : fd_instr_error_enum_enum_modified_program_id = 11,
7649 : fd_instr_error_enum_enum_external_account_lamport_spend = 12,
7650 : fd_instr_error_enum_enum_external_account_data_modified = 13,
7651 : fd_instr_error_enum_enum_readonly_lamport_change = 14,
7652 : fd_instr_error_enum_enum_readonly_data_modified = 15,
7653 : fd_instr_error_enum_enum_duplicate_account_index = 16,
7654 : fd_instr_error_enum_enum_executable_modified = 17,
7655 : fd_instr_error_enum_enum_rent_epoch_modified = 18,
7656 : fd_instr_error_enum_enum_not_enough_account_keys = 19,
7657 : fd_instr_error_enum_enum_account_data_size_changed = 20,
7658 : fd_instr_error_enum_enum_account_not_executable = 21,
7659 : fd_instr_error_enum_enum_account_borrow_failed = 22,
7660 : fd_instr_error_enum_enum_account_borrow_outstanding = 23,
7661 : fd_instr_error_enum_enum_duplicate_account_out_of_sync = 24,
7662 : fd_instr_error_enum_enum_custom = 25,
7663 : fd_instr_error_enum_enum_invalid_error = 26,
7664 : fd_instr_error_enum_enum_executable_data_modified = 27,
7665 : fd_instr_error_enum_enum_executable_lamport_change = 28,
7666 : fd_instr_error_enum_enum_executable_account_not_rent_exempt = 29,
7667 : fd_instr_error_enum_enum_unsupported_program_id = 30,
7668 : fd_instr_error_enum_enum_call_depth = 31,
7669 : fd_instr_error_enum_enum_missing_account = 32,
7670 : fd_instr_error_enum_enum_reentrancy_not_allowed = 33,
7671 : fd_instr_error_enum_enum_max_seed_length_exceeded = 34,
7672 : fd_instr_error_enum_enum_invalid_seeds = 35,
7673 : fd_instr_error_enum_enum_invalid_realloc = 36,
7674 : fd_instr_error_enum_enum_computational_budget_exceeded = 37,
7675 : fd_instr_error_enum_enum_privilege_escalation = 38,
7676 : fd_instr_error_enum_enum_program_environment_setup_failure = 39,
7677 : fd_instr_error_enum_enum_program_failed_to_complete = 40,
7678 : fd_instr_error_enum_enum_program_failed_to_compile = 41,
7679 : fd_instr_error_enum_enum_immutable = 42,
7680 : fd_instr_error_enum_enum_incorrect_authority = 43,
7681 : fd_instr_error_enum_enum_borsh_io_error = 44,
7682 : fd_instr_error_enum_enum_account_not_rent_exempt = 45,
7683 : fd_instr_error_enum_enum_invalid_account_owner = 46,
7684 : fd_instr_error_enum_enum_arithmetic_overflow = 47,
7685 : fd_instr_error_enum_enum_unsupported_sysvar = 48,
7686 : fd_instr_error_enum_enum_illegal_owner = 49,
7687 : fd_instr_error_enum_enum_max_accounts_data_allocations_exceeded = 50,
7688 : fd_instr_error_enum_enum_max_accounts_exceeded = 51,
7689 : fd_instr_error_enum_enum_max_instruction_trace_length_exceeded = 52,
7690 : fd_instr_error_enum_enum_builtin_programs_must_consume_compute_units = 53,
7691 : };
7692 : void fd_txn_instr_error_new( fd_txn_instr_error_t * self );
7693 : int fd_txn_instr_error_decode( fd_txn_instr_error_t * self, fd_bincode_decode_ctx_t * ctx );
7694 : int fd_txn_instr_error_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7695 : void fd_txn_instr_error_decode_unsafe( fd_txn_instr_error_t * self, fd_bincode_decode_ctx_t * ctx );
7696 : int fd_txn_instr_error_decode_offsets( fd_txn_instr_error_off_t * self, fd_bincode_decode_ctx_t * ctx );
7697 : int fd_txn_instr_error_encode( fd_txn_instr_error_t const * self, fd_bincode_encode_ctx_t * ctx );
7698 : void fd_txn_instr_error_destroy( fd_txn_instr_error_t * self, fd_bincode_destroy_ctx_t * ctx );
7699 : void fd_txn_instr_error_walk( void * w, fd_txn_instr_error_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7700 : ulong fd_txn_instr_error_size( fd_txn_instr_error_t const * self );
7701 : ulong fd_txn_instr_error_footprint( void );
7702 : ulong fd_txn_instr_error_align( void );
7703 :
7704 : void fd_txn_error_enum_new_disc( fd_txn_error_enum_t * self, uint discriminant );
7705 : void fd_txn_error_enum_new( fd_txn_error_enum_t * self );
7706 : int fd_txn_error_enum_decode( fd_txn_error_enum_t * self, fd_bincode_decode_ctx_t * ctx );
7707 : int fd_txn_error_enum_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7708 : void fd_txn_error_enum_decode_unsafe( fd_txn_error_enum_t * self, fd_bincode_decode_ctx_t * ctx );
7709 : int fd_txn_error_enum_encode( fd_txn_error_enum_t const * self, fd_bincode_encode_ctx_t * ctx );
7710 : void fd_txn_error_enum_destroy( fd_txn_error_enum_t * self, fd_bincode_destroy_ctx_t * ctx );
7711 : void fd_txn_error_enum_walk( void * w, fd_txn_error_enum_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7712 : ulong fd_txn_error_enum_size( fd_txn_error_enum_t const * self );
7713 : ulong fd_txn_error_enum_footprint( void );
7714 : ulong fd_txn_error_enum_align( void );
7715 :
7716 : FD_FN_PURE uchar fd_txn_error_enum_is_account_in_use( fd_txn_error_enum_t const * self );
7717 : FD_FN_PURE uchar fd_txn_error_enum_is_account_loaded_twice( fd_txn_error_enum_t const * self );
7718 : FD_FN_PURE uchar fd_txn_error_enum_is_account_not_found( fd_txn_error_enum_t const * self );
7719 : FD_FN_PURE uchar fd_txn_error_enum_is_program_account_not_found( fd_txn_error_enum_t const * self );
7720 : FD_FN_PURE uchar fd_txn_error_enum_is_insufficient_funds_for_fee( fd_txn_error_enum_t const * self );
7721 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_account_for_fee( fd_txn_error_enum_t const * self );
7722 : FD_FN_PURE uchar fd_txn_error_enum_is_already_processed( fd_txn_error_enum_t const * self );
7723 : FD_FN_PURE uchar fd_txn_error_enum_is_blockhash_not_found( fd_txn_error_enum_t const * self );
7724 : FD_FN_PURE uchar fd_txn_error_enum_is_instruction_error( fd_txn_error_enum_t const * self );
7725 : FD_FN_PURE uchar fd_txn_error_enum_is_call_chain_too_deep( fd_txn_error_enum_t const * self );
7726 : FD_FN_PURE uchar fd_txn_error_enum_is_missing_signature_for_fee( fd_txn_error_enum_t const * self );
7727 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_account_index( fd_txn_error_enum_t const * self );
7728 : FD_FN_PURE uchar fd_txn_error_enum_is_signature_failure( fd_txn_error_enum_t const * self );
7729 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_program_for_execution( fd_txn_error_enum_t const * self );
7730 : FD_FN_PURE uchar fd_txn_error_enum_is_sanitize_failure( fd_txn_error_enum_t const * self );
7731 : FD_FN_PURE uchar fd_txn_error_enum_is_cluster_maintenance( fd_txn_error_enum_t const * self );
7732 : FD_FN_PURE uchar fd_txn_error_enum_is_account_borrow_outstanding( fd_txn_error_enum_t const * self );
7733 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_max_block_cost_limit( fd_txn_error_enum_t const * self );
7734 : FD_FN_PURE uchar fd_txn_error_enum_is_unsupported_version( fd_txn_error_enum_t const * self );
7735 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_writable_account( fd_txn_error_enum_t const * self );
7736 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_max_account_cost_limit( fd_txn_error_enum_t const * self );
7737 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_account_data_block_limit( fd_txn_error_enum_t const * self );
7738 : FD_FN_PURE uchar fd_txn_error_enum_is_too_many_account_locks( fd_txn_error_enum_t const * self );
7739 : FD_FN_PURE uchar fd_txn_error_enum_is_address_lookup_table_not_found( fd_txn_error_enum_t const * self );
7740 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_address_lookup_table_owner( fd_txn_error_enum_t const * self );
7741 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_address_lookup_table_data( fd_txn_error_enum_t const * self );
7742 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_address_lookup_table_index( fd_txn_error_enum_t const * self );
7743 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_rent_paying_account( fd_txn_error_enum_t const * self );
7744 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_max_vote_cost_limit( fd_txn_error_enum_t const * self );
7745 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_account_data_total_limit( fd_txn_error_enum_t const * self );
7746 : FD_FN_PURE uchar fd_txn_error_enum_is_duplicate_instruction( fd_txn_error_enum_t const * self );
7747 : FD_FN_PURE uchar fd_txn_error_enum_is_insufficient_funds_for_rent( fd_txn_error_enum_t const * self );
7748 : FD_FN_PURE uchar fd_txn_error_enum_is_max_loaded_accounts_data_size_exceeded( fd_txn_error_enum_t const * self );
7749 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_loaded_accounts_data_size_limit( fd_txn_error_enum_t const * self );
7750 : FD_FN_PURE uchar fd_txn_error_enum_is_resanitization_needed( fd_txn_error_enum_t const * self );
7751 : FD_FN_PURE uchar fd_txn_error_enum_is_program_execution_temporarily_restricted( fd_txn_error_enum_t const * self );
7752 : FD_FN_PURE uchar fd_txn_error_enum_is_unbalanced_transaction( fd_txn_error_enum_t const * self );
7753 : enum {
7754 : fd_txn_error_enum_enum_account_in_use = 0,
7755 : fd_txn_error_enum_enum_account_loaded_twice = 1,
7756 : fd_txn_error_enum_enum_account_not_found = 2,
7757 : fd_txn_error_enum_enum_program_account_not_found = 3,
7758 : fd_txn_error_enum_enum_insufficient_funds_for_fee = 4,
7759 : fd_txn_error_enum_enum_invalid_account_for_fee = 5,
7760 : fd_txn_error_enum_enum_already_processed = 6,
7761 : fd_txn_error_enum_enum_blockhash_not_found = 7,
7762 : fd_txn_error_enum_enum_instruction_error = 8,
7763 : fd_txn_error_enum_enum_call_chain_too_deep = 9,
7764 : fd_txn_error_enum_enum_missing_signature_for_fee = 10,
7765 : fd_txn_error_enum_enum_invalid_account_index = 11,
7766 : fd_txn_error_enum_enum_signature_failure = 12,
7767 : fd_txn_error_enum_enum_invalid_program_for_execution = 13,
7768 : fd_txn_error_enum_enum_sanitize_failure = 14,
7769 : fd_txn_error_enum_enum_cluster_maintenance = 15,
7770 : fd_txn_error_enum_enum_account_borrow_outstanding = 16,
7771 : fd_txn_error_enum_enum_would_exceed_max_block_cost_limit = 17,
7772 : fd_txn_error_enum_enum_unsupported_version = 18,
7773 : fd_txn_error_enum_enum_invalid_writable_account = 19,
7774 : fd_txn_error_enum_enum_would_exceed_max_account_cost_limit = 20,
7775 : fd_txn_error_enum_enum_would_exceed_account_data_block_limit = 21,
7776 : fd_txn_error_enum_enum_too_many_account_locks = 22,
7777 : fd_txn_error_enum_enum_address_lookup_table_not_found = 23,
7778 : fd_txn_error_enum_enum_invalid_address_lookup_table_owner = 24,
7779 : fd_txn_error_enum_enum_invalid_address_lookup_table_data = 25,
7780 : fd_txn_error_enum_enum_invalid_address_lookup_table_index = 26,
7781 : fd_txn_error_enum_enum_invalid_rent_paying_account = 27,
7782 : fd_txn_error_enum_enum_would_exceed_max_vote_cost_limit = 28,
7783 : fd_txn_error_enum_enum_would_exceed_account_data_total_limit = 29,
7784 : fd_txn_error_enum_enum_duplicate_instruction = 30,
7785 : fd_txn_error_enum_enum_insufficient_funds_for_rent = 31,
7786 : fd_txn_error_enum_enum_max_loaded_accounts_data_size_exceeded = 32,
7787 : fd_txn_error_enum_enum_invalid_loaded_accounts_data_size_limit = 33,
7788 : fd_txn_error_enum_enum_resanitization_needed = 34,
7789 : fd_txn_error_enum_enum_program_execution_temporarily_restricted = 35,
7790 : fd_txn_error_enum_enum_unbalanced_transaction = 36,
7791 : };
7792 : void fd_txn_result_new_disc( fd_txn_result_t * self, uint discriminant );
7793 : void fd_txn_result_new( fd_txn_result_t * self );
7794 : int fd_txn_result_decode( fd_txn_result_t * self, fd_bincode_decode_ctx_t * ctx );
7795 : int fd_txn_result_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7796 : void fd_txn_result_decode_unsafe( fd_txn_result_t * self, fd_bincode_decode_ctx_t * ctx );
7797 : int fd_txn_result_encode( fd_txn_result_t const * self, fd_bincode_encode_ctx_t * ctx );
7798 : void fd_txn_result_destroy( fd_txn_result_t * self, fd_bincode_destroy_ctx_t * ctx );
7799 : void fd_txn_result_walk( void * w, fd_txn_result_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7800 : ulong fd_txn_result_size( fd_txn_result_t const * self );
7801 : ulong fd_txn_result_footprint( void );
7802 : ulong fd_txn_result_align( void );
7803 :
7804 : FD_FN_PURE uchar fd_txn_result_is_ok( fd_txn_result_t const * self );
7805 : FD_FN_PURE uchar fd_txn_result_is_error( fd_txn_result_t const * self );
7806 : enum {
7807 : fd_txn_result_enum_ok = 0,
7808 : fd_txn_result_enum_error = 1,
7809 : };
7810 : void fd_cache_status_new( fd_cache_status_t * self );
7811 : int fd_cache_status_decode( fd_cache_status_t * self, fd_bincode_decode_ctx_t * ctx );
7812 : int fd_cache_status_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7813 : void fd_cache_status_decode_unsafe( fd_cache_status_t * self, fd_bincode_decode_ctx_t * ctx );
7814 : int fd_cache_status_decode_offsets( fd_cache_status_off_t * self, fd_bincode_decode_ctx_t * ctx );
7815 : int fd_cache_status_encode( fd_cache_status_t const * self, fd_bincode_encode_ctx_t * ctx );
7816 : void fd_cache_status_destroy( fd_cache_status_t * self, fd_bincode_destroy_ctx_t * ctx );
7817 : void fd_cache_status_walk( void * w, fd_cache_status_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7818 : ulong fd_cache_status_size( fd_cache_status_t const * self );
7819 : ulong fd_cache_status_footprint( void );
7820 : ulong fd_cache_status_align( void );
7821 :
7822 : void fd_status_value_new( fd_status_value_t * self );
7823 : int fd_status_value_decode( fd_status_value_t * self, fd_bincode_decode_ctx_t * ctx );
7824 : int fd_status_value_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7825 : void fd_status_value_decode_unsafe( fd_status_value_t * self, fd_bincode_decode_ctx_t * ctx );
7826 : int fd_status_value_decode_offsets( fd_status_value_off_t * self, fd_bincode_decode_ctx_t * ctx );
7827 : int fd_status_value_encode( fd_status_value_t const * self, fd_bincode_encode_ctx_t * ctx );
7828 : void fd_status_value_destroy( fd_status_value_t * self, fd_bincode_destroy_ctx_t * ctx );
7829 : void fd_status_value_walk( void * w, fd_status_value_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7830 : ulong fd_status_value_size( fd_status_value_t const * self );
7831 : ulong fd_status_value_footprint( void );
7832 : ulong fd_status_value_align( void );
7833 :
7834 : void fd_status_pair_new( fd_status_pair_t * self );
7835 : int fd_status_pair_decode( fd_status_pair_t * self, fd_bincode_decode_ctx_t * ctx );
7836 : int fd_status_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7837 : void fd_status_pair_decode_unsafe( fd_status_pair_t * self, fd_bincode_decode_ctx_t * ctx );
7838 : int fd_status_pair_decode_offsets( fd_status_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
7839 : int fd_status_pair_encode( fd_status_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
7840 : void fd_status_pair_destroy( fd_status_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
7841 : void fd_status_pair_walk( void * w, fd_status_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7842 : ulong fd_status_pair_size( fd_status_pair_t const * self );
7843 : ulong fd_status_pair_footprint( void );
7844 : ulong fd_status_pair_align( void );
7845 :
7846 : void fd_slot_delta_new( fd_slot_delta_t * self );
7847 : int fd_slot_delta_decode( fd_slot_delta_t * self, fd_bincode_decode_ctx_t * ctx );
7848 : int fd_slot_delta_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7849 : void fd_slot_delta_decode_unsafe( fd_slot_delta_t * self, fd_bincode_decode_ctx_t * ctx );
7850 : int fd_slot_delta_decode_offsets( fd_slot_delta_off_t * self, fd_bincode_decode_ctx_t * ctx );
7851 : int fd_slot_delta_encode( fd_slot_delta_t const * self, fd_bincode_encode_ctx_t * ctx );
7852 : void fd_slot_delta_destroy( fd_slot_delta_t * self, fd_bincode_destroy_ctx_t * ctx );
7853 : void fd_slot_delta_walk( void * w, fd_slot_delta_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7854 : ulong fd_slot_delta_size( fd_slot_delta_t const * self );
7855 : ulong fd_slot_delta_footprint( void );
7856 : ulong fd_slot_delta_align( void );
7857 :
7858 : void fd_bank_slot_deltas_new( fd_bank_slot_deltas_t * self );
7859 : int fd_bank_slot_deltas_decode( fd_bank_slot_deltas_t * self, fd_bincode_decode_ctx_t * ctx );
7860 : int fd_bank_slot_deltas_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7861 : void fd_bank_slot_deltas_decode_unsafe( fd_bank_slot_deltas_t * self, fd_bincode_decode_ctx_t * ctx );
7862 : int fd_bank_slot_deltas_decode_offsets( fd_bank_slot_deltas_off_t * self, fd_bincode_decode_ctx_t * ctx );
7863 : int fd_bank_slot_deltas_encode( fd_bank_slot_deltas_t const * self, fd_bincode_encode_ctx_t * ctx );
7864 : void fd_bank_slot_deltas_destroy( fd_bank_slot_deltas_t * self, fd_bincode_destroy_ctx_t * ctx );
7865 : void fd_bank_slot_deltas_walk( void * w, fd_bank_slot_deltas_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7866 : ulong fd_bank_slot_deltas_size( fd_bank_slot_deltas_t const * self );
7867 : ulong fd_bank_slot_deltas_footprint( void );
7868 : ulong fd_bank_slot_deltas_align( void );
7869 :
7870 : void fd_pubkey_rewardinfo_pair_new( fd_pubkey_rewardinfo_pair_t * self );
7871 : int fd_pubkey_rewardinfo_pair_decode( fd_pubkey_rewardinfo_pair_t * self, fd_bincode_decode_ctx_t * ctx );
7872 : int fd_pubkey_rewardinfo_pair_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7873 : void fd_pubkey_rewardinfo_pair_decode_unsafe( fd_pubkey_rewardinfo_pair_t * self, fd_bincode_decode_ctx_t * ctx );
7874 : int fd_pubkey_rewardinfo_pair_decode_offsets( fd_pubkey_rewardinfo_pair_off_t * self, fd_bincode_decode_ctx_t * ctx );
7875 : int fd_pubkey_rewardinfo_pair_encode( fd_pubkey_rewardinfo_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
7876 : void fd_pubkey_rewardinfo_pair_destroy( fd_pubkey_rewardinfo_pair_t * self, fd_bincode_destroy_ctx_t * ctx );
7877 : void fd_pubkey_rewardinfo_pair_walk( void * w, fd_pubkey_rewardinfo_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7878 : ulong fd_pubkey_rewardinfo_pair_size( fd_pubkey_rewardinfo_pair_t const * self );
7879 : ulong fd_pubkey_rewardinfo_pair_footprint( void );
7880 : ulong fd_pubkey_rewardinfo_pair_align( void );
7881 :
7882 : void fd_optional_account_new( fd_optional_account_t * self );
7883 : int fd_optional_account_decode( fd_optional_account_t * self, fd_bincode_decode_ctx_t * ctx );
7884 : int fd_optional_account_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7885 : void fd_optional_account_decode_unsafe( fd_optional_account_t * self, fd_bincode_decode_ctx_t * ctx );
7886 : int fd_optional_account_decode_offsets( fd_optional_account_off_t * self, fd_bincode_decode_ctx_t * ctx );
7887 : int fd_optional_account_encode( fd_optional_account_t const * self, fd_bincode_encode_ctx_t * ctx );
7888 : void fd_optional_account_destroy( fd_optional_account_t * self, fd_bincode_destroy_ctx_t * ctx );
7889 : void fd_optional_account_walk( void * w, fd_optional_account_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7890 : ulong fd_optional_account_size( fd_optional_account_t const * self );
7891 : ulong fd_optional_account_footprint( void );
7892 : ulong fd_optional_account_align( void );
7893 :
7894 : void fd_calculated_stake_points_new( fd_calculated_stake_points_t * self );
7895 : int fd_calculated_stake_points_decode( fd_calculated_stake_points_t * self, fd_bincode_decode_ctx_t * ctx );
7896 : int fd_calculated_stake_points_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7897 : void fd_calculated_stake_points_decode_unsafe( fd_calculated_stake_points_t * self, fd_bincode_decode_ctx_t * ctx );
7898 : int fd_calculated_stake_points_decode_offsets( fd_calculated_stake_points_off_t * self, fd_bincode_decode_ctx_t * ctx );
7899 : int fd_calculated_stake_points_encode( fd_calculated_stake_points_t const * self, fd_bincode_encode_ctx_t * ctx );
7900 : void fd_calculated_stake_points_destroy( fd_calculated_stake_points_t * self, fd_bincode_destroy_ctx_t * ctx );
7901 : void fd_calculated_stake_points_walk( void * w, fd_calculated_stake_points_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7902 : ulong fd_calculated_stake_points_size( fd_calculated_stake_points_t const * self );
7903 : ulong fd_calculated_stake_points_footprint( void );
7904 : ulong fd_calculated_stake_points_align( void );
7905 :
7906 : void fd_calculated_stake_rewards_new( fd_calculated_stake_rewards_t * self );
7907 : int fd_calculated_stake_rewards_decode( fd_calculated_stake_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
7908 : int fd_calculated_stake_rewards_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7909 : void fd_calculated_stake_rewards_decode_unsafe( fd_calculated_stake_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
7910 : int fd_calculated_stake_rewards_decode_offsets( fd_calculated_stake_rewards_off_t * self, fd_bincode_decode_ctx_t * ctx );
7911 : int fd_calculated_stake_rewards_encode( fd_calculated_stake_rewards_t const * self, fd_bincode_encode_ctx_t * ctx );
7912 : void fd_calculated_stake_rewards_destroy( fd_calculated_stake_rewards_t * self, fd_bincode_destroy_ctx_t * ctx );
7913 : void fd_calculated_stake_rewards_walk( void * w, fd_calculated_stake_rewards_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7914 : ulong fd_calculated_stake_rewards_size( fd_calculated_stake_rewards_t const * self );
7915 : ulong fd_calculated_stake_rewards_footprint( void );
7916 : ulong fd_calculated_stake_rewards_align( void );
7917 :
7918 : void fd_duplicate_slot_proof_new( fd_duplicate_slot_proof_t * self );
7919 : int fd_duplicate_slot_proof_decode( fd_duplicate_slot_proof_t * self, fd_bincode_decode_ctx_t * ctx );
7920 : int fd_duplicate_slot_proof_decode_preflight( fd_bincode_decode_ctx_t * ctx );
7921 : void fd_duplicate_slot_proof_decode_unsafe( fd_duplicate_slot_proof_t * self, fd_bincode_decode_ctx_t * ctx );
7922 : int fd_duplicate_slot_proof_decode_offsets( fd_duplicate_slot_proof_off_t * self, fd_bincode_decode_ctx_t * ctx );
7923 : int fd_duplicate_slot_proof_encode( fd_duplicate_slot_proof_t const * self, fd_bincode_encode_ctx_t * ctx );
7924 : void fd_duplicate_slot_proof_destroy( fd_duplicate_slot_proof_t * self, fd_bincode_destroy_ctx_t * ctx );
7925 : void fd_duplicate_slot_proof_walk( void * w, fd_duplicate_slot_proof_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7926 : ulong fd_duplicate_slot_proof_size( fd_duplicate_slot_proof_t const * self );
7927 : ulong fd_duplicate_slot_proof_footprint( void );
7928 : ulong fd_duplicate_slot_proof_align( void );
7929 :
7930 : FD_PROTOTYPES_END
7931 :
7932 : #endif // HEADER_FD_RUNTIME_TYPES
|